summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update URL for bug reportingHEADmasterTollef Fog Heen2021-01-241-1/+1
| | | | Fixes: #64
* Spelling and grammar in pkg.m4Tollef Fog Heen2020-04-211-2/+2
| | | | Fixes: #27
* Fix spelling of rra's nameTollef Fog Heen2020-04-211-1/+1
|
* Use https for developer.gnome.org URLTollef Fog Heen2020-04-211-1/+1
|
* Update bug reporting URL to point to gitlabTollef Fog Heen2020-04-211-1/+1
|
* Call setlocale in main functionTing-Wei Lan2019-06-231-0/+6
| | | | | | If setlocale isn't called, GNU gettext will try to convert translated text to ASCII because the default locale is C. It isn't always possible and it causes question marks to be shown on FreeBSD.
* pkg: Make ordering of output from print_package_list() deterministicPhilip Withnall2019-04-032-24/+41
| | | | | | | | | | | | The iteration order of GHashTable changed in GLib 2.59, which broke the check-print-options test, as it relied on a fixed output order from the --list-all argument to pkg-config. Fix that by making print_package_list() output in alphabetical order by Package.key; and update the test to match. This should work with older and newer versions of GLib. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* parse: Don't emit unknown keyword warning for Libs.privateDan Nicholson2017-04-071-3/+5
| | | | | | | | | | 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
* Update to 0.29.2pkg-config-0.29.2Dan Nicholson2017-03-202-1/+23
|
* pkg.m4: Bump the serial number for releaseDan Nicholson2017-03-201-1/+1
| | | | | There aren't any significant changes here, but this will cause aclocal to get the latest version.
* pkg: Check INCLUDE environment variable for MSVCDan Nicholson2017-03-203-20/+62
| | | | | | | | | 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
* check: Add test for system flags pruningDan Nicholson2017-03-203-0/+59
| | | | | | | Test that pkg-config respects the various environment variables that override the system flags handling. https://bugs.freedesktop.org/show_bug.cgi?id=94729
* Ignore automake's compile wrapperDan Nicholson2017-03-201-0/+1
|
* Respect sysroot for -isystem and -idirafterDan Nicholson2017-03-204-9/+26
| | | | | | | | | | | | | | 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
* check: Include special-flags in sysroot testDan Nicholson2017-03-201-0/+6
| | | | | | | 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
* check: Add more flags to the special-flags testDan Nicholson2017-03-202-4/+4
| | | | | | | 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
* glib: Fix bundled build with GCC 6Dan Nicholson2017-03-204-0/+86
| | | | | | | | 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
* man: Document PKG_PROG_PKG_CONFIG conditional issue thereDan Nicholson2017-03-201-1/+9
| | | | | | | 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.
* man: Fix PKG_CHECK_EXISTS comment about PKG_PROG_PKG_CONFIGDan Nicholson2017-03-201-3/+4
| | | | | | | | 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
* m4: Fix indentationPeter Eisentraut2017-03-191-3/+3
| | | | | | | | | 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
* man: Put valid make syntax in the exampleDan Nicholson2017-03-191-1/+1
| | | | | | | | 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
* Make PKG_CHECK_MODULES report the module name instead of the variable prefixRuss Allbery2017-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | 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
* man: Document system search path environment variablesDan Nicholson2017-03-191-2/+30
| | | | | | | | | 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
* pkg: Include CPATH in header search pathv4hn2017-03-191-0/+6
| | | | | | | | 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
* Optimization to load only needed .pc filesMarco Diego Aurélio Mesquita2016-12-223-98/+59
| | | | | | | | | | | | 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
* pkg.m4.in: use correct comments for aclocal serialRoss Burton2016-09-061-3/+3
| | | | | | | 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
* Don't override empty prefix settingDan Nicholson2016-08-304-0/+19
| | | | | | | | 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
* autogen: consider configure errorMatan Nassau2016-08-221-1/+1
|
* Remove unused package_list_strip_duplicatesDan Nicholson2016-08-221-37/+0
| | | | | After 908cdd0, there are no more duplicates in the package list and this function is unused.
* Improve performance of package list expansionMatthew Hanna2016-08-2216-20/+204
| | | | | | | | | | 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.
* Update to 0.29.1pkg-config-0.29.1Dan Nicholson2016-03-012-1/+20
|
* glib: Fix OSX build with internal glibDan Nicholson2016-03-013-2/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Revert "Quote pc_path virtual variable"Dan Nicholson2016-02-261-3/+1
| | | | | | | | 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
* check: More thoroughly test variable usageDan Nicholson2016-02-264-1/+38
| | | | | | | | 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
* Only unquote --variable when it appears quotedDan Nicholson2016-02-263-15/+46
| | | | | | | | | | | | 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
* Revert "Unquote values of requested variables"Dan Nicholson2016-02-262-20/+4
| | | | | | | | 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
* Also match -Wl,-framework for OSX frameworkDan Nicholson2016-01-293-3/+5
| | | | Freedesktop #1278 (https://bugs.freedesktop.org/show_bug.cgi?id=1278)
* Allow overriding package variables with env varsAlexander Larsson2016-01-294-2/+80
| | | | | | | | | | | | | | 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
* Pass key into parse_package_key so it can be set earlyAlexander Larsson2016-01-293-22/+27
| | | | | | | We will need this to properly pick up environment-overridden per-package vairables. https://bugs.freedesktop.org/show_bug.cgi?id=90917
* README.win32: Add info on building with MSVCChun-wei Fan2015-10-281-0/+19
|
* build: Add NMake makefiles for Visual Studio buildsmsvcChun-wei Fan2015-10-263-0/+165
| | | | | | | | 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.
* build: Add a pre-configure config.h template for MSVC buildsChun-wei Fan2015-10-263-1/+102
| | | | | | 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.
* build: Split Out Source ListingChun-wei Fan2015-10-262-8/+10
| | | | | Move the source listing into another Makefile module so that it can be shared with other Makefile-based build mechanisms.
* pkg.c: Port from dirent to GDirChun-wei Fan2015-10-261-13/+13
| | | | | | | 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).
* Update to 0.29pkg-config-0.29Dan Nicholson2015-09-262-1/+37
|
* m4: Change all comment markers to dnlDan Nicholson2015-09-261-118/+122
| | | | | | 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.
* m4: Add Since releases and cleanup commentsDan Nicholson2015-09-261-12/+29
| | | | | Note which release each macro was added in and cleanup the comments to be more consistent between them.
* m4: Update serial to 11Dan Nicholson2015-09-261-1/+1
| | | | | | 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.
* m4: Add PKG_PREREQ version checking macroDan Nicholson2015-09-263-0/+31
| | | | | | | | | | 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
* m4: Process pkg.m4 through AC_CONFIG_FILESDan Nicholson2015-09-263-2/+3
| | | | | Currently there are no substitutions needed in pkg.m4, but this will allow autoconf values such as the package version to be included.