Due to an influx of spam, we have had to temporarily disable account registrations. Please write an email to accountsupport@archlinux.org, with your desired username, if you want to get access. Sorry for the inconvenience.
Re-consider specific use of dependencies from *.cp
I replied here. In short: we need dependencies from Requires.private, because the pkgconf tool checks the existense of .pc files defined in Requires.private even if you don't do static build, and it throws an error if any of them missing, because it wants to ensure that the header or data files of the library specified in Requires.private are available on the system.
I believe this rule is bogus because it relies on a false premise.
Pacman has a clear definition of run time dependencies which matches the common sense reality of running an ELF binary on a Linux system. Pkg-config is a build time tool whose mission is to assist in building software.
By conflating the two, this rule essentially imposes pkg-config's (possibly incorrect) view of run time deps on to pacman.
The classic example of this is the xorgproto stuff. Protocol headers clearly have zilch to do with loading an ELF DSO at run time. Yet this rule means xorgproto must be added to the depends array of various Xorg libs. It simply defies logic.
The situation arises because the *.pc files as supplied by Xorg upstream are actually incorrect. They have:
Requires: xproto
which obviously makes no sense at ELF run time. But of course it makes perfect sense at build time which is where pkg-config is used.
Arch tried to fix this back in 2019, but it was reverted because the mess was too well entrenched. This rule will further propagate past mistakes which is why I believe it is wrong.
I hope my points are clear. But of course only MHO so feel free to ignore :)
As we don't split -dev packages on Arch Linux, we need to ensure that the dependecies of header files are available on the system. Debian do this by adding the required xorgproto headers as dependency to the associated -dev package. But we don't have separated -dev packages, so we have to add these to the library package itself.
xorgproto is a relatively small package, and it ensures that all definitions and data structures common by Xorg libraries are available on the system, so building any dependent package will not fail due to missing headers.
As a package maintainer, I remember it was one of the most annoying problem when a dependency derived from a .pc file was missing, and pkg-config throws an error which completely unrelated to my package.
Requires and Requires.private defined in pkg-config files are usually covered by link-level dependencies already. Only a very small number of packages need additional dependencies, so don't worry about too many additions. Apart from Xorg libraries, I rarely found missing dependencies. But if you found more, let me know.