early-access version 2853
This commit is contained in:
1
externals/vcpkg/ports/shaderc/build-version.inc
vendored
Executable file
1
externals/vcpkg/ports/shaderc/build-version.inc
vendored
Executable file
@@ -0,0 +1 @@
|
||||
"shaderc v2021.1-dev unknown hash, 2021-06-21\n"
|
||||
28
externals/vcpkg/ports/shaderc/disable-update-version.patch
vendored
Executable file
28
externals/vcpkg/ports/shaderc/disable-update-version.patch
vendored
Executable file
@@ -0,0 +1,28 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index a4e779b..dc5f1a9 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -121,11 +121,6 @@ if(${SHADERC_ENABLE_EXAMPLES})
|
||||
add_subdirectory(examples)
|
||||
endif()
|
||||
|
||||
-add_custom_target(build-version
|
||||
- ${PYTHON_EXECUTABLE}
|
||||
- ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py
|
||||
- ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/build-version.inc
|
||||
- COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).")
|
||||
|
||||
function(define_pkg_config_file NAME LIBS)
|
||||
add_custom_target(${NAME}-pkg-config ALL
|
||||
diff --git a/glslc/CMakeLists.txt b/glslc/CMakeLists.txt
|
||||
index acf6fb0..d0df7db 100644
|
||||
--- a/glslc/CMakeLists.txt
|
||||
+++ b/glslc/CMakeLists.txt
|
||||
@@ -26,7 +26,6 @@ shaderc_default_compile_options(glslc_exe)
|
||||
target_include_directories(glslc_exe PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/.. ${spirv-tools_SOURCE_DIR}/include)
|
||||
set_target_properties(glslc_exe PROPERTIES OUTPUT_NAME glslc)
|
||||
target_link_libraries(glslc_exe PRIVATE glslc shaderc_util shaderc)
|
||||
-add_dependencies(glslc_exe build-version)
|
||||
|
||||
shaderc_add_tests(
|
||||
TEST_PREFIX glslc
|
||||
67
externals/vcpkg/ports/shaderc/fix-build-type.patch
vendored
Executable file
67
externals/vcpkg/ports/shaderc/fix-build-type.patch
vendored
Executable file
@@ -0,0 +1,67 @@
|
||||
diff --git a/libshaderc/CMakeLists.txt b/libshaderc/CMakeLists.txt
|
||||
index 3ada419..f3277f0 100644
|
||||
--- a/libshaderc/CMakeLists.txt
|
||||
+++ b/libshaderc/CMakeLists.txt
|
||||
@@ -24,13 +24,16 @@ set(SHADERC_SOURCES
|
||||
src/shaderc_private.h
|
||||
)
|
||||
|
||||
+if (NOT BUILD_SHARED_LIBS)
|
||||
add_library(shaderc STATIC ${SHADERC_SOURCES})
|
||||
shaderc_default_compile_options(shaderc)
|
||||
target_include_directories(shaderc
|
||||
PUBLIC include
|
||||
PRIVATE ${glslang_SOURCE_DIR}
|
||||
${SPIRV-Headers_SOURCE_DIR}/include)
|
||||
+set(shaderc_install_target shaderc)
|
||||
|
||||
+else()
|
||||
add_library(shaderc_shared SHARED ${SHADERC_SOURCES})
|
||||
shaderc_default_compile_options(shaderc_shared)
|
||||
target_include_directories(shaderc_shared
|
||||
@@ -42,6 +45,8 @@ target_compile_definitions(shaderc_shared
|
||||
PUBLIC SHADERC_SHAREDLIB
|
||||
)
|
||||
set_target_properties(shaderc_shared PROPERTIES SOVERSION 1)
|
||||
+set(shaderc_install_target shaderc_shared)
|
||||
+endif()
|
||||
|
||||
if(SHADERC_ENABLE_INSTALL)
|
||||
install(
|
||||
@@ -54,7 +59,7 @@ if(SHADERC_ENABLE_INSTALL)
|
||||
DESTINATION
|
||||
${CMAKE_INSTALL_INCLUDEDIR}/shaderc)
|
||||
|
||||
- install(TARGETS shaderc shaderc_shared
|
||||
+ install(TARGETS ${shaderc_install_target}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
@@ -68,8 +73,11 @@ set(SHADERC_LIBS
|
||||
SPIRV-Tools
|
||||
)
|
||||
|
||||
+if(NOT BUILD_SHARED_LIBS)
|
||||
target_link_libraries(shaderc PRIVATE ${SHADERC_LIBS})
|
||||
+else()
|
||||
target_link_libraries(shaderc_shared PRIVATE ${SHADERC_LIBS})
|
||||
+endif()
|
||||
|
||||
shaderc_add_tests(
|
||||
TEST_PREFIX shaderc
|
||||
@@ -93,6 +101,7 @@ shaderc_add_tests(
|
||||
shaderc_cpp
|
||||
shaderc_private)
|
||||
|
||||
+if(0)
|
||||
shaderc_combine_static_lib(shaderc_combined shaderc)
|
||||
|
||||
if(SHADERC_ENABLE_INSTALL)
|
||||
@@ -121,6 +130,7 @@ shaderc_add_tests(
|
||||
TEST_NAMES
|
||||
shaderc
|
||||
shaderc_cpp)
|
||||
+endif()
|
||||
|
||||
if(${SHADERC_ENABLE_TESTS})
|
||||
add_executable(shaderc_c_smoke_test ./src/shaderc_c_smoke_test.c)
|
||||
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
|
||||
18
externals/vcpkg/ports/shaderc/fix-install-shaderc_util.patch
vendored
Executable file
18
externals/vcpkg/ports/shaderc/fix-install-shaderc_util.patch
vendored
Executable file
@@ -0,0 +1,18 @@
|
||||
diff --git a/libshaderc_util/CMakeLists.txt b/libshaderc_util/CMakeLists.txt
|
||||
index 99ce3c4..4926203 100644
|
||||
--- a/libshaderc_util/CMakeLists.txt
|
||||
+++ b/libshaderc_util/CMakeLists.txt
|
||||
@@ -49,6 +49,13 @@ target_link_libraries(shaderc_util PRIVATE
|
||||
glslang OSDependent OGLCompiler HLSL glslang SPIRV
|
||||
SPIRV-Tools-opt ${CMAKE_THREAD_LIBS_INIT})
|
||||
|
||||
+if(SHADERC_ENABLE_INSTALL AND NOT BUILD_SHARED_LIBS)
|
||||
+ install(TARGETS shaderc_util
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
+endif(SHADERC_ENABLE_INSTALL)
|
||||
+
|
||||
shaderc_add_tests(
|
||||
TEST_PREFIX shaderc_util
|
||||
LINK_LIBS shaderc_util
|
||||
13
externals/vcpkg/ports/shaderc/glslang/CMakeLists.txt
vendored
Executable file
13
externals/vcpkg/ports/shaderc/glslang/CMakeLists.txt
vendored
Executable file
@@ -0,0 +1,13 @@
|
||||
cmake_minimum_required(VERSION 3.11)
|
||||
|
||||
find_package(glslang CONFIG REQUIRED)
|
||||
|
||||
set_property(TARGET glslang PROPERTY IMPORTED_GLOBAL TRUE)
|
||||
set_property(TARGET OSDependent PROPERTY IMPORTED_GLOBAL TRUE)
|
||||
set_property(TARGET OGLCompiler PROPERTY IMPORTED_GLOBAL TRUE)
|
||||
set_property(TARGET HLSL PROPERTY IMPORTED_GLOBAL TRUE)
|
||||
set_property(TARGET SPIRV PROPERTY IMPORTED_GLOBAL TRUE)
|
||||
set_property(TARGET MachineIndependent PROPERTY IMPORTED_GLOBAL TRUE)
|
||||
|
||||
find_path(glslang_SOURCE_DIR glslang/Public/ShaderLang.h)
|
||||
set(glslang_SOURCE_DIR "${glslang_SOURCE_DIR}/glslang" "${glslang_SOURCE_DIR}" CACHE STRING "" FORCE)
|
||||
49
externals/vcpkg/ports/shaderc/portfile.cmake
vendored
Executable file
49
externals/vcpkg/ports/shaderc/portfile.cmake
vendored
Executable file
@@ -0,0 +1,49 @@
|
||||
#Note: glslang and spir tools doesn't export symbol and need to be build as static lib for cmake to work
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO google/shaderc
|
||||
REF adca18dcadd460eb517fe44f6cd2460fa0650ebe
|
||||
SHA512 3a27d4c51be9e9396b9a854cb96d88e78ff2ca6dcb8400bd3288f6984d25876af0eae649aa1c72ad613edbbcfa4324a12809f13ceb7a0134eef41cb1a698dfdf
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
disable-update-version.patch
|
||||
fix-build-type.patch
|
||||
fix-install-shaderc_util.patch
|
||||
fix-export-cmakefiles.patch
|
||||
)
|
||||
|
||||
file(COPY "${CMAKE_CURRENT_LIST_DIR}/build-version.inc" DESTINATION "${SOURCE_PATH}/glslc/src")
|
||||
|
||||
set(OPTIONS)
|
||||
if(VCPKG_CRT_LINKAGE STREQUAL "dynamic")
|
||||
list(APPEND OPTIONS -DSHADERC_ENABLE_SHARED_CRT=ON)
|
||||
endif()
|
||||
|
||||
# shaderc uses python to manipulate copyright information
|
||||
vcpkg_find_acquire_program(PYTHON3)
|
||||
get_filename_component(PYTHON3_EXE_PATH ${PYTHON3} DIRECTORY)
|
||||
vcpkg_add_to_path(PREPEND "${PYTHON3_EXE_PATH}")
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
${OPTIONS}
|
||||
-DSHADERC_SKIP_TESTS=true
|
||||
-DSHADERC_GLSLANG_DIR=${CMAKE_CURRENT_LIST_DIR}/glslang
|
||||
-DSHADERC_SPIRV_TOOLS_DIR=${CMAKE_CURRENT_LIST_DIR}/spirv-tools
|
||||
-DSHADERC_ENABLE_EXAMPLES=OFF
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
vcpkg_fixup_pkgconfig()
|
||||
vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-shaderc CONFIG_PATH share/unofficial-shaderc)
|
||||
vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-shaderc_util CONFIG_PATH share/unofficial-shaderc_util)
|
||||
|
||||
vcpkg_copy_tools(TOOL_NAMES glslc AUTO_CLEAN)
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
8
externals/vcpkg/ports/shaderc/spirv-tools/CMakeLists.txt
vendored
Executable file
8
externals/vcpkg/ports/shaderc/spirv-tools/CMakeLists.txt
vendored
Executable file
@@ -0,0 +1,8 @@
|
||||
find_library(SPIRVTOOLSOPT SPIRV-Tools-opt)
|
||||
find_library(SPIRVTOOLS SPIRV-Tools)
|
||||
|
||||
add_library(SPIRV-Tools-opt STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET SPIRV-Tools-opt PROPERTY IMPORTED_LOCATION "${SPIRVTOOLSOPT}")
|
||||
|
||||
add_library(SPIRV-Tools STATIC IMPORTED GLOBAL)
|
||||
set_property(TARGET SPIRV-Tools PROPERTY IMPORTED_LOCATION "${SPIRVTOOLS}")
|
||||
20
externals/vcpkg/ports/shaderc/vcpkg.json
vendored
Executable file
20
externals/vcpkg/ports/shaderc/vcpkg.json
vendored
Executable file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"name": "shaderc",
|
||||
"version": "2021.1",
|
||||
"port-version": 2,
|
||||
"description": "A collection of tools, libraries and tests for shader compilation.",
|
||||
"homepage": "https://github.com/google/shaderc",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": [
|
||||
"glslang",
|
||||
"spirv-tools",
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user