Age | Commit message (Collapse) | Author | Files | Lines |
|
Requires.private and Libs.private are skipped unless --static is in use.
However, the parser was checking for Libs.private and this option in a
single conditional unlike Requires.private. This was making the check
fall through to the else and emit an "Unknown keyword" debug message
when --static was not used. This was harmless but not true.
https://bugs.freedesktop.org/show_bug.cgi?id=99770
|
|
|
|
There aren't any significant changes here, but this will cause aclocal
to get the latest version.
|
|
On Windows builds when --msvc-syntax is in use, add paths in the INCLUDE
environment variable to the system include search path and ignore the
various GCC environment variables. See
https://msdn.microsoft.com/en-us/library/73f9s62w.aspx for details.
https://bugs.freedesktop.org/show_bug.cgi?id=94729
|
|
Test that pkg-config respects the various environment variables that
override the system flags handling.
https://bugs.freedesktop.org/show_bug.cgi?id=94729
|
|
|
|
Treat -isystem and -idirafter as -I Cflags since they control the
compiler search path. Adjust the sysroot handling so that the arguments
to these options have the sysroot prefixed. However, leave them out of the
system Cflags handling since these directives are explicitly trying to
adjust the compiler's system header search behavior.
The special-flags test case output needs adjustment since all the flags
are now considered -I flags and come out in the order specified in the
pc file.
https://bugs.freedesktop.org/show_bug.cgi?id=97337
|
|
Make sure that the sysroot behavior works right when we have non-I/L
flags to consider.
https://bugs.freedesktop.org/show_bug.cgi?id=97337
|
|
Make sure that all the flag types are covered so that the ordering
between them is being tested.
https://bugs.freedesktop.org/show_bug.cgi?id=97337
|
|
Backport two patches from upstream glib to handle -Wformat-nonliteral
included by default with GCC 6. Ideally the snapshot should be updated,
but this fix the issue until that happens.
https://bugs.freedesktop.org/show_bug.cgi?id=95326
|
|
The issue of PKG_PROG_PKG_CONFIG being run first from a conditional
affects more than PKG_CHECK_MODULES and PKG_CHECK_EXISTS since
PKG_PROG_PKG_CONFIG is AC_REQUIRE'd from many other macros. Describe the
issue completely in the PKG_PROG_PKG_CONFIG section.
|
|
The sentence is clearly referring to the issue of running
PKG_PROG_PKG_CONFIG from outside of a conditional. Thanks to Reuben
Thomas for the suggestion.
https://bugs.freedesktop.org/show_bug.cgi?id=99885
|
|
The pkg-config source code is full of weird whitespace, the sort that
git diff --check would complain about. Attached is a small patch that
cleans this up in pkg.m4 so that it doesn't propagate into other
packages.
https://bugs.freedesktop.org/show_bug.cgi?id=99522
|
|
Use backquotes for substitution in the Makefile example as using the $()
form of command substitution would actually use make's variable
substitution and fail. Thanks to joerg.strebel@gmail.com for the report.
https://bugs.freedesktop.org/show_bug.cgi?id=98011
|
|
In Autoconf output from PKG_CHECK_MODULES in pkg.m4, the "checking for"
message refers to the first argument of PKG_CHECK_MODULES, the variable
prefix, instead of the second argument, the module being checked for.
This results in strange output (like ALL CAPS module names) in various
packages. And when probing for modules, one can't always use a variable
prefix that matches the module name (since ‘-’ and other characters
aren't allowed in variable names), so the Autoconf output is going to
refer to something odd.
The status output should reference the module name being probed for,
both because it looks nicer and because, when debugging problems, this
references the actual thing being probed for on the system, rather than
an internal implementation detail.
Signed-off-by: Guillem Jover <guillem@hadrons.org>
https://bugs.freedesktop.org/show_bug.cgi?id=98334
|
|
None of the environment variables affecting the system include and
library paths were documented. This includes the pkg-config specific
variables like PKG_CONFIG_SYSTEM_INCLUDE_PATH as well as the GCC
variables like C_INCLUDE_PATH.
https://bugs.freedesktop.org/show_bug.cgi?id=99224
|
|
Look for the CPATH environment variable when constructing the -I header
search path like GCC does. See
https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html.
https://bugs.freedesktop.org/show_bug.cgi?id=99224
|
|
Currently pkg-config scans all .pc files from the search path during
initialization. That makes some of the code simpler and works fine when
there are not many .pc files on the system. When there are a lot of .pc
files, then this represents a lot of wasted effort.
Rework the package gathering so that it happens as needed. To support
the --list-all mode, the scanning at initialization can still be done.
https://bugs.freedesktop.org/show_bug.cgi?id=98215
|
|
aclocal requires that serial numbers are on a line commented out with hashes not
dnl, so change the commenting style on the first two lines.
https://bugs.freedesktop.org/show_bug.cgi?id=97615
|
|
If the original prefix setting is empty, skip prepending the redefined
prefix to other variables. This works the same as if the pc file doesn't
have a prefix variable at all.
https://bugs.freedesktop.org/show_bug.cgi?id=97453-empty
|
|
|
|
After 908cdd0, there are no more duplicates in the package list and this
function is unused.
|
|
Adds a hash table to the package list expansion to avoid iterating over
the children of package nodes that have already been visited. Without
this, the expansion is exponential. For library sets with a high degree
of dependency, iteration over the tree with revisiting results, in
practice, in significant slow down at best and pkg-config failure due to
memory exhaustion at worst. The resulting algorithm is equivalent to a
topological sort.
|
|
|
|
In the last internal glib update, the glib configure script changed the
OSX framework flags from the form of "-framework Foo" to
"-Wl,framework,Foo". Unfortunately, libtool only understands the prior
form and doesn't include the appropriate -framework flags in the
libglib-2.0.la file. This ultimately causes pkg-config to fail to link
properly:
Undefined symbols for architecture x86_64:
"_CFRelease", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
"_CFStringGetCString", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
"_CFStringGetCStringPtr", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
"_CFStringGetLength", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
"_CFURLCopyFileSystemPath", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
"_CFURLCreateFromFSRef", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
"_FSFindFolder", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
"_kCFAllocatorSystemDefault", referenced from:
_find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o)
ld: symbol(s) not found for architecture x86_64
Upstream has fixed this by including the new style -framework flags in
the glib-2.0.pc file. We can't use that here as we're bootstrapping
pkg-config itself. Rather than work around this with an OSX platform
check in pkg-config's configure, carry a downstream patch to revert
glib's configure to using the old format.
https://bugs.freedesktop.org/show_bug.cgi?id=92902
|
|
This reverts commit a6e8749ada5af1737b27f1eca1babe83e82af38c. With the
--variable output only being unquoted when it appears needed, this can
return to being a normally defined value.
https://bugs.freedesktop.org/show_bug.cgi?id=93284
|
|
Add some more tests for handling unusual variables such as those that
are quoted or that contain shell characters. This should help make the
--variable output more reliable in the future.
https://bugs.freedesktop.org/show_bug.cgi?id=93284
|
|
The change to unquote values in the --variable output broke users that
had shell special characters in the variable. Instead, only unquote if
the value starts with " or '. A larger fix to do a full unquote, split
and escaping like --cflags/--libs is possible, but that might break the
old semantics even further.
Add a new function, parse_package_variable(), to handle that logic.
https://bugs.freedesktop.org/show_bug.cgi?id=93284
|
|
This reverts commit 50c2867f4a6981e085c721d936c96f174f11f415.
g_shell_quote doesn't match the quoting behavior of pkg-config when the
same variables are output via --cflags and similar.
https://bugs.freedesktop.org/show_bug.cgi?id=93284
|
|
Freedesktop #1278 (https://bugs.freedesktop.org/show_bug.cgi?id=1278)
|
|
pkg-config allows a way to override package variables through the
--define-prefix interface, but this is very cumbersome to do in a global
way since it always needs to be passed on the command line and the
override cannot be scoped to a single packge.
Allow overriding package variables using environment variables of the
form PKG_CONFIG_$PACKAGE_$VARIABLE. For example, setting
PKG_CONFIG_GLADEUI_2_0_CATALOGDIR will override the variable
"catalogdir" in the "gladeui-2.0" package.
https://bugs.freedesktop.org/show_bug.cgi?id=90917
|
|
We will need this to properly pick up environment-overridden
per-package vairables.
https://bugs.freedesktop.org/show_bug.cgi?id=90917
|
|
|
|
This adds a set of NMake Makefiles that can be used to build pkg-config on
Windows using Visual Studio. Note that, since the Visual Studio builds of
GLib does not use pkg-config, this NMake Makefile set does not support the
build of the bundled GLib sources, instead, having GLib built beforehand
is required.
|
|
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.
|
|
Move the source listing into another Makefile module so that it can be
shared with other Makefile-based build mechanisms.
|
|
Port the code to use the GDir APIs from dirent so that we don't have to
depend on a dirent implementation on platforms that do not have it, such
as Visual Studio, so that it is possible to build pkg-config out of the
box on any platform that is supported by GLib (and the bundled GLib).
|
|
|
|
Using # leaves the comments within the generated configure file, which
is just unnecessary bloat since no one would read the generated
configure file for the documentation of the macros.
|
|
Note which release each macro was added in and cleanup the comments to
be more consistent between them.
|
|
This was determined by counting the number of changes to pkg.m4 since
the initial serial number was added. The trailing comment is also
updated to have the version number substituted.
|
|
While PKG_PROG_PKG_CONFIG checks the version of pkg-config available at
build time, it doesn't check the version of the pkg-config macros being
used. PKG_PREREQ (like AC_PREREQ or LT_PREREQ) can be used to check the
version of the macros in use when configure is being generated by the
developer.
https://bugs.freedesktop.org/show_bug.cgi?id=89267
|
|
Currently there are no substitutions needed in pkg.m4, but this will
allow autoconf values such as the package version to be included.
|
|
In case a reinstall is being performed, ensure than an existing host
tool is overwritten.
https://bugs.freedesktop.org/show_bug.cgi?id=90437
|
|
https://bugs.freedesktop.org/show_bug.cgi?id=90078
Signed-off-by: Peter Jones <pjones@redhat.com>
|
|
Wine outputs the paths with carriage returns, which later breaks
commands they're used in. Hopefully this doesn't break the msys case,
but I think it should be safe enough. Really this needs general handling
of Windows paths instead of ad hoc fixes, but that's for another day.
https://bugs.freedesktop.org/show_bug.cgi?id=66939
|
|
Makes the output consistent regardless of how glib puts together the
variables hash table.
https://bugs.freedesktop.org/show_bug.cgi?id=66939
|
|
Since we unquote variables on printing, we want to quote in before adding
to the database. For all other variables defined in .pc files, we assume
that the user has quoted the variable correctly.
This was broken with the fix for bug 67904, but seems to only affect
Windows builds.
|
|
|
|
Rather than responding to the pcfiledir variable specially, store it
in the hash table with all the other package specific variables. This
does result in pcfiledir showing up in the --print-variables output.
|