1910 Commits

Author SHA1 Message Date
Ariadne Conill
0c2743f6e3 libpkgconf: fragment: constify quote_spans
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-20 13:24:21 -08:00
Ariadne Conill
65237e9d91 libpkgconf: fragment: remove unnecessary ternary
We always want to escape spaces because all strings are fully quoted for safety.

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-20 13:23:51 -08:00
Ariadne Conill
a950adc6ef libpkgconf: fragment: rework fragment_quote to use pkgconf_buffer_escape
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-20 13:13:48 -08:00
Ariadne Conill
be8459e5fe libpkgconf: buffer: add pkgconf_buffer_escape
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-20 13:02:26 -08:00
Ariadne Conill
130c149072 libpkgconf: fragment: align escaped character set with original pkg-config
Ref: https://github.com/pkgconf/pkgconf/issues/406
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-20 12:39:08 -08:00
Antonin Décimo
2a7c05b9c7 pkg.m4: add missing quotes in PKG_WITH_MODULES 2026-01-20 12:10:35 -08:00
Ariadne Conill
ba33d22032 tests: port version option tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 21:34:33 -08:00
Ariadne Conill
e574c85325 tests: harness: add AtLeastVersion, ExactVersion and MaxVersion options
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 21:29:06 -08:00
Ariadne Conill
4a49b50e3b cli: constify required module version params
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 21:28:47 -08:00
Ariadne Conill
cc432b332c tests: move conflicts tests out of kyua, add more
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 21:18:30 -08:00
Ariadne Conill
9bac6b3a1d tests: harness: fix sorting of flag names
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 21:15:07 -08:00
Ariadne Conill
9cd3629f85 libpkgconf: queue: check final solutions for conflicts before returning OK
Otherwise, surfaced conflicts will be detected too late.
Closes: https://github.com/pkgconf/pkgconf/issues/436

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 21:04:22 -08:00
Ariadne Conill
18e32f2fb6 libpkgconf: pkg: make pkgconf_pkg_walk_conflicts_list public
It is needed by the solver to check the solution for conflicts.

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 21:03:07 -08:00
Ariadne Conill
07dfbfffee libpkgconf: pkg: track conflict rule origins
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 20:50:18 -08:00
Ariadne Conill
5e26791ba5 libpkgconf: queue: surface conflicts as part of the solution
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 20:44:48 -08:00
Ariadne Conill
b1dd65e45d cli: core: rewrite query nodes instead of separately checking for --required-module-version
This allows us to let the solver deal with it, removing a duplicate
code path.

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 19:55:02 -08:00
Ariadne Conill
192bc8c923 tests: move relevant query building regress tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 19:47:09 -08:00
Ariadne Conill
da019f2059 tests: move relevant libs query regress tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 19:41:34 -08:00
Ariadne Conill
52c2b0c2cb tests: move cflags ordering tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 19:28:52 -08:00
Ariadne Conill
c8018139cc tests: move malformed parsing regression tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 19:17:24 -08:00
Ariadne Conill
b08efccad8 tests: port modversion prefix test out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 19:08:41 -08:00
Ariadne Conill
b785d620fe tests: harness: allow verbosity level to be specified
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 19:03:26 -08:00
Ariadne Conill
1984ff2da6 tests: move idirafter and isystem sysroot tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 17:20:09 -08:00
Ariadne Conill
5b2c0a1110 tests: port define-prefix regress tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 16:34:59 -08:00
Ariadne Conill
9e802e5d76 tests: harness: clean up variable defines in destructor
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 16:16:46 -08:00
Ariadne Conill
d1bfa530be tests: migrate define-variable tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 16:14:46 -08:00
Ariadne Conill
f702beddf9 tests: harness: add DefineVariable keyword
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-18 16:07:34 -08:00
Elizabeth Kiara Regina Ashford
f887c83082 buffer: Style fixes
Signed-off-by: Elizabeth Kiara Regina Ashford <elizabeth.jennifer.myers@gmail.com>
2026-01-17 17:06:02 -08:00
Elizabeth Kiara Regina Ashford
cceebf098f buffer: fix undefined behaviour in variable argument function
When arguments are passed through ..., the C standard mandates that char
is promoted to int (other types are promoted as well, but that's outside
the scope of this commit). This happens with any argument passed through
va_start as well. Therefore, the last argument before variable arguments
in C must be a promoted type. Otherwise, the behaviour is undefined
(probably fine on most ABIs, but stricter ABIs might break).

Signed-off-by: Elizabeth Kiara Regina Ashford <elizabeth.jennifer.myers@gmail.com>
2026-01-17 17:06:02 -08:00
Elizabeth Kiara Regina Ashford
97e2d0433e buffer: Add pkgconf_buffer_copy and pkgconf_buffer_contains_byte
Signed-off-by: Elizabeth Kiara Regina Ashford <elizabeth.jennifer.myers@gmail.com>
2026-01-17 17:06:02 -08:00
Ariadne Conill
18dbb91e7a configure: warn loudly when --with-system-libdir and --with-system-includedir are not set
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-14 11:05:09 -08:00
Ariadne Conill
67c63bbba4 tests: skip shell-quoted-output on windows
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-03 15:39:06 -08:00
Ariadne Conill
06b04a2968 tests: skip backslash escaping tests on windows
Windows has slightly different behavior here.

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-03 15:33:23 -08:00
Ariadne Conill
bbdf8ccee1 tests: move additional parser tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-03 15:19:59 -08:00
Ariadne Conill
55d5937800 tests: move several parser tests away from kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-03 14:24:50 -08:00
Ariadne Conill
450bccfef9 tests: add regression test for undefined pc_sysrootdir
Ref: https://github.com/pkgconf/pkgconf/issues/437
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-03 00:19:37 -08:00
Ariadne Conill
aaa89a4489 libpkgconf: client: ${pc_sysrootdir} should default to empty string, not /
If PKG_CONFIG_SYSROOT_DIR is not set, then pc_sysrootdir would be defined as /
which causes problems on Windows.

Fixes: https://github.com/pkgconf/pkgconf/issues/437
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-03 00:15:10 -08:00
Ariadne Conill
3bc327655b tests: move some flag ordering tests over from kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-02 23:47:55 -08:00
Ariadne Conill
964d595977 tests: port sysroot tests away from kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2026-01-02 23:30:35 -08:00
Ariadne Conill
93e085d144 tests: port some tuple-related tests from the kyua regress suite
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 16:26:15 -08:00
Ariadne Conill
ebba516806 tests: port requires.internal solver tests and query reordering tests from kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 15:17:30 -08:00
Ariadne Conill
08bc7159d3 tests: move keep-system-libs tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 14:09:41 -08:00
Ariadne Conill
c7b788699e tests: harness: add empty match strategy
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 14:02:12 -08:00
Ariadne Conill
34cf8ae094 tests: port remaining solver regression tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 13:13:32 -08:00
Ariadne Conill
20145bcfc1 tests: move more regression tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 13:07:01 -08:00
Ariadne Conill
222c5b5153 tests: port some ordering tests out of the kyua regress suite
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 11:22:15 -08:00
Ariadne Conill
0a44b9fa60 meson: delete dropped kyua test suites
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 11:03:07 -08:00
Ariadne Conill
2ab26a0b23 tests: delete kyua framework ordering tests
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 11:02:14 -08:00
Ariadne Conill
0c7acae717 tests: port framework ordering tests out of kyua
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 11:01:09 -08:00
Ariadne Conill
45648f2562 tests: delete kyua provides suite
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2025-12-30 10:56:00 -08:00