Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion ports/shaderc/CONTROL
Original file line number Diff line number Diff line change
@@ -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
85 changes: 85 additions & 0 deletions ports/shaderc/fix-build-type.patch
Original file line number Diff line number Diff line change
@@ -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
34 changes: 19 additions & 15 deletions ports/shaderc/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
#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 05c766a1f4615ee37d37d09271aaabca30ffd293
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)
Expand All @@ -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)
Expand All @@ -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)
4 changes: 2 additions & 2 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -5341,8 +5341,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",
Expand Down
5 changes: 5 additions & 0 deletions versions/s-/shaderc.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "684cc1ffce4fe1fe48788484436e1e6d5886859e",
"version-string": "2019-06-26",
"port-version": 2
},
{
"git-tree": "0622fa62b4192278be6dc612e9328e3c3a96ff50",
"version-string": "2019-06-26-1",
Expand Down