Log

Author Commit Date CI Message
Ariadne Conill 38053395 2025-03-05T17:03:55 pkgconf 2.4.0. Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 866df023 2025-03-05T17:02:00 build: increase libpkgconf SOVERSION to 6 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 3611b056 2025-03-05T16:54:52 libpkgconf: pkg: consistently use pc_sysrootdir for path munging In some cases, client.sysroot_dir would be used instead of the package-specific override. Fixes: https://github.com/pkgconf/pkgconf/pull/280 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 97072df5 2025-03-05T15:55:05 tests: add tests for validating fragment groups Fixes: https://github.com/pkgconf/pkgconf/issues/371 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill b80ce00f 2025-03-05T15:50:38 tests: add additional fragment grouping fixtures Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 680a7c53 2025-03-05T15:47:29 libpkgconf: add placeholder flags fields to all public objects that lacked them Since we are breaking ABI anyway, we may as well try to make the ABI break more futureproof. Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 1dc078f0 2025-03-05T15:39:26 libpkgconf: fragment: add padding bytes to length estimation for child fragments Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 4f78e449 2025-03-05T15:36:56 libpkgconf: fragment: track terminating fragments like -Wl,--end-group Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 6ec7df4d 2025-03-05T15:03:52 libpkgconf: fragment: plug memory leak when child fragments are present Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 543ab926 2025-03-05T15:00:54 libpkgconf: fragment: track text fragments as a tree instead of a flat list This allows us to have more insight into the relationships between text fragments, for example linker groups. Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 5fbabf14 2025-03-04T14:25:43 libpkgconf: fragment: add -nodefaultlibs to special flags list Related: https://github.com/pkgconf/pkgconf/issues/371 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 97fbb4ff 2025-03-04T14:19:37 tests: add fixture for fragment groups Related: https://github.com/pkgconf/pkgconf/issues/371 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill a6b12995 2025-02-18T16:35:00 tests: add regression test for --variable Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill ea0e6458 2025-02-18T16:34:18 cli: main: disable graph recursion with --variable This was just a simple logic error. Fixes: 4697d63 ("cli: main: allow use of multiple package names in solution-based queries") Signed-off-by: Ariadne Conill <ariadne@dereferenced.org> Closes: https://github.com/pkgconf/pkgconf/issues/376 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 9d94f4d2 2025-02-18T16:23:45 meson: define kyua/atf-sh binary dependencies as native They are used to run tests on the host. Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 792e2c62 2025-02-04T17:00:30 libpkgconf: path: get rid of unused win32-specific variable Windows builder was warning about this. Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill e8dc0e20 2025-02-04T16:57:14 libpkgconf: parser: finalize the parsing buffer when done with it Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 5fe482b2 2025-02-04T16:49:18 libpkgconf: buffer: pkgconf_buffer_lastc should always be 0 on an empty buffer Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 88258bd9 2025-02-04T16:31:01 libpkgconf: buffer: round up buffer allocations to 4KB granules Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill f0aa4071 2025-02-03T05:33:53 cli: fix warning in solver state debug function Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill a4de2930 2025-02-03T05:31:40 libpkgconf: fileio: use bool for fgetline return type instead of a pointer (we internally look at the raw buffer anyway) Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 68e8f720 2025-02-02T03:11:37 tests: add test for issue #370 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill f982cbda 2025-02-02T03:08:49 tests: add fixtures for issue #370 Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 6f1055d0 2025-02-02T03:06:12 libpkgconf: queue: stop considering the lack of a pre-loaded match in a dependency node as a fatal error This is a performance optimization, not an absolute source of truth. We will evaluate the dependency node lazily in these cases anyway... Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill b861bcad 2025-02-02T02:58:58 cli: solution: denote private dependency nodes in the solution Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill a79952a0 2025-02-02T02:30:38 libpkgconf: queue: always walk requires.private lists internally This ensures the internal dependency graph solution is always consistent. We filter out the nodes we don't care about in cases where we need to filter as of commit 86602bc, so now we can just simplify the solving a little bit. Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 86602bc1 2025-02-02T02:10:00 libpkgconf: pkg: skip over private dependency nodes when --static is not explicitly requested Fixes: 197fcad ("queue: add flattening code") Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill d0f8f3f2 2025-02-02T01:33:06 libpkgconf: fileio: rework to use pkgconf_buffer, allowing larger than 64KB lines Fixes: 130907d ("fileio: add routine for portably yanking lines out of a FILE stream") Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 83a2ae04 2025-02-02T01:30:54 libpkgconf: buffer: fix memory allocation logic, add push/trim byte functions Fixes: 1001750 ("libpkgconf: add buffer management functions") Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill bd043cae 2025-02-02T00:31:54 libpkgconf: buffer: add PKGCONF_BUFFER_INITIALIZER
Ariadne Conill 10017500 2024-12-09T19:49:50 libpkgconf: add buffer management functions Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Ariadne Conill 5c535171 2024-12-09T19:26:05 Merge pull request #363 from SoapGentoo/pcfiledir_symlink `${pcfiledir}` symlink resolving
Ariadne Conill 3cd6b8c5 2024-12-09T19:25:47 Merge pull request #369 from jas4711/pkgm4-fix-fsf-license-and-serial pkg.m4: Bump serial. Use URL instead of obsolete FSF postal address.
Simon Josefsson 11236d44 2024-11-19T10:33:19 pkg.m4: Bump serial. Use URL instead of obsolete FSF postal address. Signed-off-by: Simon Josefsson <simon@josefsson.org>
David Seifert ff51052e 2024-10-09T19:06:06 add test for symlinked ${pcfiledir}
David Seifert e6c1d4b8 2024-10-09T19:06:05 ${pcfiledir} should point to parent dir of actual file, not symlink * In situations where we have a real <path1>/foo.pc that uses ${pcfiledir} and a symlink <path2>/foo.pc that points to <path1>/foo.pc, then ${pcfiledir} should resolve to <path1> and not <path2>.
Ariadne Conill 444846dd 2024-10-07T17:44:22 personality: drop want_default_pure on windows We still retain want_default_static to satisfy the requirements of the PE/COFF linking model. Fixes: 008d7069 ("libpkgconf: personality: default: set want_default_static and want_default_pure to true on windows") Signed-off-by: Ariadne Conill <ariadne@dereferenced.org> Closes: #364
rentianyue-jk 8c479a83 2024-08-08T10:34:38 meson: add support for _DEFAULT_SOURCE
Ariadne Conill 4697d636 2024-10-07T17:06:52 cli: main: allow use of multiple package names in solution-based queries Query types like --print-requires, --print-requires-private and --print-provides can be used in practice to query information about a calculated solution rather than a single package. Allow this to be done where it makes sense to allow it, while continuing to restrict package-specific queries (like --variable= and --variables) to single packages. Fixes: 541de8bd ("main: handle query selectors that are only usable for single packages correctly") Signed-off-by: Ariadne Conill <ariadne@dereferenced.org> Closes: #366
Ariadne Conill a88c0d96 2024-08-07T00:10:13 pkgconf 2.3.0.
Ariadne Conill 0dde98fa 2024-08-06T23:44:43 meson: define __EXTENSIONS__ for Solaris
Ariadne Conill ba3c2bd4 2024-08-06T23:41:48 tests: add regression test for PKG_CONFIG_RELOCATE_PATHS=1
Ariadne Conill 72082a4d 2024-08-06T23:39:46 cli: add PKG_CONFIG_RELOCATE_PATHS environmental variable This is the inverse of PKG_CONFIG_DONT_RELOCATE_PATHS=1. Closes github issue #253.
Ariadne Conill 874d559e 2024-08-06T23:34:41 tests: add regression test for github issue #286
Ariadne Conill d2d01a10 2024-08-06T23:31:30 tests: add regression test fixture for github issue #286
Ariadne Conill 9aaff514 2024-08-06T15:12:27 bomtool: only use query dependencies for deriving the SBOM document name
Ariadne Conill eb7c2385 2024-08-06T10:43:52 tests: add test for --variable with --env
Ariadne Conill 0ca4e5d0 2024-08-06T10:42:18 cli: allow --env to work with --variable
Ariadne Conill 2070c00d 2024-08-06T10:41:23 cli: stop processing requests after the --env handler runs
Ariadne Conill ef99b6c6 2024-08-06T10:10:02 tests: add test for --print-variables with --env
Ariadne Conill ca2a0689 2024-08-06T09:23:10 cli: add integration for --print-variables with --env
Ariadne Conill c8422361 2024-08-05T16:45:56 tests: add test for --libs with --env
Ariadne Conill d8cd27e2 2024-08-05T16:43:54 tests: add test for --exists-cflags with --env
Ariadne Conill 22866eca 2024-08-05T16:42:05 cli: document --env in usage text
Ariadne Conill b24f3dfd 2024-08-05T16:39:51 cli: implement --exists-cflags support for --env
Ariadne Conill d5cd2a4f 2024-08-05T16:31:37 tests: add basic --exists-cflags test
Ariadne Conill f635f632 2024-08-05T16:29:52 cli: add module definitions before filter check
Ariadne Conill d76aa357 2024-08-05T14:29:53 cli: implement --exists-cflags feature This feature adds autoconf-style -DHAVE_FOO definitions to the --cflags output when it is requested. This has been requested a few times over the years as it allows for simplifying build system logic in scenarios where a standalone Makefile or similar build process is used without a configuration step.
Ariadne Conill 174db1a1 2024-08-05T14:27:13 fragment: add pkgconf_fragment_insert()
Ariadne Conill a6179c77 2024-08-05T13:42:49 queue: add PKGCONF_PKG_DEPF_QUERY to color solution nodes part of the original query
Ariadne Conill a276c0b4 2024-08-05T13:22:05 main: add --exists-cflags command-line option
Ariadne Conill 93ae120d 2024-08-05T13:08:36 build (automake): add -I m4 to ACLOCAL_AMFLAGS libtoolize was warning about this flag being missing.
Kai Pastor 64ff8b03 2024-07-02T20:14:05 Test version expressions 'mod >=n'
Kai Pastor 8b7e2c4e 2024-07-03T04:58:06 Process character after operator
Taylor R Campbell 633433b2 2024-05-16T21:28:37 Fix uncasted use of isspace() isspace() is intended to be used with an unsigned 8-bit input. Using isspace() with any other type of input is technically undefined behavior.
Petr Písař 2d26db3a 2024-04-08T11:50:46 doc: Requires.private is used for header inclusion Document that "pkgconf --cflags" inherits paths for including headers from dependencies listed in Requires.private. https://github.com/pkgconf/pkgconf/issues/300 https://github.com/pkgconf/pkgconf/issues/352
Pierce a8a492e2 2024-04-11T16:53:33 Fix typo in README.md
Ismael Luceno c583d49a 2021-08-26T20:03:44 pkg.m4: Abort by default if no pkgconf Provide a second optional argument to PKG_PROG_PKG_CONFIG with an action to take if no pkgconf is found, and default to aborting. Too many configure scripts in the wild don't handle an empty PKG_CONFIG, resulting in weird error messages through the run, which often confuse users. Authors wishing to fallback to other methods can either return to the old behavior by specifying [:] as an action, or use [PKG_CONFIG=false] and call pkg-config macros normally, handling the fallback as any other failure. Users can override PKG_CONFIG in the command line so this should imply no regression. Closes: https://github.com/pkgconf/pkgconf/issues/350 Ref: https://gitlab.freedesktop.org/pkg-config/pkg-config/-/issues/69 Signed-off-by: Ismael Luceno <ismael@iodev.co.uk>
Ariadne Conill 06120a87 2024-03-27T11:34:36 pkgconf 2.2.0
Ariadne Conill 7a8532f8 2024-03-27T18:39:00 queue: remove no longer used root package reference when walking dependency graphs
Ariadne Conill a3d7ecb3 2024-03-27T11:31:48 Use libpkgconf.so.5 due to ABI changes
Kai Pastor e2a8080c 2024-02-23T15:18:08 Reuse static solution for general solution
Kai Pastor 883b57df 2024-02-23T15:18:08 Cache packages from explicit file requests
Kai Pastor 194dde09 2024-02-23T15:18:08 Update expected test results
Kai Pastor 78d53ea0 2024-02-23T15:18:08 Revise serials, traversal, flattening Remove the 'traverse_serial' fields which were added in 2.1.1. Use the 'serial' field to track the current traversal. Stop using 'identifier' to sort packages in the flattened solution. Directly construct the flattened solution by a specific walk which also preserves the relative order in Requires and Requires.private. The topological sort is a single list, so don't fill requires_private. Purely private dependencies are marked in dependency flags. The ancestor flag is a pkg property, not a client property.
Kai Pastor 4090ba3e 2024-02-23T15:18:08 Clarify tracing messages
Kai Pastor 5eb79f66 2024-02-08T21:37:35 Add tests for lib order
Kai Pastor e7c9bdb3 2024-03-22T07:18:41 Don't print 'required by <VIRTUAL-PACKAGE>'
Kai Pastor 4e01010d 2024-03-16T15:19:57 Mark user input in error message
Kai Pastor 6219af9a 2024-03-21T23:07:11 Color private-reachable nodes gray
Kai Pastor eaf1a2d8 2024-03-21T22:44:32 Resolve user request for digraph
Kai Pastor d6753888 2024-03-18T08:37:17 Update test expected results
Kai Pastor f95e8d44 2024-03-18T08:21:17 Print digraph for user request perspective
Kai Pastor db63c8ee 2024-03-18T07:56:37 Show edges for flattened order
Kai Pastor b6e04e2d 2023-12-11T06:58:17 pkgconf 2.1.1
Ariadne Conill 2edf954f 2024-02-04T03:25:54 Update NEWS for pkgconf 2.1.1
Ariadne Conill d8924ace 2024-02-04T03:16:14 Update gitignore to catch all of the autoconf-generated files
Ariadne Conill 80b5011e 2024-02-04T03:04:52 Use traverse_serial to short circuit graph evaluation for already visited nodes. In our previous attempt to optimize this problem, we did not track the type of the visit to the node, e.g. whether it came from evaluating Requires or Requires.private, which resulted in some solutions being correctly incalculated due to greedy optimization of the dependency graph. We reintroduce this optimization by adding a second traversal serial as well as re-introducing the PROPF_VISITED node property as well as a new PROPF_VISITED_PRIVATE node property flag. This allows a node to be revisted at maximum two times per traversal level. Co-authored-by: Yi Chou <yich@google.com>
Kai Pastor 4a3adf34 2024-01-17T18:28:38 Test digraph completeness for private-libs-duplication Complements 45073b7.
Kai Pastor 5825e2c6 2023-12-01T22:12:20 Fix crash on two-word expressions
Kai Pastor b2f8386c 2023-12-01T21:50:46 Fix --modversion output
Kai Pastor 125af82d 2023-12-01T21:20:39 Test --modversion with constraint
Sam James 08f4a9da 2023-11-25T06:13:16 NEWS: fix typo Signed-off-by: Sam James <sam@gentoo.org>
Stefan Weil a4ecd42b 2023-11-24T19:44:04 Fix it's -> its Signed-off-by: Stefan Weil <sw@weilnetz.de>
Ariadne Conill 61d39ad8 2023-11-22T18:46:19 pkgconf 2.1.0.
Ariadne Conill 5fb09af8 2023-11-22T18:43:04 queue: ensure the initial solution is cleaned up when it is no longer needed
Ariadne Conill d0038689 2023-11-22T18:30:21 build: add metapackage-3.pc to testsuite files
Ariadne Conill 31512b21 2023-11-22T18:24:29 add NEWS for pkgconf 2.1.0.
Ariadne Conill 5f6c5320 2023-10-09T08:05:18 cli: add simple --solution applet for dumping the solver solution
Ariadne Conill f3540de3 2023-10-09T07:27:00 queue: clarify the relationship between a flattened dep and its parent Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>