* parse.c: On Win32, if the value of a a variable other than the
"prefix" one starts with the non-overridden value of "prefix",
then replace that prefix, too, with the run-time one.
To avoid shadowing warnings, rename a 'p' variable to 'q'.
* pkg-config.1: Corresponding update.
* main.c
* pkg.h: Move the Win32 redefinition of PKG_CONFIG_PC_PATH from
main.c to pkg.h as it now is needed in pkg.c, too.
* check/common, check/config.sh.in, check/Makefile.am,
configure.in: Make it possible to check for configure variables in
the check scripts. So far, only direct/indirect is exposed.
* poptparse.c, popthelp.c, poptconfig.c, popt.c, pkg.c, findme.c,
configure.in: Check for malloc.h and use that if it exists.
Apparently this makes Win32 happier. Thanks to Carlo Bramini for
the patch.
* pkg.[ch], main.c, check/check-missing: Don't recurse Requires at
all unless we need to. Add check. Again, thanks to Loïc Minier
for most of the idea and the implementation.
* pkg.[ch], parse.[ch], main.c, check/Makefile.am,
check/check-missing, check/missing-requires-private.pc:
Skip Requires.private unless we need to look at them for cflags.
Add test case. Thanks to Loïc Minier for most of the idea and the
implementation. Debian #475031
* parse.c (_do_parse_libs): Special-case "-lib:" in the Libs
field; it's not an -l. Yes, this breaks if your library is called
libib:$something, in which case you lose. Gnome #142952
* check/check-conflicts, check/conflicts-test.pc: New test,
testing that conflicts work as they should.
* pkg.c (verify_package): Make the conflicts check not only check
package versions, but also package names. This makes conflicts
functional, something they were not before.
* check/check-cflags, check/check-define-variable,
check/check-includedir, check/check-libs,
check/check-libs-private, check/check-requires-private: Replace
the crazy -d ~root check with a more proper way to just make sure
we are running under a POSIX shell. Thanks to Kjetil Torgrim
Homme for the tip about using getconf PATH.
* main.c: Remove the possibility to have a default PKG_CONFIG_PATH
in the Registry. It is much more flexible to just use environment
variables. In general the Registry is not used in the ports of
GTK+ or GNOME libraries and software to Windows.
* parse.c (parse_line): On Windows, handle also .pc files found in
a share/pkgconfig folder when automatically redefining a prefix
variable for the package.
* pkg-config.1: Corresponding changes.
2008-02-18 Tor Lillqvist <tml@novell.com>
* main.c: Fix some bitrot: On Windows, don't use the compile-time
PKG_CONFIG_PC_PATH, but deduce a default one at run-time based on
the location of the executable. This was originally what
pkg-config did on Windows, but it had bit-rotted.
* main.c (main): Fix small portability problem by defining all the
variables in main that are used in the static initialiser as
static variables. This makes the IRIX/mipseb compiler happier.
Thanks to Roland Illig of NetBSD for the patch. This doesn't
apply to some of the Win32 variables, but I don't believe that is
a problem with the existing compilers there.
* pkg.h, pkg.c (string_list_to_string), pkg-config.1, main.c
(main): Add sysroot support and document same. Triggered by
setting PKG_CONFIG_SYSROOT_DIR in the environment.
* pkg.m4: Don't use --errors-to-stdout in pkg.m4, but rather
redirect stderr to stdout. This makes pkg.m4 with old (pre 0.15)
pkg-config look good, and it makes newer pkg-config with ancient
pkg.m4 work well. Gnome #111054