Index: head/graphics/shaderc/Makefile =================================================================== --- head/graphics/shaderc/Makefile (revision 559313) +++ head/graphics/shaderc/Makefile (revision 559314) @@ -1,36 +1,48 @@ # $FreeBSD$ PORTNAME= shaderc -DISTVERSIONPREFIX=v +DISTVERSIONPREFIX= v DISTVERSION= 2020.4 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= graphics devel MAINTAINER= jbeich@FreeBSD.org COMMENT= GLSL/HLSL to SPIR-V shader compiler LICENSE= APACHE20 -BUILD_DEPENDS= ${LOCALBASE}/lib/libHLSL.a:graphics/glslang \ - ${LOCALBASE}/lib/libSPIRV-Tools-opt.a:graphics/spirv-tools +BUILD_DEPENDS= glslang>0:graphics/glslang \ + spirv-tools>0:graphics/spirv-tools -USES= cmake compiler:c++11-lib pkgconfig localbase:ldflags python:build -USE_LDCONFIG= yes - +USES= cmake compiler:c++11-lib localbase:ldflags python:3.4+,build USE_GITHUB= yes +USE_LDCONFIG= yes GH_ACCOUNT= google GH_TUPLE= KhronosGroup:SPIRV-Headers:1.5.3:headers/third_party/spirv-headers - +CMAKE_ARGS= -Dglslang_SOURCE_DIR:PATH="${LOCALBASE}/include/glslang" \ + -DSPIRV-Headers_SOURCE_DIR:PATH="${WRKSRC}/third_party/spirv-headers" LDFLAGS+= -Wl,-z,defs # glslang -CMAKE_ON+= SHADERC_SKIP_TESTS -CMAKE_ARGS+= -DSPIRV-Headers_SOURCE_DIR=${WRKSRC}/third_party/spirv-headers -CMAKE_ARGS+= -Dglslang_SOURCE_DIR=${LOCALBASE}/include/glslang -# https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/shaderc +OPTIONS_DEFINE= TEST +TEST_BUILD_DEPENDS= googletest>0:devel/googletest +TEST_TEST_TARGET= test +TEST_CMAKE_BOOL_OFF= SHADERC_SKIP_TESTS + post-patch: - ${REINPLACE_CMD} '/examples/d;/third_party/d' ${WRKSRC}/CMakeLists.txt +# Disable bundled dependencies + ${REINPLACE_CMD} '/third_party/d' ${WRKSRC}/CMakeLists.txt +# Unbreak tests with system spirv-tools + ${REINPLACE_CMD} 's,\$$,\1,' \ + ${WRKSRC}/glslc/test/CMakeLists.txt + +pre-configure: +# Extract (snapshot) version from the port instead of CHANGES + .git/ ${REINPLACE_CMD} '/build-version/d' ${WRKSRC}/glslc/CMakeLists.txt - ${ECHO} "\"${DISTVERSIONFULL}\"" > ${WRKSRC}/glslc/src/build-version.inc + ${ECHO_CMD} "\"${PORTNAME} ${DISTVERSIONFULL}\n\"" >> ${WRKSRC}/glslc/src/build-version.inc + ${ECHO_CMD} "\"`${PKG_BIN} query '%n v%v' spirv-tools`\n\"" >> ${WRKSRC}/glslc/src/build-version.inc + ${ECHO_CMD} "\"`${PKG_BIN} query '%n 10-%v' glslang`\n\"" >> ${WRKSRC}/glslc/src/build-version.inc + +pre-install-TEST-on: do-test .include Index: head/graphics/shaderc/files/patch-system-glslang =================================================================== --- head/graphics/shaderc/files/patch-system-glslang (revision 559313) +++ head/graphics/shaderc/files/patch-system-glslang (revision 559314) @@ -1,20 +1,36 @@ +ld: error: undefined symbol: spvBinaryDestroy +>>> referenced by shaderc.cc +>>> shaderc.cc.o:(shaderc_compilation_result_spv_binary::~shaderc_compilation_result_spv_binary()) in archive libshaderc/./libshaderc_combined.a +>>> referenced by shaderc.cc +>>> shaderc.cc.o:(shaderc_compilation_result_spv_binary::~shaderc_compilation_result_spv_binary()) in archive libshaderc/./libshaderc_combined.a ld: error: undefined symbol: glslang::InitializeProcess() >>> referenced by compiler.cc >>> compiler.cc.o:(shaderc_util::GlslangInitializer::GlslangInitializer()) in archive libshaderc_util/libshaderc_util.a ld: error: undefined symbol: ConstructCompiler(EShLanguage, int) >>> referenced by ShaderLang.cpp >>> ShaderLang.cpp.o:(ShConstructCompiler) in archive /usr/local/lib/libMachineIndependent.a +--- libshaderc/CMakeLists.txt.orig 2020-12-09 21:30:21 UTC ++++ libshaderc/CMakeLists.txt +@@ -114,7 +114,7 @@ endif(SHADERC_ENABLE_INSTALL) + + shaderc_add_tests( + TEST_PREFIX shaderc_combined +- LINK_LIBS shaderc_combined ${CMAKE_THREAD_LIBS_INIT} ++ LINK_LIBS shaderc_combined ${SHADERC_LIBS} + INCLUDE_DIRS include ${shaderc_SOURCE_DIR}/libshaderc_util/include ${glslang_SOURCE_DIR} + ${spirv-tools_SOURCE_DIR}/include + ${SPIRV-Headers_SOURCE_DIR}/include --- libshaderc_util/CMakeLists.txt.orig 2020-12-09 21:30:21 UTC +++ libshaderc_util/CMakeLists.txt @@ -46,8 +46,8 @@ add_definitions(-DENABLE_HLSL) find_package(Threads) target_link_libraries(shaderc_util PRIVATE - glslang OSDependent OGLCompiler HLSL glslang SPIRV - SPIRV-Tools-opt ${CMAKE_THREAD_LIBS_INIT}) + glslang MachineIndependent GenericCodeGen OSDependent OGLCompiler HLSL glslang SPIRV + SPIRV-Tools-opt SPIRV-Tools ${CMAKE_THREAD_LIBS_INIT}) shaderc_add_tests( TEST_PREFIX shaderc_util Index: head/graphics/shaderc/files/patch-system-gmock =================================================================== --- head/graphics/shaderc/files/patch-system-gmock (nonexistent) +++ head/graphics/shaderc/files/patch-system-gmock (revision 559314) @@ -0,0 +1,18 @@ +ld: error: undefined symbol: testing::internal::IsTrue(bool) +>>> referenced by compiler_test.cc +>>> libshaderc_util/CMakeFiles/shaderc_util_compiler_test.dir/src/compiler_test.cc.o:(testing::internal::SuiteApiResolver<(anonymous namespace)::CompilerTest>::GetSetUpCaseOrSuite(char const*, int)) +ld: error: undefined symbol: pthread_create +>>> referenced by shaderc_test.cc +>>> libshaderc/CMakeFiles/shaderc_shared_shaderc_test.dir/src/shaderc_test.cc.o:((anonymous namespace)::Init_MultipleThreadsCalling_Test::TestBody()) + +--- cmake/utils.cmake.orig 2020-12-09 21:30:21 UTC ++++ cmake/utils.cmake +@@ -18,7 +18,7 @@ function (shaderc_use_gmock TARGET) + target_include_directories(${TARGET} PRIVATE + ${gmock_SOURCE_DIR}/include + ${gtest_SOURCE_DIR}/include) +- target_link_libraries(${TARGET} PRIVATE gmock gtest_main) ++ target_link_libraries(${TARGET} PRIVATE gmock gtest gtest_main ${CMAKE_THREAD_LIBS_INIT}) + endfunction(shaderc_use_gmock) + + function(shaderc_default_c_compile_options TARGET) Property changes on: head/graphics/shaderc/files/patch-system-gmock ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property