|
a6fb59a0
|
2023-09-02T21:15:46
|
|
pkgconf 2.0.3.
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
3f07015d
|
2023-09-03T04:18:26
|
|
add new test files to build system
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
ee702658
|
2023-09-02T21:05:03
|
|
use PRIu64 format specifiers for some uint64 identifiers in trace logging
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
66994f15
|
2023-08-19T07:57:48
|
|
cli: fix --modversion not showing version in various cases
There are numerous edge cases where version is wrong or missing when
matching the dependency queue to resolved packages. This adds the
dependency name as it appears in the dependency queue to each package as
it is resolved, allowing for a simple and correct comparison when
printing.
Signed-off-by: Colin Gillespie <colin@cgillespie.xyz>
|
|
9cddd22b
|
2023-08-19T11:16:30
|
|
tests: add regression tests for --modversion
Signed-off-by: Colin Gillespie <colin@cgillespie.xyz>
|
|
eaa4bb44
|
2023-08-17T11:56:08
|
|
pkgconf 2.0.2.
|
|
a265f8a4
|
2023-08-17T11:53:07
|
|
libpkgconf: pkg: fix long-standing bug where -uninstalled pkg-config files would have the wrong identifier
|
|
f0f28fa6
|
2023-08-17T11:50:00
|
|
tests: add regression test for --modversion with uninstalled pkg-config files
|
|
6a84d704
|
2023-08-11T14:23:08
|
|
pkgconf 2.0.1.
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
f49029c6
|
2023-08-11T14:19:26
|
|
cli: ensure --modversion is output is printed in dependency queue order
Previously, --modversion operated on the calculated solution and printed versions in
order of the calculated dependency graph. Change this to use the dependency queue
instead, looking up nodes in the dependency graph as needed, to ensure that the
--modversion output behaves as intended.
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
4fb0988a
|
2023-08-11T14:16:41
|
|
libpkgconf: queue: make the pkgconf_queue_t type public
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
5ef2ab8c
|
2023-08-11T14:09:01
|
|
cli: add --verbose parameter
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
95086643
|
2023-08-11T13:48:02
|
|
cli: remove package count restriction from --modversion
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
fe69ccc6
|
2023-08-11T13:41:20
|
|
Revert "main: explicitly error with --modversion and more than 1 package being queried"
This reverts commit a97b75ab2c1d031982c35a4886102413e4ec8eee.
|
|
de51b03c
|
2023-08-04T08:45:16
|
|
pkgconf 2.0.0.
|
|
f3059010
|
2023-08-04T08:44:57
|
|
tests: regress: remove obsolete modversion test
|
|
a97b75ab
|
2023-08-04T08:38:48
|
|
main: explicitly error with --modversion and more than 1 package being queried
|
|
384ade5f
|
2023-08-04T08:24:32
|
|
path: prepend paths rather than append paths when processing --with-path arguments
|
|
a4eb097b
|
2023-08-04T08:23:00
|
|
queue: process packages in the resolution queue in the correct order
|
|
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.
|
|
437c2a32
|
2023-07-02T11:34:50
|
|
update release tarball location because dynadot is a shitty registrar
|
|
094dc384
|
2023-05-02T12:10:54
|
|
pkgconf 1.9.5.
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
35b1a623
|
2023-05-02T12:09:55
|
|
update libpkgconf version to 10905
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
83f412a1
|
2023-05-02T12:09:19
|
|
update NEWS for 1.9.5.
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
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>
|
|
1e179963
|
2023-05-02T11:58:39
|
|
Enforce maximum package count correctly for --modversion
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
f7bebba6
|
2023-04-24T15:50:00
|
|
fix meson.build
Co-authored-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
434cb293
|
2023-04-24T15:49:33
|
|
use includes
|
|
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.
|
|
b08733f4
|
2023-03-07T10:00:08
|
|
Fix the issue where tests/meson.build was deleted.
|
|
6d1f160e
|
2023-03-06T20:05:22
|
|
argvsplit: fix some quoting rules
|
|
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.
|
|
78f3abc9
|
2023-01-22T11:51:04
|
|
doc: Regenerate the documentation for libpkgconf
Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk>
|
|
9ab5ea2e
|
2023-01-22T11:49:54
|
|
doc: personality: Add a documentation header
Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk>
|
|
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>
|
|
873e51aa
|
2023-01-22T04:56:44
|
|
pkgconf 1.9.4.
|
|
f7305434
|
2023-01-22T04:56:06
|
|
libpkgconf: bump API version to 10904
|
|
93edd215
|
2023-01-22T04:52:25
|
|
update NEWS for 1.9.4
|
|
49ab0b2a
|
2023-01-21T21:43:23
|
|
tests: fixup!
|
|
98b33b48
|
2023-01-21T21:43:08
|
|
cli: use flattened solution for almost all user-facing queries
|
|
d9e507cc
|
2023-01-21T21:31:38
|
|
pkg: do not do serial checks for flattened solutions, as they are already flattened
|
|
90b65c86
|
2023-01-21T21:31:16
|
|
main: use flattened solution for cflags/libs only
|
|
1ce000f3
|
2023-01-21T20:59:22
|
|
Revert "pkg.m4: PKG_CHECK_MODULES provides modversion"
This reverts commit 8d9d3de6eb8f0ffdbb859fce79cff89038e513c4.
|
|
99bc93fb
|
2023-01-21T20:45:29
|
|
use SIZE_FMT_SPECIFIER everywhere
|
|
e2a12fd4
|
2023-01-21T20:39:53
|
|
main: reset solver when solving for library groups
|
|
8f12d36b
|
2023-01-21T20:22:03
|
|
tests: fixup trailing whitespace in expected results
|
|
b106de0c
|
2023-01-21T20:21:26
|
|
cli: add whitespace between cflags and libs fragments
|
|
648a2249
|
2023-01-21T20:17:33
|
|
fragment: render: only include trailing space if there is another fragment
|
|
dd741e72
|
2023-01-21T20:12:02
|
|
README: fix tests option to reflect meson changes
|
|
506ebab7
|
2022-09-30T15:33:47
|
|
Ignore whitespace indentation
Fixes #265
|
|
be0d8119
|
2023-01-21T19:51:24
|
|
argvsplit: fix some quoting rules to match POSIX
|
|
6a5b5574
|
2023-01-21T19:25:46
|
|
tests: fix test regressions caused by tilde changes
|
|
131619ae
|
2022-10-12T21:49:22
|
|
doc: update libpkgconf-pkg docs to match
|
|
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.
|
|
eb5c6b49
|
2022-10-12T22:03:42
|
|
Fix Mingw GH CI broken by 179a056
|
|
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
|
|
27287f32
|
2022-12-30T17:52:10
|
|
Update sum value of types of property.
|
|
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.
|
|
2f51733e
|
2023-01-20T22:11:00
|
|
tests: add regression test for billion-laughs
|
|
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/
|
|
3e481581
|
2023-01-20T22:01:38
|
|
add billion-laughs test fixture
|
|
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
|
|
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.
|
|
bddf1641
|
2022-08-16T20:41:10
|
|
bomtool: fix ASan issues
|
|
8754bdfe
|
2022-08-16T19:50:26
|
|
pkgconf 1.9.3.
|
|
6a66b312
|
2022-08-16T19:49:42
|
|
libpkgconf: increase API level to 10903
|
|
4c38d3f6
|
2022-08-16T19:49:02
|
|
update NEWS for pkgconf 1.9.3
|
|
b7593aea
|
2022-08-16T19:48:44
|
|
build: automake: use top_srcdir as needed
|
|
dbd78db6
|
2022-08-16T19:42:13
|
|
tests: add regression test for github #259
|
|
80bc5ac3
|
2022-08-16T19:38:40
|
|
tuple: if a global tuple is explicitly defined with --define-variable, prefer it
fixes github #259
|
|
5044491f
|
2022-08-16T19:27:35
|
|
queue: add function to free a compiled solution
|
|
c6d14e6f
|
2022-08-16T18:53:29
|
|
cli: renderer-msvc: remove pointless buf_remaining store
|
|
ced9bee6
|
2022-08-16T18:51:11
|
|
pkg: remove dead store in pkgconf_compare_version
|
|
2c895411
|
2022-08-16T18:50:35
|
|
bomtool: return EXIT_FAILURE if solver fails to solve
|
|
5500a151
|
2022-08-16T18:46:43
|
|
fragment: avoid trying to merge fragments where data == NULL
|
|
74faf8d0
|
2022-08-16T18:38:46
|
|
queue: do not enqueue unsolved nodes as part of a solution
|
|
c918b6e2
|
2022-08-13T06:44:40
|
|
bomtool: enable PKGCONF_PKG_PKGF_SEARCH_PRIVATE to collect dev dependencies
|
|
12f3a309
|
2022-08-13T06:44:19
|
|
bomtool: write dependency relationships in both directions
|
|
01c1d9f4
|
2022-08-12T13:07:58
|
|
bomtool: remove empty creation date field
|
|
9e8052b6
|
2022-08-12T12:57:53
|
|
bomtool: add enough to generate a basic SBOM
|
|
696124b6
|
2022-08-12T12:36:21
|
|
pkg: add support for parsing the URL from pc files
|
|
79327b89
|
2022-08-12T12:07:56
|
|
add bomtool skeleton
|
|
f3021a82
|
2022-08-12T11:59:11
|
|
libpkgconf.pc: add license
|
|
194ad3e6
|
2022-08-11T16:01:30
|
|
man: pc.5: document copyright/maintainer fields
|
|
aa99ddf7
|
2022-08-11T15:52:33
|
|
pkg: add Copyright and Maintainer fields
These are helpful pieces of information for BOM documents
generated by pkgconf.
|
|
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.
|
|
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
|
|
74600558
|
2022-08-11T13:47:32
|
|
cli: use Requires.private when cflags are requested
|
|
28b5d57b
|
2022-08-08T10:25:24
|
|
pkg: free SPDX license tags when a package is destroyed
|
|
af9b26c1
|
2022-08-08T10:03:15
|
|
pkgconf 1.9.2.
|
|
c0d2d653
|
2022-08-08T10:01:57
|
|
NEWS for pkgconf 1.9.2.
|
|
69a3d458
|
2022-08-08T09:59:50
|
|
libpkgconf: revise API revision to 10902
|
|
7e9aa7e1
|
2022-08-08T09:56:28
|
|
pkg: do not break cycles across dependency lists
|
|
4e449bd4
|
2022-08-08T09:42:01
|
|
cli: do not search requires.private for --libs unless --static
|
|
69f630aa
|
2022-08-08T09:34:45
|
|
pkg: only advance serial if we are actually traversing from a root
|
|
760d1eea
|
2022-08-08T09:27:39
|
|
cli: use pkgconf_queue_solve instead of pkgconf_queue_apply
|
|
87645787
|
2022-08-08T09:26:22
|
|
tests: ignore stdout on regress:missing test
|
|
5b10a85a
|
2022-08-08T09:08:27
|
|
queue: add pkgconf_queue_solve API
|
|
884a8858
|
2022-08-08T08:56:53
|
|
tests: add testcase for requires.private debounce
|
|
4e8f376c
|
2022-08-08T05:26:00
|
|
tests: add fixtures for github #258
|