Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Dec 2020 20:23:40 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r559309 - in head/graphics/shaderc: . files
Message-ID:  <202012262023.0BQKNeEC018225@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Sat Dec 26 20:23:40 2020
New Revision: 559309
URL: https://svnweb.freebsd.org/changeset/ports/559309

Log:
  graphics/shaderc: unbreak consumers with ld.bfd after r559203
  
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setEntryPoint(char const*)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TPoolAllocator::push()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TProgram::~TProgram()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::GetKhronosToolId()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::FinalizeProcess()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setShiftUboBinding(unsigned int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TIntermediate::getBaseAlignmentScalar(glslang::TType const&, int&)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setShiftSsboBinding(unsigned int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setStringsWithLengthsAndNames(char const* const*, int const*, char const* const*, int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setResourceSetBinding(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::getInfoLog()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::TShader(EShLanguage)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TIntermediate::computeTypeLocationSize(glslang::TType const&, EShLanguage)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::InitializeProcess()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TIntermediate::improperStraddle(glslang::TType const&, int, int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setAutoMapBindings(bool)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TPoolAllocator::allocate(unsigned int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setAutoMapLocations(bool)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setHlslIoMapping(bool)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TPoolAllocator::pop()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TProgram::getInfoLog()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setShiftSamplerBinding(unsigned int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::preprocess(TBuiltInResource const*, int, EProfile, bool, bool, EShMessages, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, glslang::TShader::Includer&)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setShiftTextureBinding(unsigned int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::~TShader()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setShiftImageBinding(unsigned int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TProgram::mapIO(glslang::TIoMapResolver*, glslang::TIoMapper*)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TIntermediate::getMemberAlignment(glslang::TType const&, int&, int&, glslang::TLayoutPacking, bool)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TProgram::TProgram()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `spvtools::utils::BitVector::Or(spvtools::utils::BitVector const&)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setInvertY(bool)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::GetThreadPoolAllocator()'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::parse(TBuiltInResource const*, int, EProfile, bool, bool, EShMessages, glslang::TShader::Includer&)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TProgram::link(EShMessages)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setShiftUavBinding(unsigned int)'
  //usr/local/lib/libshaderc_shared.so.1: undefined reference to `glslang::TShader::setNanMinMaxClamp(bool)'
  cc: error: linker command failed with exit code 1 (use -v to see invocation)

Modified:
  head/graphics/shaderc/Makefile   (contents, props changed)
  head/graphics/shaderc/files/patch-system-glslang   (contents, props changed)

Modified: head/graphics/shaderc/Makefile
==============================================================================
--- head/graphics/shaderc/Makefile	Sat Dec 26 20:07:26 2020	(r559308)
+++ head/graphics/shaderc/Makefile	Sat Dec 26 20:23:40 2020	(r559309)
@@ -3,7 +3,7 @@
 PORTNAME=	shaderc
 DISTVERSIONPREFIX=v
 DISTVERSION=	2020.4
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	graphics devel
 
 MAINTAINER=	jbeich@FreeBSD.org
@@ -21,6 +21,7 @@ USE_GITHUB=	yes
 GH_ACCOUNT=	google
 GH_TUPLE=	KhronosGroup:SPIRV-Headers:1.5.3:headers/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

Modified: head/graphics/shaderc/files/patch-system-glslang
==============================================================================
--- head/graphics/shaderc/files/patch-system-glslang	Sat Dec 26 20:07:26 2020	(r559308)
+++ head/graphics/shaderc/files/patch-system-glslang	Sat Dec 26 20:23:40 2020	(r559309)
@@ -5,14 +5,16 @@ ld: error: undefined symbol: ConstructCompiler(EShLang
 >>> referenced by ShaderLang.cpp
 >>>               ShaderLang.cpp.o:(ShConstructCompiler) in archive /usr/local/lib/libMachineIndependent.a
 
---- glslc/CMakeLists.txt.orig	2020-12-24 21:26:10 UTC
-+++ glslc/CMakeLists.txt
-@@ -43,7 +43,7 @@ if (SHADERC_ENABLE_WGSL_OUTPUT)
- endif(SHADERC_ENABLE_WGSL_OUTPUT)
+--- libshaderc_util/CMakeLists.txt.orig	2020-12-09 21:30:21 UTC
++++ libshaderc_util/CMakeLists.txt
+@@ -46,8 +46,8 @@ add_definitions(-DENABLE_HLSL)
  
- target_link_libraries(glslc PRIVATE
--  glslang OSDependent OGLCompiler HLSL glslang SPIRV    # Glslang libraries
-+  glslang MachineIndependent GenericCodeGen OSDependent OGLCompiler # Glslang libraries
-   $<$<BOOL:${SHADERC_ENABLE_WGSL_OUTPUT}>:libtint>      # Tint libraries, optional
-   shaderc_util shaderc                                  # internal Shaderc libraries
-   ${CMAKE_THREAD_LIBS_INIT})
+ 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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202012262023.0BQKNeEC018225>