Package: glslang-dev
Version: 15.1.0-1
Severity: wishlist
Tags: upstream

glslang.pc provides Debian-specific pkg-config metadata so that multiple
build systems (Autotools, Meson, CMake, plain Makefiles, others?) can link
to the glslang library without needing to hard-code a complete list of the
static library filenames that are required by the main glslang library,
as demonstrated by the second ${CXX} invocation in debian/tests/glslang-dev.

Upstream now provides CMake metadata, but that's highly CMake-specific:
it's written in the CMake language and is difficult to consume from other
build systems.

It would be great if upstream could be persuaded to generate a .pc file
from their CMake build system (the same way that e.g. SDL3 generates a
.pc file from its build system) so that the library is easy to consume
from other build systems.

spirv.pc presumably does not need to be upstreamed, because it describes
a library that no longer has independent functionality.

I don't know the status of the rest of 0001-pkg-config-compatibility.patch,
which seems to be mixing up two conceptually independent changes:

- using pkg-config, instead of the CMake config module that it now provides,
  to locate a system copy of SPIRV-Tools;
- generating glslang.pc (and for backwards compatibility, spirv.pc)

Perhaps the size of that patch could be reduced, by dropping the parts that
relate to discovery of a system SPIRV-Tools if they are no longer needed
(or moving them to a separate patch if they are still necessary),
and integrating the .pc bug fixes from the other two patches into it?

    smcv

Reply via email to