From 3366b63247877904da6fbcfb674aad1e05435128 Mon Sep 17 00:00:00 2001 From: Cody Northrop Date: Thu, 14 Apr 2016 11:18:30 -0600 Subject: [PATCH] toolchain: Bump everything to pull in required SPIR-V tools revision Encompasses pull request #261 from Chris. Also gets things building again reflecting upstream changesi, mainly HLSL libs for glslang. Desktop build/test results w/ update_external_sources.sh/bat Windows on Skylake: _run_all_tests.ps1, demos with --validate Ubuntu on Skylake: vk_layer_validation_tests, cube --validate Android build/test results w/ update_external_sources_android.sh/bat: Windows: VkLayerValidationTests pass OSX: VkLayerValidationTests pass Ubuntu: VkLayerValidationTests pass --- CMakeLists.txt | 15 +++++++++++++-- build-android/glslang_revision_android | 2 +- build-android/jni/Android.mk | 7 ++++++- build-android/shaderc_revision_android | 2 +- build-android/spirv-tools_revision_android | 2 +- build-android/update_external_sources_android.bat | 18 +++++++++++++++--- glslang_revision | 2 +- spirv-tools_revision | 2 +- 8 files changed, 39 insertions(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 46940fb..b2142ed 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -110,6 +110,7 @@ find_path(SPIRV_TOOLS_INCLUDE_DIR spirv-tools/libspirv.h HINTS "${CMAKE_SOURCE_D if (WIN32) set (GLSLANG_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/Release" "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/OSDependent/Windows/Release" + "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/hlsl/Release" "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/OGLCompilersDLL/Release" "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/SPIRV/Release" ) set (SPIRV_TOOLS_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../spirv-tools/${BUILDTGT_DIR}/source/Release") @@ -127,6 +128,9 @@ find_library(OGLCompiler_LIB NAMES OGLCompiler find_library(OSDependent_LIB NAMES OSDependent HINTS ${GLSLANG_SEARCH_PATH} ) +find_library(HLSL_LIB NAMES HLSL + HINTS ${GLSLANG_SEARCH_PATH} ) + find_library(SPIRV_LIB NAMES SPIRV HINTS ${GLSLANG_SEARCH_PATH} ) @@ -137,6 +141,7 @@ find_library(SPIRV_TOOLS_LIB NAMES SPIRV-Tools if (WIN32) set (GLSLANG_DEBUG_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/Debug" "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/OSDependent/Windows/Debug" + "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/hlsl/Debug" "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/OGLCompilersDLL/Debug" "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/SPIRV/Debug") set (SPIRV_TOOLS_DEBUG_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../spirv-tools/${BUILDTGT_DIR}/source/Debug") @@ -144,6 +149,7 @@ if (WIN32) add_library(glslang STATIC IMPORTED) add_library(OGLCompiler STATIC IMPORTED) add_library(OSDependent STATIC IMPORTED) + add_library(HLSL STATIC IMPORTED) add_library(SPIRV STATIC IMPORTED) add_library(Loader STATIC IMPORTED) add_library(SPIRV-Tools STATIC IMPORTED) @@ -154,6 +160,8 @@ if (WIN32) HINTS ${GLSLANG_DEBUG_SEARCH_PATH} ) find_library(OSDependent_DLIB NAMES OSDependent HINTS ${GLSLANG_DEBUG_SEARCH_PATH} ) + find_library(HLSL_DLIB NAMES HLSL + HINTS ${GLSLANG_DEBUG_SEARCH_PATH} ) find_library(SPIRV_DLIB NAMES SPIRV HINTS ${GLSLANG_DEBUG_SEARCH_PATH} ) find_library(SPIRV_TOOLS_DLIB NAMES SPIRV-Tools @@ -168,6 +176,9 @@ if (WIN32) set_target_properties(OSDependent PROPERTIES IMPORTED_LOCATION "${OSDependent_LIB}" IMPORTED_LOCATION_DEBUG "${OSDependent_DLIB}") + set_target_properties(HLSL PROPERTIES + IMPORTED_LOCATION "${HLSL_LIB}" + IMPORTED_LOCATION_DEBUG "${HLSL_DLIB}") set_target_properties(SPIRV PROPERTIES IMPORTED_LOCATION "${SPIRV_LIB}" IMPORTED_LOCATION_DEBUG "${SPIRV_DLIB}") @@ -175,10 +186,10 @@ if (WIN32) IMPORTED_LOCATION "${SPIRV_TOOLS_LIB}" IMPORTED_LOCATION_DEBUG "${SPIRV_TOOLS_DLIB}") - set (GLSLANG_LIBRARIES glslang OGLCompiler OSDependent SPIRV) + set (GLSLANG_LIBRARIES glslang OGLCompiler OSDependent HLSL SPIRV) set (SPIRV_TOOLS_LIBRARIES SPIRV-Tools) else () - set (GLSLANG_LIBRARIES ${GLSLANG_LIB} ${OGLCompiler_LIB} ${OSDependent_LIB} ${SPIRV_LIB}) + set (GLSLANG_LIBRARIES ${GLSLANG_LIB} ${OGLCompiler_LIB} ${OSDependent_LIB} ${HLSL_LIB} ${SPIRV_LIB}) set (SPIRV_TOOLS_LIBRARIES ${SPIRV_TOOLS_LIB}) endif() diff --git a/build-android/glslang_revision_android b/build-android/glslang_revision_android index c48dee1..56c5bed 100644 --- a/build-android/glslang_revision_android +++ b/build-android/glslang_revision_android @@ -1 +1 @@ -3c5b1e6b31aca0eb52fe7e82a963ff735f1de31b +d99524197f3b68dbd6267bd3f4d7e8a0f49167b4 diff --git a/build-android/jni/Android.mk b/build-android/jni/Android.mk index 96df1fa..8b43750 100644 --- a/build-android/jni/Android.mk +++ b/build-android/jni/Android.mk @@ -157,6 +157,11 @@ LOCAL_SRC_FILES := $(SRC_DIR)/../shaderc/android_test/obj/local/$(TARGET_ARCH_AB include $(PREBUILT_STATIC_LIBRARY) include $(CLEAR_VARS) +LOCAL_MODULE := HLSL-prebuilt +LOCAL_SRC_FILES := $(SRC_DIR)/../shaderc/android_test/obj/local/$(TARGET_ARCH_ABI)/libHLSL.a +include $(PREBUILT_STATIC_LIBRARY) + +include $(CLEAR_VARS) LOCAL_MODULE := shaderc_util-prebuilt LOCAL_SRC_FILES := $(SRC_DIR)/../shaderc/android_test/obj/local/$(TARGET_ARCH_ABI)/libshaderc_util.a include $(PREBUILT_STATIC_LIBRARY) @@ -185,7 +190,7 @@ LOCAL_C_INCLUDES += $(SRC_DIR)/include \ $(SRC_DIR)/../shaderc/libshaderc/include/ LOCAL_STATIC_LIBRARIES := googletest_main layer_utils -LOCAL_SHARED_LIBRARIES += shaderc-prebuilt glslang-prebuilt OGLCompiler-prebuilt OSDependent-prebuilt shaderc_util-prebuilt SPIRV-prebuilt SPIRV-Tools-prebuilt +LOCAL_SHARED_LIBRARIES += shaderc-prebuilt glslang-prebuilt OGLCompiler-prebuilt OSDependent-prebuilt HLSL-prebuilt shaderc_util-prebuilt SPIRV-prebuilt SPIRV-Tools-prebuilt LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR --include=$(SRC_DIR)/tests/vulkan_wrapper.h LOCAL_LDLIBS := -llog include $(BUILD_EXECUTABLE) diff --git a/build-android/shaderc_revision_android b/build-android/shaderc_revision_android index 04b2324..8187523 100644 --- a/build-android/shaderc_revision_android +++ b/build-android/shaderc_revision_android @@ -1 +1 @@ -53cf6692879c6dcd5f4ccdffb8c10bb17b5e9d55 +4213a472474053f456464b7d00d14adf814ecc44 diff --git a/build-android/spirv-tools_revision_android b/build-android/spirv-tools_revision_android index e83c901..9a829b9 100644 --- a/build-android/spirv-tools_revision_android +++ b/build-android/spirv-tools_revision_android @@ -1 +1 @@ -9149a66ca406d86967b104cac209bad309fd2c33 +469f0e8fd53b527ad410c46bf18eee327c9256a3 diff --git a/build-android/update_external_sources_android.bat b/build-android/update_external_sources_android.bat index f2b719f..08d9630 100755 --- a/build-android/update_external_sources_android.bat +++ b/build-android/update_external_sources_android.bat @@ -116,7 +116,7 @@ if %sync-spirv-tools% equ 1 ( if exist %SPIRV_TOOLS_DIR% ( rd /S /Q %SPIRV_TOOLS_DIR% ) - if %errorlevel% neq 0 (goto:error) + if %ERRORLEVEL% neq 0 (goto:error) if not exist %SPIRV_TOOLS_DIR% ( call:create_spirv-tools ) @@ -162,7 +162,7 @@ REM // ======== Functions ======== // :create_glslang echo. - echo Creating local glslang repository %GLSLANG_DIR%) + echo Creating local glslang repository %GLSLANG_DIR% mkdir %GLSLANG_DIR% cd %GLSLANG_DIR% git clone https://github.com/KhronosGroup/glslang.git . @@ -179,11 +179,15 @@ goto:eof cd %GLSLANG_DIR% git fetch --all git checkout %GLSLANG_REVISION% + if not exist %GLSLANG_DIR%\SPIRV ( + echo glslang source update failed! + set errorCode=1 + ) goto:eof :create_spirv-tools echo. - echo Creating local spirv-tools repository %SPIRV_TOOLS_DIR%) + echo Creating local spirv-tools repository %SPIRV_TOOLS_DIR% mkdir %SPIRV_TOOLS_DIR% cd %SPIRV_TOOLS_DIR% git clone https://github.com/KhronosGroup/SPIRV-Tools.git . @@ -200,6 +204,10 @@ goto:eof cd %SPIRV_TOOLS_DIR% git fetch --all git checkout %SPIRV_TOOLS_REVISION% + if not exist %SPIRV_TOOLS_DIR%\source ( + echo spirv-tools source update failed! + set errorCode=1 + ) goto:eof :create_shaderc @@ -221,6 +229,10 @@ goto:eof cd %SHADERC_DIR% git fetch --all git checkout %SHADERC_REVISION% + if not exist %SHADERC_DIR%\libshaderc ( + echo shaderc source update failed! + set errorCode=1 + ) goto:eof :build_shaderc diff --git a/glslang_revision b/glslang_revision index 4722425..56c5bed 100644 --- a/glslang_revision +++ b/glslang_revision @@ -1 +1 @@ -c3869fee412a90c4eadea0bf936ab2530d2dff51 +d99524197f3b68dbd6267bd3f4d7e8a0f49167b4 diff --git a/spirv-tools_revision b/spirv-tools_revision index dcf6926..9a829b9 100644 --- a/spirv-tools_revision +++ b/spirv-tools_revision @@ -1 +1 @@ -6836e17f243eebfc4a2950faee49ed3a0015b20b +469f0e8fd53b527ad410c46bf18eee327c9256a3 -- 2.7.4