Log

Author Commit Date CI Message
Ariadne Conill de51b03c 2023-08-04T08:45:16 pkgconf 2.0.0.
Ariadne Conill f3059010 2023-08-04T08:44:57 tests: regress: remove obsolete modversion test
Ariadne Conill a97b75ab 2023-08-04T08:38:48 main: explicitly error with --modversion and more than 1 package being queried
Ariadne Conill 384ade5f 2023-08-04T08:24:32 path: prepend paths rather than append paths when processing --with-path arguments
Ariadne Conill a4eb097b 2023-08-04T08:23:00 queue: process packages in the resolution queue in the correct order
Ariadne Conill 5d0e2f50 2023-08-04T08:19:42 Track packages using a lifetime unique identifier Use that identifier to cancel graph edges rather than the number of hits, which biases the earliest edge rather than the latest.
Ariadne Conill 437c2a32 2023-07-02T11:34:50 update release tarball location because dynadot is a shitty registrar
Ariadne Conill 094dc384 2023-05-02T12:10:54 pkgconf 1.9.5. Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
Ariadne Conill 35b1a623 2023-05-02T12:09:55 update libpkgconf version to 10905 Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
Ariadne Conill 83f412a1 2023-05-02T12:09:19 update NEWS for 1.9.5. Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
Ariadne Conill 7bfc2289 2023-05-02T11:58:56 tests: add regression test for maximum package count off-by-one Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
Ariadne Conill 1e179963 2023-05-02T11:58:39 Enforce maximum package count correctly for --modversion Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
Harmen Stoppels f7bebba6 2023-04-24T15:50:00 fix meson.build Co-authored-by: Ariadne Conill <ariadne@dereferenced.org>
Harmen Stoppels 434cb293 2023-04-24T15:49:33 use includes
Harmen Stoppels 40638f24 2023-04-24T15:18:59 use AC_CHECK_DECLS to avoid implicit function definition AC_CHECK_FUNCS is not safe, since implicit function definitions is just a warning. On 64-bit glibc systems where reallocarray is not defined or hidden behind macros that are not set, it gets implicitly defined to return an integer, which is a big problem given that it should return a pointer, and leads to immediate segfaults.
h30032433 b08733f4 2023-03-07T10:00:08 Fix the issue where tests/meson.build was deleted.
huyubiao 6d1f160e 2023-03-06T20:05:22 argvsplit: fix some quoting rules
Taylor R Campbell 212c8586 2023-03-17T19:32:58 Avoid undefined behaviour with the ctype(3) functions. fix https://github.com/pkgconf/pkgconf/issues/291 As defined in the C standard: In all cases the argument is an int, the value of which shall be representable as an unsigned char or shall equal the value of the macro EOF. If the argument has any other value, the behavior is undefined. This is because they're designed to work with the int values returned by getc or fgetc; they need extra work to handle a char value. If EOF is -1 (as it almost always is), with 8-bit bytes, the allowed inputs to the ctype(3) functions are: {-1, 0, 1, 2, 3, ..., 255}. However, on platforms where char is signed, such as x86 with the usual ABI, code like char *ptr = ...; ... isspace(*ptr) ... may pass in values in the range: {-128, -127, -126, ..., -2, -1, 0, 1, ..., 127}. This has two problems: 1. Inputs in the set {-128, -127, -126, ..., -2} are forbidden. 2. The non-EOF byte 0xff is conflated with the value EOF = -1, so even though the input is not forbidden, it may give the wrong answer. Casting char to unsigned int first before passing the result to ctype(3) doesn't help: inputs like -128 are unchanged by this cast, because (on a two's-complement machine with 32-bit int and unsigned int), converting the signed char with integer value -128 to unsigned int gives integer value 2^32 - 128 = 0xffffff80, which is out of range, and which is converted in int back to -128, which is also out of range. It is necessary to cast char inputs to unsigned char first; you can then cast to unsigned int if you like but there's no need because the functions will always convert the argument to int by definition. So the above fragment needs to be: char *ptr = ...; ... isspace((unsigned char)*ptr) ... This patch changes unsigned int casts to unsigned char casts, and adds unsigned char casts where they are missing.
Andrej Shadura 78f3abc9 2023-01-22T11:51:04 doc: Regenerate the documentation for libpkgconf Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk>
Andrej Shadura 9ab5ea2e 2023-01-22T11:49:54 doc: personality: Add a documentation header Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk>
Andrej Shadura cfda825f 2023-01-22T11:48:57 doc: extract: Use "==" instead of "is" with literals This fixes: SyntaxWarning: "is" with a literal. Did you mean "=="? Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk>
Ariadne Conill 873e51aa 2023-01-22T04:56:44 pkgconf 1.9.4.
Ariadne Conill f7305434 2023-01-22T04:56:06 libpkgconf: bump API version to 10904
Ariadne Conill 93edd215 2023-01-22T04:52:25 update NEWS for 1.9.4
Ariadne Conill 49ab0b2a 2023-01-21T21:43:23 tests: fixup!
Ariadne Conill 98b33b48 2023-01-21T21:43:08 cli: use flattened solution for almost all user-facing queries
Ariadne Conill d9e507cc 2023-01-21T21:31:38 pkg: do not do serial checks for flattened solutions, as they are already flattened
Ariadne Conill 90b65c86 2023-01-21T21:31:16 main: use flattened solution for cflags/libs only
Ariadne Conill 1ce000f3 2023-01-21T20:59:22 Revert "pkg.m4: PKG_CHECK_MODULES provides modversion" This reverts commit 8d9d3de6eb8f0ffdbb859fce79cff89038e513c4.
Ariadne Conill 99bc93fb 2023-01-21T20:45:29 use SIZE_FMT_SPECIFIER everywhere
Ariadne Conill e2a12fd4 2023-01-21T20:39:53 main: reset solver when solving for library groups
Ariadne Conill 8f12d36b 2023-01-21T20:22:03 tests: fixup trailing whitespace in expected results
Ariadne Conill b106de0c 2023-01-21T20:21:26 cli: add whitespace between cflags and libs fragments
Ariadne Conill 648a2249 2023-01-21T20:17:33 fragment: render: only include trailing space if there is another fragment
Ariadne Conill dd741e72 2023-01-21T20:12:02 README: fix tests option to reflect meson changes
Timo Röhling 506ebab7 2022-09-30T15:33:47 Ignore whitespace indentation Fixes #265
Ariadne Conill be0d8119 2023-01-21T19:51:24 argvsplit: fix some quoting rules to match POSIX
Ariadne Conill 6a5b5574 2023-01-21T19:25:46 tests: fix test regressions caused by tilde changes
Doug Freed 131619ae 2022-10-12T21:49:22 doc: update libpkgconf-pkg docs to match
Doug Freed 08db74c4 2022-10-12T21:43:52 pkg: make pkgconf_compare_version consistent The code taken from rpmvercmp in pkg-config returns -1 if a is less than b, 0 if a is equal to b, and 1 if a is greater than b. This matches the expectations of the comparison operators that use this function. However, the tilde handling, the NULL handling, and the docstring all do the opposite. This fixes the tilde handling, the NULL handling, and the docstring to match the behavior of the rpmvercmp code and the expectations of the comparison operators.
Doug Freed eb5c6b49 2022-10-12T22:03:42 Fix Mingw GH CI broken by 179a056
Ziemowit Łąski 1c3f2461 2022-11-22T12:29:09 pkgconf: Handle spaces correctly when expanding variables Given the following .pc fragment: includedir=/mingw64/include Cflags: -I${includedir} -I${includedir}/taglib Should includedir be assigned the value 'C:/Program\ Files/Git/mingw64/include', the expansion of ${includedir} will be chopped off after the first space: Cflags: -IC:/Program\ With this patch, the expansion is corrected: Cflags: -IC:/Program\ Files/Git/mingw64/include -IC:/Program\ Files/Git/mingw64/include/taglib Create spaces-in-paths.pc
wi24rd 27287f32 2022-12-30T17:52:10 Update sum value of types of property.
Eli Schwartz 8f233383 2022-08-30T12:43:41 meson: remove useless command that isn't needed The tests/*.sh are executable in the source tree, and don't need to be chmodded after being copied to the build tree.
Ariadne Conill 2f51733e 2023-01-20T22:11:00 tests: add regression test for billion-laughs
Ariadne Conill 628b2b2b 2023-01-20T22:07:03 tuple: test for, and stop string processing, on truncation otherwise a buffer overflow occurs. this has been a bug in pkgconf since the beginning, it seems. instead of disclosing the bug correctly, a "hotshot" developer decided to blog about it instead. sigh. https://nullprogram.com/blog/2023/01/18/
Ariadne Conill 3e481581 2023-01-20T22:01:38 add billion-laughs test fixture
Ariadne Conill 0226cdda 2022-08-20T13:27:45 Merge pull request 'meson: use a feature option for tests instead of boolean' (#244) from dcbaker/pkgconf:tests-feature into master Reviewed-on: https://gitea.treehouse.systems/ariadne/pkgconf/pulls/244
Dylan Baker fa803c7e 2022-08-17T11:05:55 meson: use a feature option for tests instead of boolean This allows tests to be autodetected gracefully, which is particularly convenient for kyua and atf_sh which are fairly painful to build and install by hand. Those who want to ensure tests are enabled or disabled may pass `-Dtests=enabled` or `-Dtests=disabled` respectively. This does require a modest bump in the required meson version to 0.49, which was released at the end of 2018, so roughly 4 years ago.
Ariadne Conill bddf1641 2022-08-16T20:41:10 bomtool: fix ASan issues
Ariadne Conill 8754bdfe 2022-08-16T19:50:26 pkgconf 1.9.3.
Ariadne Conill 6a66b312 2022-08-16T19:49:42 libpkgconf: increase API level to 10903
Ariadne Conill 4c38d3f6 2022-08-16T19:49:02 update NEWS for pkgconf 1.9.3
Ariadne Conill b7593aea 2022-08-16T19:48:44 build: automake: use top_srcdir as needed
Ariadne Conill dbd78db6 2022-08-16T19:42:13 tests: add regression test for github #259
Ariadne Conill 80bc5ac3 2022-08-16T19:38:40 tuple: if a global tuple is explicitly defined with --define-variable, prefer it fixes github #259
Ariadne Conill 5044491f 2022-08-16T19:27:35 queue: add function to free a compiled solution
Ariadne Conill c6d14e6f 2022-08-16T18:53:29 cli: renderer-msvc: remove pointless buf_remaining store
Ariadne Conill ced9bee6 2022-08-16T18:51:11 pkg: remove dead store in pkgconf_compare_version
Ariadne Conill 2c895411 2022-08-16T18:50:35 bomtool: return EXIT_FAILURE if solver fails to solve
Ariadne Conill 5500a151 2022-08-16T18:46:43 fragment: avoid trying to merge fragments where data == NULL
Ariadne Conill 74faf8d0 2022-08-16T18:38:46 queue: do not enqueue unsolved nodes as part of a solution
Ariadne Conill c918b6e2 2022-08-13T06:44:40 bomtool: enable PKGCONF_PKG_PKGF_SEARCH_PRIVATE to collect dev dependencies
Ariadne Conill 12f3a309 2022-08-13T06:44:19 bomtool: write dependency relationships in both directions
Ariadne Conill 01c1d9f4 2022-08-12T13:07:58 bomtool: remove empty creation date field
Ariadne Conill 9e8052b6 2022-08-12T12:57:53 bomtool: add enough to generate a basic SBOM
Ariadne Conill 696124b6 2022-08-12T12:36:21 pkg: add support for parsing the URL from pc files
Ariadne Conill 79327b89 2022-08-12T12:07:56 add bomtool skeleton
Ariadne Conill f3021a82 2022-08-12T11:59:11 libpkgconf.pc: add license
Ariadne Conill 194ad3e6 2022-08-11T16:01:30 man: pc.5: document copyright/maintainer fields
Ariadne Conill aa99ddf7 2022-08-11T15:52:33 pkg: add Copyright and Maintainer fields These are helpful pieces of information for BOM documents generated by pkgconf.
Ariadne Conill 68b5cab7 2022-08-11T15:06:08 cli: remove redundant SEARCH_PRIVATE block It turns out there was already a check for PKG_CFLAGS being requested, but the check was busted because PKG_CFLAGS is a combined-or of all of the various --cflags flags. Check that PKG_CFLAGS bits are set at all on want_flags instead.
Ariadne Conill 78f00da1 2022-08-11T13:49:44 Merge pull request 'cli: use Requires.private when cflags are requested' (#243) from psykose/pkgconf:cflags-i into master Reviewed-on: https://gitea.treehouse.systems/ariadne/pkgconf/pulls/243
psykose 74600558 2022-08-11T13:47:32 cli: use Requires.private when cflags are requested
Ariadne Conill 28b5d57b 2022-08-08T10:25:24 pkg: free SPDX license tags when a package is destroyed
Ariadne Conill af9b26c1 2022-08-08T10:03:15 pkgconf 1.9.2.
Ariadne Conill c0d2d653 2022-08-08T10:01:57 NEWS for pkgconf 1.9.2.
Ariadne Conill 69a3d458 2022-08-08T09:59:50 libpkgconf: revise API revision to 10902
Ariadne Conill 7e9aa7e1 2022-08-08T09:56:28 pkg: do not break cycles across dependency lists
Ariadne Conill 4e449bd4 2022-08-08T09:42:01 cli: do not search requires.private for --libs unless --static
Ariadne Conill 69f630aa 2022-08-08T09:34:45 pkg: only advance serial if we are actually traversing from a root
Ariadne Conill 760d1eea 2022-08-08T09:27:39 cli: use pkgconf_queue_solve instead of pkgconf_queue_apply
Ariadne Conill 87645787 2022-08-08T09:26:22 tests: ignore stdout on regress:missing test
Ariadne Conill 5b10a85a 2022-08-08T09:08:27 queue: add pkgconf_queue_solve API
Ariadne Conill 884a8858 2022-08-08T08:56:53 tests: add testcase for requires.private debounce
Ariadne Conill 4e8f376c 2022-08-08T05:26:00 tests: add fixtures for github #258
Ariadne Conill 79d25f97 2022-08-08T00:58:39 queue: ensure private deps get flattened when --static is requested
Ariadne Conill 03ba00d3 2022-08-08T00:51:32 Merge pull request 'bsdstubs: include errno.h' (#242) from dcbaker/pkgconf:bsdstubs-errno into master Reviewed-on: https://gitea.treehouse.systems/ariadne/pkgconf/pulls/242
Ariadne Conill 1a66d963 2022-08-08T00:44:23 pkgconf 1.9.1.
Ariadne Conill 8271ea19 2022-08-08T00:43:20 NEWS: update for pkgconf 1.9.1.
Ariadne Conill b29f9d87 2022-08-08T00:40:52 cli: do not flatten or traverse the graph when asking for module-specific values
Ariadne Conill 94b3f118 2022-08-08T00:37:07 tests: add regression test to catch --modversion regression introduced by new solver
Dylan Baker 7976daab 2022-08-06T22:30:25 bsdstubs: include errno.h Needed for ENOMEM, and fixes the build on MacOS.
Ariadne Conill d8d669f6 2022-08-07T04:47:04 pkgconf 1.9.0.
Ariadne Conill 23556ff8 2022-08-07T04:46:35 Bump libpkgconf SOVERSION for 1.9.0 changes.
Ariadne Conill da9b2cfb 2022-08-07T04:45:33 NEWS: note the SPDX license branch has been merged
Ariadne Conill b2579a66 2022-08-07T04:42:55 man: pc(5): document the License field
Ariadne Conill 666b5202 2022-08-07T04:40:31 tests: add tests for SPDX license assertions
Ariadne Conill d5f9bdae 2022-08-07T04:36:45 cli: add support for dumping SPDX expressions from modules
Ariadne Conill 0e05308f 2022-08-07T04:35:29 pkg: add SPDX license assertion to pkgconf builtin