Find a file
Simon McVittie 01005bbbd0 Add --with-system-include-path etc.
Instead of hard-coding /usr/include, we now use the environment variable
PKG_CONFIG_SYSTEM_INCLUDE_PATH, defaulting to the argument of
./configure --with-system-include-path, which in turn defaults to
/usr/include.

Similarly, PKG_CONFIG_SYSTEM_LIBRARY_PATH defaults to /usr/lib or
/usr/lib:/usr/lib64 as appropriate.

(As currently implemented, this causes a behaviour change on Win32 -
the option -I/usr/include will now be filtered out.)

The intended usage is for Debian to configure pkg-config with
--with-system-include-path=/usr/include/$(DEB_HOST_GNU_TYPE):/usr/include
and the corresponding library path, for multiarch support
(<http://bugs.debian.org/482884>).

Based on work by Colin Walters <walters@verbum.org>
2011-04-13 22:56:53 +02:00
check Allow $() through unescaped. 2011-04-13 22:02:51 +02:00
popt Add COPYING files to give general licensing terms 2010-05-27 21:40:47 +02:00
.cvsignore import 2005-07-14 13:04:01 +00:00
.gitignore Force generation of libtool script so it can be used reliably 2010-06-17 09:17:46 -07:00
acconfig.h import 2005-07-14 13:04:01 +00:00
AUTHORS 2005-03-26 Tollef Fog Heen <tfheen@err.no> 2005-07-14 13:06:24 +00:00
autogen.sh Stop shipping an embedded glib 2011-04-13 20:16:23 +02:00
ChangeLog Mark Changelog as no longer kept up to date. 2010-05-08 22:16:12 +02:00
configure.ac Add --with-system-include-path etc. 2011-04-13 22:56:53 +02:00
COPYING Add COPYING files to give general licensing terms 2010-05-27 21:40:47 +02:00
main.c Add --print-provides and --print-requires(-private) options 2010-05-10 20:02:53 +02:00
Makefile.am Add --with-system-include-path etc. 2011-04-13 22:56:53 +02:00
NEWS Document 0.25 changes 2010-05-28 18:09:35 +02:00
parse.c Allow $() through unescaped. 2011-04-13 22:02:51 +02:00
parse.h Drop support for legacy -config scripts 2010-09-01 20:48:57 +02:00
pkg-config-guide.html Include an introductory guide to pkg-config 2010-05-08 22:30:33 +02:00
pkg-config.1 Mention that auto* recommends building .pc files at build time 2011-04-13 21:03:15 +02:00
pkg-config.in import 2005-07-14 13:04:01 +00:00
pkg.c Add --with-system-include-path etc. 2011-04-13 22:56:53 +02:00
pkg.h Stop shipping an embedded glib 2011-04-13 20:16:23 +02:00
pkg.m4 Add _LIBDIR to m4_pattern_allow too 2011-04-13 22:26:18 +02:00
README 2005-06-03 Tollef Fog Heen <tfheen@err.no> 2005-07-14 13:07:20 +00:00
README.win32 2002-09-13 Tor Lillqvist <tml@iki.fi> 2005-07-14 13:05:20 +00:00

pkg-config is a script to make putting together all the build
flags when compiling/linking a lot easier.

Report bugs at http://bugzilla.freedesktop.org/


To use pkg-config, do something like the following in your configure.ac

    PKG_CHECK_MODULES([GNOME], [gtk > 1.2.8 gnomeui >= 1.2.0])

This puts the neccesary include flags to compile/link something against
libgnomeui and all its dependencies in $(GNOME_CFLAGS), and the -L/-l flags
for linking in $(GNOME_LIBS).

Users can define the PKG_CONFIG environment variable to point at the
right one, or if they cross-compile and have a correctly named pkg-config
(eg. arm-linux-pkg-config) in their PATH that will be used in preference.

Users can also define the GNOME_CFLAGS and GNOME_LIBS environment variables
if they think they know better, pkg-config will not be called if they do
that.

The "gtk > 1.2.8" part is only neccesary if you want to specifically check
if libgtk is version 1.2.8 or higher. Otherwise, the flags for gtk
will be included automatically, since libgnomeui depends on gtk.
So you could just say:

     PKG_CHECK_MODULES([GNOME], [gnomeui])

for any version of gnomeui.

For more info, there's even a man page, try 'man pkg-config'