early-access version 2853
This commit is contained in:
93
externals/vcpkg/ports/shaderc/fix-export-cmakefiles.patch
vendored
Executable file
93
externals/vcpkg/ports/shaderc/fix-export-cmakefiles.patch
vendored
Executable file
@@ -0,0 +1,93 @@
|
||||
diff --git a/libshaderc/CMakeLists.txt b/libshaderc/CMakeLists.txt
|
||||
index f3277f0..5fd58ef 100644
|
||||
--- a/libshaderc/CMakeLists.txt
|
||||
+++ b/libshaderc/CMakeLists.txt
|
||||
@@ -28,7 +28,9 @@ if (NOT BUILD_SHARED_LIBS)
|
||||
add_library(shaderc STATIC ${SHADERC_SOURCES})
|
||||
shaderc_default_compile_options(shaderc)
|
||||
target_include_directories(shaderc
|
||||
- PUBLIC include
|
||||
+ PUBLIC
|
||||
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/>
|
||||
+ $<INSTALL_INTERFACE:include/>
|
||||
PRIVATE ${glslang_SOURCE_DIR}
|
||||
${SPIRV-Headers_SOURCE_DIR}/include)
|
||||
set(shaderc_install_target shaderc)
|
||||
@@ -37,7 +39,9 @@ else()
|
||||
add_library(shaderc_shared SHARED ${SHADERC_SOURCES})
|
||||
shaderc_default_compile_options(shaderc_shared)
|
||||
target_include_directories(shaderc_shared
|
||||
- PUBLIC include
|
||||
+ PUBLIC
|
||||
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/>
|
||||
+ $<INSTALL_INTERFACE:include/>
|
||||
PRIVATE ${glslang_SOURCE_DIR}
|
||||
${SPIRV-Headers_SOURCE_DIR}/include)
|
||||
target_compile_definitions(shaderc_shared
|
||||
@@ -59,10 +63,14 @@ if(SHADERC_ENABLE_INSTALL)
|
||||
DESTINATION
|
||||
${CMAKE_INSTALL_INCLUDEDIR}/shaderc)
|
||||
|
||||
- install(TARGETS ${shaderc_install_target}
|
||||
+ install(TARGETS ${shaderc_install_target} EXPORT unofficial-shadercTargets
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
+ install(EXPORT unofficial-shadercTargets
|
||||
+ NAMESPACE unofficial::shaderc::
|
||||
+ DESTINATION share/unofficial-shaderc
|
||||
+ )
|
||||
endif(SHADERC_ENABLE_INSTALL)
|
||||
|
||||
find_package(Threads)
|
||||
@@ -79,6 +87,11 @@ else()
|
||||
target_link_libraries(shaderc_shared PRIVATE ${SHADERC_LIBS})
|
||||
endif()
|
||||
|
||||
+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc-config.cmake.in"
|
||||
+[[include("${CMAKE_CURRENT_LIST_DIR}/unofficial-shadercTargets.cmake")]])
|
||||
+configure_file("${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc-config.cmake" @ONLY)
|
||||
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc-config.cmake DESTINATION share/unofficial-shaderc)
|
||||
+
|
||||
shaderc_add_tests(
|
||||
TEST_PREFIX shaderc
|
||||
LINK_LIBS shaderc
|
||||
diff --git a/libshaderc_util/CMakeLists.txt b/libshaderc_util/CMakeLists.txt
|
||||
index 4926203..b152d7b 100644
|
||||
--- a/libshaderc_util/CMakeLists.txt
|
||||
+++ b/libshaderc_util/CMakeLists.txt
|
||||
@@ -39,7 +39,10 @@ add_library(shaderc_util STATIC
|
||||
|
||||
shaderc_default_compile_options(shaderc_util)
|
||||
target_include_directories(shaderc_util
|
||||
- PUBLIC include PRIVATE ${glslang_SOURCE_DIR})
|
||||
+ PUBLIC
|
||||
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/>
|
||||
+ $<INSTALL_INTERFACE:include/>
|
||||
+ PRIVATE ${glslang_SOURCE_DIR})
|
||||
# We use parts of Glslang's HLSL compilation interface, which
|
||||
# now requires this preprocessor definition.
|
||||
add_definitions(-DENABLE_HLSL)
|
||||
@@ -50,12 +53,21 @@ target_link_libraries(shaderc_util PRIVATE
|
||||
SPIRV-Tools-opt ${CMAKE_THREAD_LIBS_INIT})
|
||||
|
||||
if(SHADERC_ENABLE_INSTALL AND NOT BUILD_SHARED_LIBS)
|
||||
- install(TARGETS shaderc_util
|
||||
+ install(TARGETS shaderc_util EXPORT unofficial-shaderc_utilTargets
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
+ install(EXPORT unofficial-shaderc_utilTargets
|
||||
+ NAMESPACE unofficial::shaderc_util::
|
||||
+ DESTINATION share/unofficial-shaderc_util
|
||||
+ )
|
||||
endif(SHADERC_ENABLE_INSTALL)
|
||||
|
||||
+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc_util-config.cmake.in"
|
||||
+[[include("${CMAKE_CURRENT_LIST_DIR}/unofficial-shaderc_utilTargets.cmake")]])
|
||||
+configure_file("${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc_util-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc_util-config.cmake" @ONLY)
|
||||
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc_util-config.cmake DESTINATION share/unofficial-shaderc_util)
|
||||
+
|
||||
shaderc_add_tests(
|
||||
TEST_PREFIX shaderc_util
|
||||
LINK_LIBS shaderc_util
|
Reference in New Issue
Block a user