diff --git a/.gitignore b/.gitignore index 02ee307..c552caf 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/spirv-tools-92a71657fcbae77caf79181f655fabe8be7e0d84.tar.gz +SOURCES/spirv-tools-f7da527757140ae701be58274ce6db2f4234d9ff.tar.gz diff --git a/.spirv-tools.metadata b/.spirv-tools.metadata index 16e4f44..9da467d 100644 --- a/.spirv-tools.metadata +++ b/.spirv-tools.metadata @@ -1 +1 @@ -f730c19d9017363f8195c97b9c5f0fcbabfefd75 SOURCES/spirv-tools-92a71657fcbae77caf79181f655fabe8be7e0d84.tar.gz +c8af9953f625bb3924b22a59a11d5956322f86dc SOURCES/spirv-tools-f7da527757140ae701be58274ce6db2f4234d9ff.tar.gz diff --git a/SOURCES/0001-Revert-CMake-Enable-building-with-BUILD_SHARED_LIBS-.patch b/SOURCES/0001-Revert-CMake-Enable-building-with-BUILD_SHARED_LIBS-.patch deleted file mode 100644 index 9972082..0000000 --- a/SOURCES/0001-Revert-CMake-Enable-building-with-BUILD_SHARED_LIBS-.patch +++ /dev/null @@ -1,314 +0,0 @@ -From 74a74884541475b5e1c2e34084d645c1e0d130b3 Mon Sep 17 00:00:00 2001 -From: Dave Airlie -Date: Wed, 5 Aug 2020 06:54:52 +1000 -Subject: [PATCH] Revert "CMake: Enable building with BUILD_SHARED_LIBS=1 - (#3490)" - -This reverts commit 6aed7ffbc7bd42d292db10a800ec05954a5b7147. ---- - external/CMakeLists.txt | 19 ------------------- - source/CMakeLists.txt | 29 +++++++++-------------------- - source/fuzz/CMakeLists.txt | 2 +- - source/link/CMakeLists.txt | 2 +- - source/opt/CMakeLists.txt | 4 ++-- - source/reduce/CMakeLists.txt | 4 ++-- - test/CMakeLists.txt | 6 +++--- - test/val/CMakeLists.txt | 10 +++++----- - tools/CMakeLists.txt | 16 ++++++++-------- - 9 files changed, 31 insertions(+), 61 deletions(-) - -diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt -index f5009fde..5b341598 100644 ---- a/external/CMakeLists.txt -+++ b/external/CMakeLists.txt -@@ -13,19 +13,6 @@ - # See the License for the specific language governing permissions and - # limitations under the License. - --# Utility functions for pushing & popping variables. --function(push_variable var val) -- set("${var}_SAVE_STACK" "${${var}}" "${${var}_SAVE_STACK}" PARENT_SCOPE) -- set(${var} ${val} PARENT_SCOPE) --endfunction() --function(pop_variable var) -- set(save_stack "${${var}_SAVE_STACK}") -- list(GET save_stack 0 val) -- list(REMOVE_AT save_stack 0) -- set("${var}_SAVE_STACK" "${save_stack}" PARENT_SCOPE) -- set(${var} ${val} PARENT_SCOPE) --endfunction() -- - if (DEFINED SPIRV-Headers_SOURCE_DIR) - # This allows flexible position of the SPIRV-Headers repo. - set(SPIRV_HEADER_DIR ${SPIRV-Headers_SOURCE_DIR}) -@@ -74,11 +61,7 @@ if (NOT ${SPIRV_SKIP_TESTS}) - "Use shared (DLL) run-time lib even when Google Test is built as static lib." - ON) - endif() -- # gtest requires special defines for building as a shared -- # library, simply always build as static. -- push_variable(BUILD_SHARED_LIBS 0) - add_subdirectory(${GMOCK_DIR} EXCLUDE_FROM_ALL) -- pop_variable(BUILD_SHARED_LIBS) - endif() - endif() - if (TARGET gmock) -@@ -125,9 +108,7 @@ if (NOT ${SPIRV_SKIP_TESTS}) - if (NOT TARGET effcee) - set(EFFCEE_BUILD_TESTING OFF CACHE BOOL "Do not build Effcee test suite") - endif() -- push_variable(BUILD_SHARED_LIBS 0) # effcee does not export any symbols for building as a DLL. Always build as static. - add_subdirectory(effcee EXCLUDE_FROM_ALL) -- pop_variable(BUILD_SHARED_LIBS) - set_property(TARGET effcee PROPERTY FOLDER Effcee) - # Turn off warnings for effcee and re2 - set_property(TARGET effcee APPEND PROPERTY COMPILE_OPTIONS -w) -diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt -index 79a81a1c..adc50c09 100644 ---- a/source/CMakeLists.txt -+++ b/source/CMakeLists.txt -@@ -346,21 +346,18 @@ set_source_files_properties( - - spvtools_pch(SPIRV_SOURCES pch_source) - --add_library(${SPIRV_TOOLS}-static STATIC ${SPIRV_SOURCES}) --spvtools_default_compile_options(${SPIRV_TOOLS}-static) --target_include_directories(${SPIRV_TOOLS}-static -+add_library(${SPIRV_TOOLS} ${SPIRV_SOURCES}) -+spvtools_default_compile_options(${SPIRV_TOOLS}) -+target_include_directories(${SPIRV_TOOLS} - PUBLIC - $ - $ - PRIVATE ${spirv-tools_BINARY_DIR} - PRIVATE ${SPIRV_HEADER_INCLUDE_DIR} - ) --set_property(TARGET ${SPIRV_TOOLS}-static PROPERTY FOLDER "SPIRV-Tools libraries") --spvtools_check_symbol_exports(${SPIRV_TOOLS}-static) --add_dependencies(${SPIRV_TOOLS}-static core_tables enum_string_mapping extinst_tables) -- --# The static target does not have the '-static' suffix. --set_target_properties(${SPIRV_TOOLS}-static PROPERTIES OUTPUT_NAME "${SPIRV_TOOLS}") -+set_property(TARGET ${SPIRV_TOOLS} PROPERTY FOLDER "SPIRV-Tools libraries") -+spvtools_check_symbol_exports(${SPIRV_TOOLS}) -+add_dependencies( ${SPIRV_TOOLS} core_tables enum_string_mapping extinst_tables ) - - add_library(${SPIRV_TOOLS}-shared SHARED ${SPIRV_SOURCES}) - spvtools_default_compile_options(${SPIRV_TOOLS}-shared) -@@ -378,26 +375,18 @@ target_compile_definitions(${SPIRV_TOOLS}-shared - PRIVATE SPIRV_TOOLS_IMPLEMENTATION - PUBLIC SPIRV_TOOLS_SHAREDLIB - ) --add_dependencies(${SPIRV_TOOLS}-shared core_tables enum_string_mapping extinst_tables) -- --# Create the "${SPIRV_TOOLS}" target as an alias to either "${SPIRV_TOOLS}-static" --# or "${SPIRV_TOOLS}-shared" depending on the value of BUILD_SHARED_LIBS. --if(BUILD_SHARED_LIBS) -- add_library(${SPIRV_TOOLS} ALIAS ${SPIRV_TOOLS}-shared) --else() -- add_library(${SPIRV_TOOLS} ALIAS ${SPIRV_TOOLS}-static) --endif() -+add_dependencies( ${SPIRV_TOOLS}-shared core_tables enum_string_mapping extinst_tables ) - - if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") - find_library(LIBRT rt) - if(LIBRT) -- target_link_libraries(${SPIRV_TOOLS}-static ${LIBRT}) -+ target_link_libraries(${SPIRV_TOOLS} ${LIBRT}) - target_link_libraries(${SPIRV_TOOLS}-shared ${LIBRT}) - endif() - endif() - - if(ENABLE_SPIRV_TOOLS_INSTALL) -- install(TARGETS ${SPIRV_TOOLS}-static ${SPIRV_TOOLS}-shared EXPORT ${SPIRV_TOOLS}Targets -+ install(TARGETS ${SPIRV_TOOLS} ${SPIRV_TOOLS}-shared EXPORT ${SPIRV_TOOLS}Targets - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -diff --git a/source/fuzz/CMakeLists.txt b/source/fuzz/CMakeLists.txt -index 630dee2c..3f960a22 100644 ---- a/source/fuzz/CMakeLists.txt -+++ b/source/fuzz/CMakeLists.txt -@@ -327,7 +327,7 @@ if(SPIRV_BUILD_FUZZER) - - # The fuzzer reuses a lot of functionality from the SPIRV-Tools library. - target_link_libraries(SPIRV-Tools-fuzz -- PUBLIC ${SPIRV_TOOLS}-static -+ PUBLIC ${SPIRV_TOOLS} - PUBLIC SPIRV-Tools-opt - PUBLIC protobuf::libprotobuf) - -diff --git a/source/link/CMakeLists.txt b/source/link/CMakeLists.txt -index bb058ea2..d3083192 100644 ---- a/source/link/CMakeLists.txt -+++ b/source/link/CMakeLists.txt -@@ -11,7 +11,7 @@ - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. --add_library(SPIRV-Tools-link STATIC -+add_library(SPIRV-Tools-link - linker.cpp - ) - -diff --git a/source/opt/CMakeLists.txt b/source/opt/CMakeLists.txt -index 090aeac5..0047c346 100644 ---- a/source/opt/CMakeLists.txt -+++ b/source/opt/CMakeLists.txt -@@ -233,7 +233,7 @@ endif() - - spvtools_pch(SPIRV_TOOLS_OPT_SOURCES pch_source_opt) - --add_library(SPIRV-Tools-opt STATIC ${SPIRV_TOOLS_OPT_SOURCES}) -+add_library(SPIRV-Tools-opt ${SPIRV_TOOLS_OPT_SOURCES}) - - spvtools_default_compile_options(SPIRV-Tools-opt) - target_include_directories(SPIRV-Tools-opt -@@ -245,7 +245,7 @@ target_include_directories(SPIRV-Tools-opt - ) - # We need the assembling and disassembling functionalities in the main library. - target_link_libraries(SPIRV-Tools-opt -- PUBLIC ${SPIRV_TOOLS}-static) -+ PUBLIC ${SPIRV_TOOLS}) - - set_property(TARGET SPIRV-Tools-opt PROPERTY FOLDER "SPIRV-Tools libraries") - spvtools_check_symbol_exports(SPIRV-Tools-opt) -diff --git a/source/reduce/CMakeLists.txt b/source/reduce/CMakeLists.txt -index 865510bb..d945bd20 100644 ---- a/source/reduce/CMakeLists.txt -+++ b/source/reduce/CMakeLists.txt -@@ -77,7 +77,7 @@ endif() - - spvtools_pch(SPIRV_TOOLS_REDUCE_SOURCES pch_source_reduce) - --add_library(SPIRV-Tools-reduce STATIC ${SPIRV_TOOLS_REDUCE_SOURCES}) -+add_library(SPIRV-Tools-reduce ${SPIRV_TOOLS_REDUCE_SOURCES}) - - spvtools_default_compile_options(SPIRV-Tools-reduce) - target_include_directories(SPIRV-Tools-reduce -@@ -89,7 +89,7 @@ target_include_directories(SPIRV-Tools-reduce - ) - # The reducer reuses a lot of functionality from the SPIRV-Tools library. - target_link_libraries(SPIRV-Tools-reduce -- PUBLIC ${SPIRV_TOOLS}-static -+ PUBLIC ${SPIRV_TOOLS} - PUBLIC SPIRV-Tools-opt) - - set_property(TARGET SPIRV-Tools-reduce PROPERTY FOLDER "SPIRV-Tools libraries") -diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt -index 5dd4036c..70999f99 100644 ---- a/test/CMakeLists.txt -+++ b/test/CMakeLists.txt -@@ -159,12 +159,12 @@ spvtools_pch(TEST_SOURCES pch_test) - add_spvtools_unittest( - TARGET spirv_unit_tests - SRCS ${TEST_SOURCES} -- LIBS ${SPIRV_TOOLS}-static) -+ LIBS ${SPIRV_TOOLS}) - - add_spvtools_unittest( - TARGET c_interface - SRCS c_interface_test.cpp -- LIBS ${SPIRV_TOOLS}-static) -+ LIBS ${SPIRV_TOOLS}) - - add_spvtools_unittest( - TARGET c_interface_shared -@@ -181,7 +181,7 @@ if (${SPIRV_TIMER_ENABLED}) - add_spvtools_unittest( - TARGET timer - SRCS timer_test.cpp -- LIBS ${SPIRV_TOOLS}-static) -+ LIBS ${SPIRV_TOOLS}) - endif() - - -diff --git a/test/val/CMakeLists.txt b/test/val/CMakeLists.txt -index c458a2f9..23d7a19e 100644 ---- a/test/val/CMakeLists.txt -+++ b/test/val/CMakeLists.txt -@@ -41,21 +41,21 @@ add_spvtools_unittest(TARGET val_abcde - val_extension_spv_khr_terminate_invocation.cpp - val_ext_inst_test.cpp - ${VAL_TEST_COMMON_SRCS} -- LIBS ${SPIRV_TOOLS}-static -+ LIBS ${SPIRV_TOOLS} - PCH_FILE pch_test_val - ) - - add_spvtools_unittest(TARGET val_capability - SRCS - val_capability_test.cpp -- LIBS ${SPIRV_TOOLS}-static -+ LIBS ${SPIRV_TOOLS} - PCH_FILE pch_test_val - ) - - add_spvtools_unittest(TARGET val_limits - SRCS val_limits_test.cpp - ${VAL_TEST_COMMON_SRCS} -- LIBS ${SPIRV_TOOLS}-static -+ LIBS ${SPIRV_TOOLS} - PCH_FILE pch_test_val - ) - -@@ -76,7 +76,7 @@ add_spvtools_unittest(TARGET val_fghijklmnop - val_opencl_test.cpp - val_primitives_test.cpp - ${VAL_TEST_COMMON_SRCS} -- LIBS ${SPIRV_TOOLS}-static -+ LIBS ${SPIRV_TOOLS} - PCH_FILE pch_test_val - ) - -@@ -91,6 +91,6 @@ add_spvtools_unittest(TARGET val_stuvw - val_version_test.cpp - val_webgpu_test.cpp - ${VAL_TEST_COMMON_SRCS} -- LIBS ${SPIRV_TOOLS}-static -+ LIBS ${SPIRV_TOOLS} - PCH_FILE pch_test_val - ) -diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt -index 67d606a8..b3a4cc1a 100644 ---- a/tools/CMakeLists.txt -+++ b/tools/CMakeLists.txt -@@ -40,19 +40,19 @@ function(add_spvtools_tool) - endfunction() - - if (NOT ${SPIRV_SKIP_EXECUTABLES}) -- add_spvtools_tool(TARGET spirv-as SRCS as/as.cpp LIBS ${SPIRV_TOOLS}-static) -- add_spvtools_tool(TARGET spirv-dis SRCS dis/dis.cpp LIBS ${SPIRV_TOOLS}-static) -- add_spvtools_tool(TARGET spirv-val SRCS val/val.cpp util/cli_consumer.cpp LIBS ${SPIRV_TOOLS}-static) -- add_spvtools_tool(TARGET spirv-opt SRCS opt/opt.cpp util/cli_consumer.cpp LIBS SPIRV-Tools-opt ${SPIRV_TOOLS}-static) -+ add_spvtools_tool(TARGET spirv-as SRCS as/as.cpp LIBS ${SPIRV_TOOLS}) -+ add_spvtools_tool(TARGET spirv-dis SRCS dis/dis.cpp LIBS ${SPIRV_TOOLS}) -+ add_spvtools_tool(TARGET spirv-val SRCS val/val.cpp util/cli_consumer.cpp LIBS ${SPIRV_TOOLS}) -+ add_spvtools_tool(TARGET spirv-opt SRCS opt/opt.cpp util/cli_consumer.cpp LIBS SPIRV-Tools-opt ${SPIRV_TOOLS}) - if (NOT DEFINED IOS_PLATFORM) # iOS does not allow std::system calls which spirv-reduce requires -- add_spvtools_tool(TARGET spirv-reduce SRCS reduce/reduce.cpp util/cli_consumer.cpp LIBS SPIRV-Tools-reduce ${SPIRV_TOOLS}-static) -+ add_spvtools_tool(TARGET spirv-reduce SRCS reduce/reduce.cpp util/cli_consumer.cpp LIBS SPIRV-Tools-reduce ${SPIRV_TOOLS}) - endif() -- add_spvtools_tool(TARGET spirv-link SRCS link/linker.cpp LIBS SPIRV-Tools-link ${SPIRV_TOOLS}-static) -+ add_spvtools_tool(TARGET spirv-link SRCS link/linker.cpp LIBS SPIRV-Tools-link ${SPIRV_TOOLS}) - add_spvtools_tool(TARGET spirv-cfg - SRCS cfg/cfg.cpp - cfg/bin_to_dot.h - cfg/bin_to_dot.cpp -- LIBS ${SPIRV_TOOLS}-static) -+ LIBS ${SPIRV_TOOLS}) - target_include_directories(spirv-cfg PRIVATE ${spirv-tools_SOURCE_DIR} - ${SPIRV_HEADER_INCLUDE_DIR}) - set(SPIRV_INSTALL_TARGETS spirv-as spirv-dis spirv-val spirv-opt -@@ -62,7 +62,7 @@ if (NOT ${SPIRV_SKIP_EXECUTABLES}) - endif() - - if(SPIRV_BUILD_FUZZER) -- add_spvtools_tool(TARGET spirv-fuzz SRCS fuzz/fuzz.cpp util/cli_consumer.cpp LIBS SPIRV-Tools-fuzz ${SPIRV_TOOLS}-static) -+ add_spvtools_tool(TARGET spirv-fuzz SRCS fuzz/fuzz.cpp util/cli_consumer.cpp LIBS SPIRV-Tools-fuzz ${SPIRV_TOOLS}) - set(SPIRV_INSTALL_TARGETS ${SPIRV_INSTALL_TARGETS} spirv-fuzz) - endif(SPIRV_BUILD_FUZZER) - --- -2.26.2 - diff --git a/SPECS/spirv-tools.spec b/SPECS/spirv-tools.spec index 28b6905..7402040 100644 --- a/SPECS/spirv-tools.spec +++ b/SPECS/spirv-tools.spec @@ -1,19 +1,17 @@ -%global commit 92a71657fcbae77caf79181f655fabe8be7e0d84 +%global commit f7da527757140ae701be58274ce6db2f4234d9ff %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20200803 +%global commit_date 20201031 %global gitrel .%{commit_date}.git%{shortcommit} Name: spirv-tools Version: 2020.5 -Release: 1%{?gitrel}%{?dist} +Release: 2%{?gitrel}%{?dist} Summary: API and commands for processing SPIR-V modules License: ASL 2.0 URL: https://github.com/KhronosGroup/SPIRV-Tools Source0: %url/archive/%{commit}.tar.gz#/%{name}-%{commit}.tar.gz -Patch0: 0001-Revert-CMake-Enable-building-with-BUILD_SHARED_LIBS-.patch - BuildRequires: cmake3 BuildRequires: gcc-c++ BuildRequires: ninja-build @@ -54,6 +52,7 @@ pushd %_target_platform -DCMAKE_INSTALL_LIBDIR=%{_lib} \ -DSPIRV-Headers_SOURCE_DIR=%{_prefix} \ -DPYTHON_EXECUTABLE=%{__python3} \ + -DSPIRV_TOOLS_BUILD_STATIC=OFF \ -GNinja .. %ninja_build popd @@ -89,6 +88,9 @@ popd %{_libdir}/pkgconfig/SPIRV-Tools.pc %changelog +* Tue Nov 03 2020 Dave Airlie - 2020.5-2 +- Update to latest upstream + * Wed Aug 05 2020 Dave Airlie - 2020.5-1 - update to latest upstream