Ariadne Conill
623b8f7851
tests: further fixups
2022-06-26 18:56:36 +00:00
Ariadne Conill
fdd7d192e0
queue: fix ISO C conformance for fallthrough label
2022-06-26 18:39:00 +00:00
Ariadne Conill
11164376f7
main: handle --personality load failure
2022-06-26 18:34:22 +00:00
Ariadne Conill
ab352222a2
tests: fix up some test changes from the solver optimizations
...
the output of pkgconf is basically functionally equivalent in both cases
2022-06-26 18:22:04 +00:00
Ariadne Conill
04a6dda79f
main: refactor apply_variable
2022-06-26 18:17:30 +00:00
Ariadne Conill
a1a415111f
queue: handle pkgconf_pkg_verify_dependency failure while flattening
2022-06-26 18:09:22 +00:00
Ariadne Conill
9bc6d80e61
queue: push new unresolved dependencies to the front of the queue, rather than the tail
2022-06-26 18:06:04 +00:00
Ariadne Conill
fe4db3aad9
queue: skip dependency collection for root node
2022-06-26 18:04:42 +00:00
Ariadne Conill
5a82a259ac
queue: use maxdepth after flattening
2022-06-26 15:17:08 +00:00
Ariadne Conill
a416dc1fd6
queue: advance client serial when walking requires.private for flattening
2022-06-26 15:16:36 +00:00
Ariadne Conill
197fcadd4c
queue: add flattening code
2022-06-26 15:02:37 +00:00
Ariadne Conill
5817e8848f
pkg: track the number of hits a package has gotten while solving for dependencies
2022-06-26 07:22:56 +00:00
Ariadne Conill
6ae17bd0ef
pkg: split pkgconf_pkg_traverse into a serial-modifying version
2022-06-26 06:05:40 +00:00
Ariadne Conill
ffa0805d58
cache: use pkgconf_reallocarray stub
2022-06-26 04:38:02 +00:00
Ariadne Conill
c1579d381c
bsdstubs: add pkgconf_reallocarray
2022-06-26 04:37:18 +00:00
Ariadne Conill
4c76f6bf01
meson: check for reallocarray
...
it is needed for the new cache code
2022-06-26 04:33:47 +00:00
Ariadne Conill
664f741f26
autoconf: check for reallocarray
...
it is needed for the new cache code
2022-06-26 04:33:25 +00:00
Ariadne Conill
464672404e
cache: refactor to use a continguous table and bsearch
...
cache functions are the hottest part of the pkgconf code when
profiled, by removing the linked list for lookups, we can turn
lookups into an O(k) operation
2022-06-26 04:30:35 +00:00
Dylan Baker
c0fa7879b2
libpkgconf: zero path lists after freeing
...
This is required to make the pointer safely re-usable after being freed,
otherwise the list still says that it has nodes, but they point nowhere.
This is particularly important for libpkgconf, if a caller needs to
re-enter the library after freeing a path in a static path (such as the
default personality)
2022-06-26 03:12:34 +00:00
Dylan Baker
2d201af326
libpkgconf: Add a helper to zero `pkgconf_list_t`s
2022-06-26 03:12:34 +00:00
Ariadne Conill
21ffd343e1
CI: woodpecker: use matrix builds
2022-06-26 03:11:36 +00:00
Ariadne Conill
a441455bf4
CI: add woodpecker config
2022-06-26 03:11:36 +00:00
Ariadne Conill
cf48b61a59
stdinc: include strings.h on POSIX
2022-02-21 04:42:26 -06:00
Ariadne Conill
40131312ec
meson: check for strdup, strcasecmp, strncasecmp
2022-02-21 04:41:08 -06:00
Ariadne Conill
cc4ccc1429
meson: use _BSD_SOURCE for checking for symbols
2022-02-21 04:39:49 -06:00
Ariadne Conill
ac964d13f3
Merge pull request #240 from Tachi107/readme-meson
...
docs: mention Meson instead of CMake for Win build
2022-02-21 04:27:20 -06:00
Ariadne Conill
0995e49977
Merge branch 'master' into readme-meson
2022-02-21 04:27:11 -06:00
Ariadne Conill
820af53a2d
Merge pull request #241 from Olf0/patch-1
...
Re-do MR #235 , i.e. the vanished commit fe98e1b
2022-02-21 04:25:48 -06:00
Ariadne Conill
a45dbccc01
Merge pull request #242 from data-man/dirent_latest
...
Update dirent.h to latest
2022-02-21 04:25:36 -06:00
Ariadne Conill
c6cfca6730
Merge pull request #245 from dcbaker/submit/remove-const
...
libpkgconf: remove const modifier from error_handler data pointer
2022-02-21 04:25:26 -06:00
Ariadne Conill
aaabc2cb15
Merge pull request #246 from dcbaker/submit/personality-deinit
...
personality: use an unsigned to track initializations instead of a bool.
2022-02-21 04:25:14 -06:00
Dylan Baker
c581e24a67
personality: use an unsigned to track initializations
...
Instead of a bool. The latter will result in de-initing leaving the
library unable to init again, which works out for the cli, but is
problematic for other consumers (meson++ and muon).
v2: - Add docs that the functions are not thread safe
2022-02-14 21:22:05 -08:00
Dylan Baker
f5d6bb71f8
libpkgconf: remove const modifier from error_handler data pointer
...
Currently, the data pointer is `const void *`, which means that the
handler can't modify the data without casting away the constness.
2022-02-07 09:34:09 -08:00
data-man
b132ce8317
Update dirent.h to latest
2022-01-08 10:55:28 +05:00
olf
ae3a9c5440
Re-do MR #235 , i.e. the vanished commit fe98e1b
2021-12-11 22:56:31 +01:00
Andrea Pappacoda
6109e06089
docs: mention Meson instead of CMake for Win build
...
Fixes #233
2021-12-11 14:49:19 +01:00
Dylan Baker
1044bb57ca
meson: make use of override_dependency() if possible
...
This allows simplifying the subproject override to simply
```meson
dependency('libpkgconf')
```
2021-12-01 09:17:07 -06:00
Dylan Baker
72c59b89c6
meson: Add dependency for for libpkgconf
...
This allows others using libpkgconf as a dependency to do use this as a
subproject. They can write something like:
```meson
dependency('libpkgconf', fallback : ['libpkgconf', 'dep_libpkgconf'])
```
Then install a wrap file for libpkgconf and build it as part of their
project.
2021-12-01 09:17:07 -06:00
Mattias Hansson
8d9d3de6eb
pkg.m4: PKG_CHECK_MODULES provides modversion
...
Projects using PKG_CHECK_MODULES wants to add dependency versions to
their binaries. Currently, the projects have to resolve dependency
versions themselves when using pkgconf.
With this patch PKG_CHECK_MODULES now defines a $PKG_VERSION variable
that represents `--modversion`.
2021-10-27 06:41:28 -05:00
Mattias Hansson
360a818f2f
pkg.m4: Unified indentation in PKG_CHECK_MODULES
...
Currently the indentation in PKG_CHECK_MODULES is a mix och tabs and
spaces which makes it hard to read. This patch unifies the indentation
in the function to spaces.
2021-10-27 06:41:28 -05:00
Ariadne Conill
f3049d634d
README: note that --debug output should not be considered stable
2021-10-25 21:52:52 -06:00
Ariadne Conill
bf933903aa
hackfix a couple of flaky tests
2021-10-07 01:29:29 -06:00
Ariadne Conill
2b82a4f63e
use a serial instead of PKGCONF_PKG_PROPF_SEEN
2021-10-07 00:27:32 -06:00
Ariadne Conill
7d8cc1e4ce
dependency: add pkgconf_dependency_copy()
2021-10-06 13:13:34 -06:00
Ariadne Conill
c547edd07f
deconst the client on pkgconf_dependency_add()
2021-10-06 11:52:18 -06:00
Ariadne Conill
4144d506bb
implement dependency refcounting
2021-10-06 11:48:37 -06:00
olf
d87114068f
Fix typo
...
verses -> versus
2021-10-06 12:30:49 -05:00
Ariadne Conill
8130dd159e
dependency: add pkgconf_dependency_free_one
2021-10-06 11:29:18 -06:00
Ariadne Conill
2b390ea9cf
add memory leak fix info to NEWS
2021-08-17 15:32:30 -06:00
Ariadne Conill
4b87e256d3
cache: clear package cache without using the refcounts
2021-08-17 15:29:55 -06:00