Hi, Upstream here.
In pkgconf 2 and later, the solver behavior is stricter: all pkg-config dependencies must be satisfiable unless they are placed in Requires.internal. Dependency nodes that are on the Requires.internal list are allowed to be missing if the query type does not require them for linking.
To be explicitly clear: pkg-config implementations have *always* required the Requires.private dependency nodes to be satisfiable for --cflags queries. Unfortunately, the calculated solution depending on query type (e.g. whether --libs is present) caused other problems for a long time, so we normalized the behavior with the new solver in pkgconf 2.
This is an intentional change and in fact, this very bug highlights the whole point of this change: to ensure that package dependencies are fixed so that --cflags, --libs and --static queries result in a consistent solution (with the caveat that Requires.internal nodes are weak constraints), ensuring that users have all of the build dependencies they actually need to build software.
Please revert the changes in 2.5.1-3 and use this information to fix Debian -dev packages so they have more correct dependency information.
Ariadne

