I noticed Cemu was complaining that /usr/include/glslang/Include/Types.h was missing In /usr/include/glslang/Include only the following are available: glslang_c_interface.h glslang_c_shader_types.h ResourceLimits.h In the build directory there are: arrays.h BaseTypes.h Common.h ConstantUnion.h glslang_c_interface.h glslang_c_shader_types.h InfoSink.h InitializeGlobals.h intermediate.h PoolAlloc.h ResourceLimits.h ShHandle.h SpirvIntrinsics.h Types.h Reproducible: Always
fwiw it seems intentional as far as glslang upstream goes, they have a specific rule for public headers and only install these. set(PUBLIC_HEADERS Public/ResourceLimits.h Public/ShaderLang.h Public/resource_limits_c.h Include/glslang_c_interface.h Include/glslang_c_shader_types.h Include/ResourceLimits.h MachineIndependent/Versions.h) foreach(file ${PUBLIC_HEADERS}) get_filename_component(dir ${file} DIRECTORY) install(FILES ${file} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/glslang/${dir}) endforeach()
https://github.com/KhronosGroup/glslang/issues/3476 seems related
Looks like it was https://github.com/KhronosGroup/glslang/commit/1dcb072cda091180a5b8b03c030bcbe83a54f8e2
Seems this is an intentional design decision from upstream and downstream software will need to adapt. Not sure there is anything for us to do here. If there is software in gentoo relying on non-existent headers we can update the dependency until the software updates.
I don't think anything in tree is relying on these now-internal headers, so closing this for now.