mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-11 16:49:02 +08:00
4cca179bd7
* [spirv-tools] Lower-case dirs for cmake config * Simplify CMake config fixup * Add usage * Update versions * [shaderc] Minor fixes * Fix package imports in build and exported config * Add usage - shaderc_util is a private lib The port never installed this lib's headers. * Fix pc file installation * Update versions * [spirv-tools] Add tools feature * [spirv-tools] Fix exported cmake config * [shaderc] Fis SPIRV-Tools target * Fix tools feature
71 lines
2.6 KiB
Diff
71 lines
2.6 KiB
Diff
diff --git a/libshaderc/CMakeLists.txt b/libshaderc/CMakeLists.txt
|
|
index d3bc639..6432a9b 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
|
|
@@ -60,9 +64,14 @@ if(SHADERC_ENABLE_INSTALL)
|
|
${CMAKE_INSTALL_INCLUDEDIR}/shaderc)
|
|
|
|
install(TARGETS ${shaderc_install_target} shaderc_util
|
|
+ EXPORT unofficial-shaderc-targets
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
+ install(EXPORT unofficial-shaderc-targets
|
|
+ NAMESPACE unofficial::shaderc::
|
|
+ DESTINATION share/unofficial-shaderc
|
|
+ )
|
|
endif(SHADERC_ENABLE_INSTALL)
|
|
|
|
find_package(Threads)
|
|
@@ -79,6 +88,15 @@ else()
|
|
target_link_libraries(shaderc_shared PRIVATE ${SHADERC_LIBS})
|
|
endif()
|
|
|
|
+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-shaderc-config.cmake" [[
|
|
+include(CMakeFindDependencyMacro)
|
|
+find_dependency(glslang CONFIG)
|
|
+find_dependency(SPIRV-Tools CONFIG)
|
|
+find_dependency(SPIRV-Tools-opt CONFIG)
|
|
+include("${CMAKE_CURRENT_LIST_DIR}/unofficial-shaderc-targets.cmake")
|
|
+]])
|
|
+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 99ce3c4..3d5a222 100644
|
|
--- a/libshaderc_util/CMakeLists.txt
|
|
+++ b/libshaderc_util/CMakeLists.txt
|
|
@@ -39,7 +39,7 @@ 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> PRIVATE ${glslang_SOURCE_DIR})
|
|
# We use parts of Glslang's HLSL compilation interface, which
|
|
# now requires this preprocessor definition.
|
|
add_definitions(-DENABLE_HLSL)
|