Otherwise random failures happened when dev-util/glslang builds before dev-util/spirv-tools (and maybe headers). Also #803482 This time after glibc update dev-util/glslang want /usr/lib/librt.so which do not exist in new glibc version (now it in /lib/librt.so.1). Likely was taken from files under /usr/lib/cmake/SPIRV-Tools/* > ninja: error: '/usr/lib/librt.so', needed by 'SPIRV/libSPIRV.so', missing and no known rule to make it Reproducible: Always Steps to Reproduce: 1.emerge -uUD world -vp 2. 3. Actual Results: [ebuild UD ] dev-util/glslang-1.2.198::gentoo [11.6.0::gentoo] ABI_X86="32 (64) (-x32)" 0 KiB [ebuild UD ] dev-util/spirv-tools-1.2.198::gentoo [20210825::gentoo] ABI_X86="32 (64) (-x32)" 0 KiB [ebuild U ] dev-util/vulkan-tools-1.2.198::gentoo [1.2.189-r1::gentoo] USE="X cube -wayland" ABI_X86="32 (64) (-x32)" 0 KiB [ebuild U ] media-libs/shaderc-2021.3::gentoo [2021.2::gentoo] USE="-doc -test" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild U ] media-libs/vulkan-layers-1.2.198::gentoo [1.2.189-r1::gentoo] USE="X wayland" ABI_X86="32 (64) (-x32)" 0 KiB Expected Results: [ebuild UD ] dev-util/spirv-tools-1.2.198::gentoo [20210825::gentoo] ABI_X86="32 (64) (-x32)" 0 KiB [ebuild UD ] dev-util/glslang-1.2.198::gentoo [11.6.0::gentoo] ABI_X86="32 (64) (-x32)" 0 KiB [ebuild U ] dev-util/vulkan-tools-1.2.198::gentoo [1.2.189-r1::gentoo] USE="X cube -wayland" ABI_X86="32 (64) (-x32)" 0 KiB [ebuild U ] media-libs/shaderc-2021.3::gentoo [2021.2::gentoo] USE="-doc -test" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild U ] media-libs/vulkan-layers-1.2.198::gentoo [1.2.189-r1::gentoo] USE="X wayland" ABI_X86="32 (64) (-x32)" 0 KiB
What leads you to believe this is related to spirv-tools? spirv-tools is not a dependency for glslang, SPIRV/libSPIRV.so is installed by glslang, and librt is from the libc implementation. Please provide all required information from https://wiki.gentoo.org/wiki/Attach_the_logs_to_the_bug_ticket
Please do share a log of something failing (attach the build.log in full) and emerge --info.
Ah yes, sorry, I forgot I have it patched. The problem was the following: 1. Upstream releases are built from their git tree where they have external submodules inited. 2. The source files archive contains no external modules in External/ directory. 3. The difference is that upstream builds compiles External/spirv-tools/ and links statically, but Gentoo builds ignores empty External/ directory. Notably SPIRV optimizer is missing in Gentoo builds. 4. So I manually added required target, but for installed SHARED libraries. 5. The bug appeared because spirv-tools was not updated before glslang requested it's libraries info from cmake. My bad, sorry for the noise.