aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>2021-02-11 00:24:45 -0800
committerGitHub <noreply@github.com>2021-02-11 00:24:45 -0800
commitf6a877255e8b648eeec18ba6efb015e601f2286f (patch)
tree36e8d6de5199baa023ec8504c3983eb9d7060d1b
parent56136ffae69a4a7f8b9cd5452713925417d47367 (diff)
downloadvcpkg-f6a877255e8b648eeec18ba6efb015e601f2286f.tar.gz
vcpkg-f6a877255e8b648eeec18ba6efb015e601f2286f.zip
[shaderc] Use build type to build targets (#16137)
* [shaderc] Use build type to build targets * update version record * Update ports/shaderc/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Update ports/shaderc/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * refresh version record Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
-rw-r--r--ports/shaderc/CONTROL3
-rw-r--r--ports/shaderc/fix-build-type.patch85
-rw-r--r--ports/shaderc/portfile.cmake34
-rw-r--r--versions/baseline.json4
-rw-r--r--versions/s-/shaderc.json5
5 files changed, 113 insertions, 18 deletions
diff --git a/ports/shaderc/CONTROL b/ports/shaderc/CONTROL
index 0878b17be..e700a4010 100644
--- a/ports/shaderc/CONTROL
+++ b/ports/shaderc/CONTROL
@@ -1,5 +1,6 @@
Source: shaderc
-Version: 2019-06-26-1
+Version: 2019-06-26
+Port-Version: 2
Homepage: https://github.com/google/shaderc
Description: A collection of tools, libraries and tests for shader compilation.
Build-Depends: glslang, spirv-tools \ No newline at end of file
diff --git a/ports/shaderc/fix-build-type.patch b/ports/shaderc/fix-build-type.patch
new file mode 100644
index 000000000..959610e3b
--- /dev/null
+++ b/ports/shaderc/fix-build-type.patch
@@ -0,0 +1,85 @@
+diff --git a/libshaderc/CMakeLists.txt b/libshaderc/CMakeLists.txt
+index 0ffa06f..3476170 100644
+--- a/libshaderc/CMakeLists.txt
++++ b/libshaderc/CMakeLists.txt
+@@ -10,10 +10,11 @@ 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})
+-
++else()
+ add_library(shaderc_shared SHARED ${SHADERC_SOURCES})
+ shaderc_default_compile_options(shaderc_shared)
+ target_include_directories(shaderc_shared PUBLIC include PRIVATE ${glslang_SOURCE_DIR})
+@@ -22,6 +23,7 @@ target_compile_definitions(shaderc_shared
+ PUBLIC SHADERC_SHAREDLIB
+ )
+ set_target_properties(shaderc_shared PROPERTIES SOVERSION 1)
++endif()
+
+ if(SHADERC_ENABLE_INSTALL)
+ install(
+@@ -34,10 +36,17 @@ if(SHADERC_ENABLE_INSTALL)
+ DESTINATION
+ ${CMAKE_INSTALL_INCLUDEDIR}/shaderc)
+
+- install(TARGETS shaderc shaderc_shared
++ if (NOT BUILD_SHARED_LIBS)
++ install(TARGETS shaderc
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++ else()
++ install(TARGETS shaderc_shared
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++ endif()
+ endif(SHADERC_ENABLE_INSTALL)
+
+ find_package(Threads)
+@@ -47,10 +56,13 @@ set(SHADERC_LIBS
+ SPIRV # from glslang
+ SPIRV-Tools
+ )
+-
++if (NOT BUILD_SHARED_LIBS)
+ target_link_libraries(shaderc PRIVATE ${SHADERC_LIBS})
++else()
+ target_link_libraries(shaderc_shared PRIVATE ${SHADERC_LIBS})
++endif()
+
++if (NOT BUILD_SHARED_LIBS)
+ shaderc_add_tests(
+ TEST_PREFIX shaderc
+ LINK_LIBS shaderc
+@@ -60,7 +72,7 @@ shaderc_add_tests(
+ shaderc
+ shaderc_cpp
+ shaderc_private)
+-
++else()
+ shaderc_add_tests(
+ TEST_PREFIX shaderc_shared
+ LINK_LIBS shaderc_shared SPIRV-Tools
+@@ -70,7 +82,9 @@ shaderc_add_tests(
+ shaderc
+ shaderc_cpp
+ shaderc_private)
+-
++endif()
++# Do not combine all dependencies to static library
++if (0)
+ shaderc_combine_static_lib(shaderc_combined shaderc)
+
+ if(SHADERC_ENABLE_INSTALL)
+@@ -106,3 +120,4 @@ if(${SHADERC_ENABLE_TESTS})
+ target_link_libraries(shaderc_c_smoke_test PRIVATE shaderc)
+ add_test(NAME shaderc_c_smoke_test COMMAND shaderc_c_smoke_test)
+ endif()
++endif()
+\ No newline at end of file
diff --git a/ports/shaderc/portfile.cmake b/ports/shaderc/portfile.cmake
index b76775b76..40005d52b 100644
--- a/ports/shaderc/portfile.cmake
+++ b/ports/shaderc/portfile.cmake
@@ -1,3 +1,6 @@
+#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
@@ -5,8 +8,9 @@ vcpkg_from_github(
SHA512 329697e8e23d619313440d57ef740a94c49d13533e1b8734fc8ff72fd5092c2addabb306f64cb69160fa5fee373a05ba39a5ee6d92d95e5e2e9c7ec96a51aadc
HEAD_REF master
PATCHES
- "disable-update-version.patch"
- "fix-install.patch"
+ disable-update-version.patch
+ fix-install.patch
+ fix-build-type.patch
)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}/third_party/glslang)
@@ -16,8 +20,6 @@ file(RENAME ${SOURCE_PATH}/third_party/spirv-tools/CMakeLists_spirv.txt ${SOURCE
file(COPY ${CMAKE_CURRENT_LIST_DIR}/build-version.inc DESTINATION ${SOURCE_PATH}/glslc/src)
-#Note: glslang and spir tools doesn't export symbol and need to be build as static lib for cmake to work
-set(VCPKG_LIBRARY_LINKAGE "static")
set(OPTIONS)
if(VCPKG_CRT_LINKAGE STREQUAL "dynamic")
list(APPEND OPTIONS -DSHADERC_ENABLE_SHARED_CRT=ON)
@@ -31,21 +33,23 @@ vcpkg_add_to_path(PREPEND "${PYTHON3_EXE_PATH}")
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
- OPTIONS -DSHADERC_SKIP_TESTS=true ${OPTIONS} -Dglslang_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include -Dspirv-tools_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include
- OPTIONS_DEBUG -DSUFFIX_D=true
- OPTIONS_RELEASE -DSUFFIX_D=false
+ OPTIONS
+ ${OPTIONS}
+ -DSHADERC_SKIP_TESTS=true
+ -Dglslang_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include
+ -Dspirv-tools_SOURCE_DIR=${CURRENT_INSTALLED_DIR}/include
+ OPTIONS_DEBUG
+ -DSUFFIX_D=true
+ OPTIONS_RELEASE
+ -DSUFFIX_D=false
)
vcpkg_install_cmake()
-file(GLOB EXES "${CURRENT_PACKAGES_DIR}/bin/*${CMAKE_EXECUTABLE_SUFFIX}")
-file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools)
+vcpkg_fixup_pkgconfig()
+
+vcpkg_copy_tools(TOOL_NAMES glslc AUTO_CLEAN)
-#Safe to remove as libs are static
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-# Handle copyright
-file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/shaderc)
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/shaderc/LICENSE ${CURRENT_PACKAGES_DIR}/share/shaderc/copyright)
+file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/versions/baseline.json b/versions/baseline.json
index b48c392ba..53351ac05 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -5349,8 +5349,8 @@
"port-version": 0
},
"shaderc": {
- "baseline": "2019-06-26-1",
- "port-version": 0
+ "baseline": "2019-06-26",
+ "port-version": 2
},
"shaderwriter": {
"baseline": "1.0.0",
diff --git a/versions/s-/shaderc.json b/versions/s-/shaderc.json
index 9b544a105..b58c9a2a8 100644
--- a/versions/s-/shaderc.json
+++ b/versions/s-/shaderc.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "684cc1ffce4fe1fe48788484436e1e6d5886859e",
+ "version-string": "2019-06-26",
+ "port-version": 2
+ },
+ {
"git-tree": "0622fa62b4192278be6dc612e9328e3c3a96ff50",
"version-string": "2019-06-26-1",
"port-version": 0