Commit graph

37 commits

Author SHA1 Message Date
Tollef Fog Heen
d97db4fae4 Update URL for bug reporting
Fixes: #64
2021-01-24 20:42:36 +01:00
Dan Nicholson
edf8e6f0ea Update to 0.29.2 2017-03-20 12:05:36 -05:00
Dan Nicholson
87152c05be Update to 0.29.1 2016-03-01 11:40:15 -08:00
Chun-wei Fan
1ed336759f build: Add a pre-configure config.h template for MSVC builds
This adds a pre-configured config.h(.win32.in) that can be used for builds
on Visual Studio, where autotools is normally not available, so that we
can build pkg-config on Visual Studio.
2015-10-26 09:16:27 -07:00
Dan Nicholson
5914edfe96 Update to 0.29 2015-09-26 21:14:47 -07:00
Dan Nicholson
7e8b0bf6d9 m4: Process pkg.m4 through AC_CONFIG_FILES
Currently there are no substitutions needed in pkg.m4, but this will
allow autoconf values such as the package version to be included.
2015-09-26 15:01:37 -07:00
Peter Jones
40342dd0ea Enable large file support
https://bugs.freedesktop.org/show_bug.cgi?id=90078

Signed-off-by: Peter Jones <pjones@redhat.com>
2015-04-20 22:08:22 -07:00
Dan Nicholson
82316c17b4 Ensure usage of serial test driver in automake
Automake has a nice parallel test driver available since 1.12 which
became the default in 1.13. Unfortunately, it breaks the pkg-config
testsuite, so we need to ensure the serial test driver is used. On 1.12,
we can specify the option 'serial-tests', but this doesn't exist on
1.11. Kludge around this by detecting if the automake version is less
than 1.12 and leaving the option out in that case.
2014-09-27 16:20:32 -07:00
Dan Nicholson
409ee76ce1 Allow more control of redefined prefix behavior
Currently the native Win32 builds default to redefining the prefix
variable in .pc files based on their installation paths. This behavior
is not always desired when pkg-config is being used in a traditional
fixed path environment (e.g., /mingw like /usr).

Allow the default to be set via configure switch
--enable/disable-define-prefix, and allow it to be set both ways at
runtime through the --[dont-]define-prefix pkg-config option.
2013-05-17 05:13:14 -07:00
Dan Nicholson
4a0ab4be0b Check for Wine when cross-compiling to Windows
If Wine is available when cross-compiling to Windows, it can be used to
run the test suite from the build machine.
2013-04-09 05:45:40 -07:00
Dan Nicholson
80c2777b22 Substitute TESTS_PKG_CONFIG from configure
This just paves the way to calculate more useful defaults in a shell.
2013-04-09 05:45:40 -07:00
Dan Nicholson
f6212f6b97 Adjust expected path for native Windows test
When check-path is run on native Windows (MINGW), that path reported
by `pkg-config --variable=pc_path pkg-config` is adjusted to the
directory pkg-config is run from. Adjust the expected result based on
getting the current directory from cmd in Windows format.
2013-04-09 05:41:38 -07:00
Dan Nicholson
df1ac943d4 Check $host rather than $build when deciding native Win32
The host triplet describes the machine the program will run on while the
build triplet describes the machine the program is being built on. The
determination of native Win32 should be based on where pkg-config is
going to be running. This makes pkg-config cross-compiled for windows
work as if it was built on windows.
2013-04-09 05:41:38 -07:00
Dan Nicholson
74ceac54ef Update NEWS and bump version for release 2013-01-24 05:42:44 -08:00
Dan Nicholson
7867cbd79c Use the standard pkg-config macros to check for glib
By using our PKG_CHECK_MODULES from our in-tree pkg.m4, the check for
glib will be done the same way pkg-config is used everywhere else. This
includes the usage of AC_PATH_TOOL in PKG_PROG_PKG_CONFIG, which will
check for $host-pkg-config when --host is set during configure.

Freedesktop #59435 (https://bugs.freedesktop.org/show_bug.cgi?id=59435)
2013-01-17 05:39:00 -08:00
Mike Frysinger
4dac402b18 Extend default system library path for libdirs other than lib64
When the basename of the libdir is lib64, we currently add the paths
/usr/lib64:/lib64 to the generic system library path of /usr/lib:/lib.
Extend this coverage to other valid ABIs that use libdirs such as lib32
or libx32.
2012-12-19 07:30:49 -08:00
Dan Nicholson
72e1346d04 Add root /lib* directories to the default -L paths
Avoids outputting -L/lib, which the linker will search in implicitly
like -L/usr/lib.

Freedesktop #58363 (https://bugs.freedesktop.org/show_bug.cgi?id=58363)
2012-12-19 07:20:05 -08:00
Dan Nicholson
1b47b03c2a Convert ints used as bools to gbooleans
This matches the GOption documentation that G_OPTION_ARG_NONE should use
a gboolean.
2012-12-11 11:59:40 -08:00
Dan Nicholson
6b07296902 Install pkg-config link with $host- prefix
If pkg-config is used in a multiarch or cross-compiling scenario it's
likely pkg-config needs to behave differently for each of them. It's
possible to handle this through environment variables with one
pkg-config, but another option is to have one pkg-config per platform,
each with the host alias prefixed to the program.

PKG_PROG_PKG_CONFIG supports this type of installation, and this is also
how autoconf/libtool handle other build tools like compilers and
linkers.

The host-prefixed tool is installed as a hardlink where supported and a
copy otherwise. This is how gcc handles it's host-prefixed versions.
This feature can be turned off by passing --disable-host-tool to
configure.

Freedesktop #130
2012-10-13 08:08:42 -07:00
Dan Nicholson
e68baa7463 Add optional usage of gcov for test coverage
Use gcov to find how much code coverage our current testing gets. This
can be enabled by passing --with-gcov to configure and running "make
gcov". This is limited to gcc. Here's a run from the current code (for
some reason, gcov insists on profiling gstring.h).

/usr/bin/gcov pkg.h pkg.c parse.h parse.c main.c
File 'pkg.c'
Lines executed:73.16% of 611
pkg.c:creating 'pkg.c.gcov'

File '/usr/include/glib-2.0/glib/gstring.h'
Lines executed:100.00% of 6
/usr/include/glib-2.0/glib/gstring.h:creating 'gstring.h.gcov'

File 'parse.c'
Lines executed:79.67% of 492
parse.c:creating 'parse.c.gcov'

File 'main.c'
Lines executed:57.34% of 293
main.c:creating 'main.c.gcov'
2012-09-28 05:45:37 -07:00
Dan Nicholson
a35c3fc95e Update news and bump version for release 2012-08-24 06:03:54 -07:00
Dan Nicholson
305913a6b1 Handle POSIX shell for tests in configure and Makefile
Although the trick of finding a POSIX shell in the system PATH works
fine most of the time, it has some drawbacks.

* The commands must be copied into every test script.
* The scripts are always forced to re-execute themselves.
* There's no guarantee the sh found in `getconf PATH` is a POSIX shell
  and there's no way to override it.

Move the handling of this shell to configure where we can detect it
once. This gives preference to bash and ksh since they're typically
POSIX compatible. It also uses the current PATH with the getconf PATH at
the end which should allow things to work on platforms where getconf
might not be available like mingw/msys.

By specifying the shell in TESTS_ENVIRONMENT, automake will run each
script with this shell and we can drop the re-exec dance.
2012-08-19 08:03:00 -07:00
Dan Nicholson
234da3983b Update NEWS and bump version for 0.27 2012-07-11 05:28:10 -07:00
Dan Nicholson
533de22bae Add a configure message about internal glib to tip people off 2012-06-04 11:01:03 -07:00
Dan Nicholson
fd77d7690b Remove unneeded checks for setresuid & setreuid
These were used in the popt code a long time ago. pkg-config has no need
to be checking your uid.
2012-05-29 17:17:16 -07:00
Dan Nicholson
dfd03ae23e Use g_alloca instead of fooling around with platforms ourselves
Glib has been providing a g_alloca wrapper that handles all the platform
specifics since at least glib-1.3. Use it.
2012-05-29 16:41:17 -07:00
Javier Jardón
7a8cc77163 Update autotools configuration
Replace deprecated macros and use the new libtool syntax. The required
versions of the tools have been bumped up to match the versions of the
bundled glib. This was effectively the requirement, anyway. The new
required autotools versions are:

autoconf-2.62 (released 2008-04-08)
automake-1.11 (released 2009-05-17)
libtool-2.2 (released 2008-03-01)

Also use silent rules to quiet the build a bit.

Freedesktop #34382
2012-05-23 05:45:20 -07:00
LRN
7ac6f32625 Don't use deprecated glib function to construct path on win32
g_win32_get_package_installation_subdirectory() has been deprecated
since GLib 2.18 and in recent (2.31) GLib versions disabled entirely by
default. This patch replaces usage of that function by
g_win32_get_package_installation_directory_of_module() and
g_build_filename(). Use the new functions and rework the code a bit so
it leaks less memory.

g_win32_get_package_installation_directory_of_module() is supported
since GLib 2.16. The minimal GLib version is bumped accordingly.

Freedesktop #45742
2012-05-21 21:08:49 -07:00
Dan Nicholson
ee1737eb41 Clean up some of the autoconf usage
A few of the options in configure.ac were poorly quoted or didn't have
messages matching the typical autoconf style. PKG_CONFIG_FIND_PC_PATH
also had no reason to exist since it was used once immediately after its
definition.
2012-05-15 02:44:14 -07:00
Dan Nicholson
fd4d40b94e Drop popt usage and remove unused popt sources
With the conversion to GOption and g_shell_parse_argv, pkg-config has no
remaining usage of popt. Stop linking to libpopt and removed the bundled
sources.

Fixes Freedesktop #5326, #31700, #44843
2012-05-14 14:19:10 -07:00
Dan Nicholson
c74da521af Use a bundled glib2 to avoid circular dependency
It's nice to say that glib is a base library and you should have it
installed to build pkg-config, but it makes bootstrapping pkg-config
really annoying since it introduces a circular dependency.

Let's be nice to our users and bundle a copy to avoid this situation.
The default is still to use the system's glib, but the internal copy
can be used by passing --with-internal-glib to configure. The latest
stable copy of glib is included and will be updated periodically with
their stable releases.

The top level autogen.sh is running recursively through glib. If this
becomes an issue, we can switch autoreconf to --no-recursive and then
descend to glib and run its autogen.sh script.

Since this is default off, its integration will probably not be tested
often. Therefore, it's forcefully turned on during distcheck to make
sure to test it out before distributing a tarball.
2012-04-21 12:46:32 -07:00
Tollef Fog Heen
b93f795848 Fix typo in configure.ac which led to confusing error messages from configure 2011-09-20 08:50:51 +02:00
Tollef Fog Heen
1d1d7ce414 Drop AM_MAINTAINER_MODE 2011-05-15 14:32:10 +02:00
Tollef Fog Heen
85662d26ba Document changes for 0.26, bump version 2011-05-15 14:24:19 +02:00
Руслан Ижбулатов
7850aeb03a Escape slashes in paths passed to mingw-gcc
Avoids Msys path mangling that turns *nix paths (such as /usr/include) into
DOS-style absolute paths (such as c:/mingw/msys/1.0/include).
Allows mingw-built pkg-config to pass check-cflags.
2011-04-14 08:19:50 +02:00
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
Tollef Fog Heen
2ec2007d8d Rename configure.in to configure.ac 2011-04-13 20:35:16 +02:00
Renamed from configure.in (Browse further)