|
204ad5e4
|
2025-06-18T21:56:01
|
|
pkgconf 2.5.0.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
a0fc46a8
|
2025-06-18T14:51:31
|
|
libpkgconf: clean up PRINTFLIKE and DEPRECATED macros
On MingW, the wrong format string checker would be used. So prefer gnu_printf
where it is known to be available.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
fea9592a
|
2025-06-12T08:34:29
|
|
personality.c: _WIN32 does not want_default_static
|
|
d6be0d38
|
2025-06-04T11:53:20
|
|
libpkgconf: client: unref the preloaded list on client deinit
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
1a28204a
|
2025-06-04T11:20:39
|
|
libpkgconf: client: avoid environ keyword which is macro on Win32
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
a3af684d
|
2025-06-04T11:18:41
|
|
libpkgconf: pkg: ensure pkgconf_pkg_new_from_path only loads .pc files
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
9665d214
|
2025-06-04T11:15:52
|
|
libpkgconf: client: add pkgconf_client_preload_from_environ()
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
0a932483
|
2025-06-04T10:58:27
|
|
libpkgconf: pkg: add functionality for searching and scanning the preloaded package list
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
d4770169
|
2025-06-04T10:42:11
|
|
libpkgconf: pkg: remove freed packages from the preload list
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
01eb0cf1
|
2025-06-04T10:39:09
|
|
libpkgconf: client: add pkgconf_client_preload_path() for preloading packages
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
3be7f2ce
|
2025-06-04T10:34:23
|
|
libpkgconf: pkg: add tracking infrastructure for preloaded packages
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
aa5813ac
|
2025-05-31T00:06:57
|
|
libpkgconf: path: refactor windows registry PKG_CONFIG_PATH support
Now we add to the search list rather than falling back to the registry
after the search list fails to find a package.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
e49cbdfc
|
2025-03-20T15:32:43
|
|
stdinc: fix -Wformat warning on win64
../libpkgconf/client.c: In function 'pkgconf_trace':
../libpkgconf/client.c:381:47: warning: format '%u' expects argument of type 'unsigned int', but argument 5 has type 'size_t' {aka 'long long unsigned int'} [-Wformat=]
381 | len = snprintf(errbuf, sizeof errbuf, "%s:" SIZE_FMT_SPECIFIER " [%s]: ", filename, lineno, funcname);
| ^~~~~ ~~~~~~
| |
| size_t {aka long long unsigned int}
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
|
205bc7bf
|
2025-05-29T11:38:54
|
|
libpkgconf: client: remove PKGCONF_BUFSIZE from logging subsystem
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
fd7069a2
|
2025-05-29T11:13:39
|
|
libpkgconf: dependency: move static parsing buffer off the stack
Also remove the 64KB limit for dependency list strings.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
61610c65
|
2025-05-29T10:08:00
|
|
libpkgconf: pkg: refactor pkgconf_pkg_new_from_file into pkgconf_pkg_new_from_path
Previously, files would be closed by side effect, which is a somewhat bad API
design that trips up various static analysis tools.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
2983d311
|
2025-05-28T23:21:24
|
|
libpkgconf: path: gracefully handle memory alloc failures
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
10d37b61
|
2025-05-28T23:18:42
|
|
libpkgconf: dependency: handle memory allocation failures
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
1fd56779
|
2025-05-28T23:15:52
|
|
libpkgconf: argvsplit: use calloc for all buffers, handle memory alloc failures
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
735fd054
|
2025-05-28T23:11:34
|
|
libpkgconf: fragment: robustly catch and handle memory allocation failures
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
7fbb8bf2
|
2025-05-28T22:59:43
|
|
libpkgconf: pkg: refactor pkgconf_pkg_free into micro-operations
Then use pkg_free_lists and pkg_free_object to clean up package objects
which have not been fully initialized.
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
e4e3b45b
|
2025-05-28T22:32:06
|
|
libpkgconf: pkg: gracefully handle NULL parameter to pkgconf_pkg_unref()
This could happen when pkgconf_pkg_new_from_file() fails due to error.
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
859402ef
|
2025-05-28T22:30:34
|
|
libpkgconf: pkg: allow pkgconf_pkg_new_from_file to return NULL on malloc error
Other errors can already cause pkgconf_pkg_new_from_file() to return NULL, so
this doesn't break API.
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
e3f9e694
|
2025-05-28T22:18:39
|
|
libpkgconf: client: propagate malloc failures upwards
Otherwise a NULL dereference can happen when malloc fails in pkgconf_client_new().
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
5ecd34e4
|
2025-05-28T22:10:10
|
|
libpkgconf: personality: rework non-default personality loading
If there is an error loading the personality file (for example, the personality file
associated with the requested triplet does not exist), then resources would be leaked.
Found-by: GCC -fanalyzer
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
187f2604
|
2025-05-28T22:08:08
|
|
libpkgconf: personality: make cross-personality triplet identifier non-const
Dynamically loaded personality files use a malloced string to store the triplet,
and so we need to drop the const to allow for that string to be freed later.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
5a188784
|
2025-05-17T23:49:54
|
|
libpkgconf: add support for late-breaking unveil(2) notifications
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
7502a55d
|
2025-05-08T13:45:33
|
|
libpkgconf: bsdstubs: align pledge and unveil stubs with openbsd-portable
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
7b8865d1
|
2025-05-08T13:07:30
|
|
libpkgconf: path: add pkgconf_path_prepend_list
Previously when processing --with-path entries we were adding to the tail
of the search list. In reality, we expect --with-path entries to be treated
in an equivalent way to PKG_CONFIG_PATH.
Accordingly, add a variant of pkgconf_path_copy_list which prepends instead.
Related: https://github.com/pkgconf/pkgconf/issues/400
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
d7efcda0
|
2025-05-05T11:17:21
|
|
bsdstubs: fix build with MSVC
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
230b45c0
|
2025-05-03T22:04:09
|
|
build: add stub functions for pledge and unveil
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
1d37e711
|
2025-03-07T16:37:15
|
|
pkgconf 2.4.3.
|
|
c440e2da
|
2025-03-07T12:39:52
|
|
libpkgconf: fragment: properly group fragments together
Previously, fragment groupings could be overzealous.
Related: https://github.com/pkgconf/pkgconf/issues/385
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
5c9ee7ee
|
2025-03-07T10:48:21
|
|
pkgconf 2.4.2.
|
|
55558621
|
2025-03-07T10:05:41
|
|
libpkgconf: fragment: fix fragment length estimation
The switch from flat fragment lists to fragment trees made the fragment length
estimation more complicated. Originally, the code when migrated just probed the
length of child fragments directly, but this only works for fragment trees where
there is only one level of children.
In some cases, there may be more children at a lower depth that were not properly
accounted for in the length estimation, which led to truncated buffers being
generated.
Fixes: https://github.com/pkgconf/pkgconf/issues/383
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
4ed28a7a
|
2025-03-07T09:41:18
|
|
libpkgconf: parser: reset read buffer when bailing early to read a new line
Otherwise the old line would not be removed from the buffer.
Related: https://github.com/pkgconf/pkgconf/issues/384
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
bfc9ded5
|
2025-03-07T09:26:16
|
|
libpkgconf: fileio: stop considering an empty buffer as a read failure
This is to be expected with truncated and empty lines in .pc files anyway.
Related: https://github.com/pkgconf/pkgconf/issues/384
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
c0d188fb
|
2025-03-07T09:23:55
|
|
libpkgconf: parser: gracefully handle pkgconf_fgetline failures
With the move to dynamic buffering of pkg-config files, it is possible for
pkgconf_fgetline to leave the buffer in an unwritten state, where a buffer
will not be allocated.
We must gracefully handle this situation, so we bail early and re-enter the
loop to try reading the buffer again. If it fails again, then we finish
parsing the already read pkg-config data.
Related: https://github.com/pkgconf/pkgconf/issues/384
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
7e59a32a
|
2025-03-06T14:29:11
|
|
pkgconf 2.4.1.
|
|
8b3dd835
|
2025-03-06T14:25:23
|
|
libpkgconf: queue: always evaluate the entire dependency graph when solving
Some types of pkgconf queries may look at subsets of the entire DAG, but
we must consistently solve for the entire DAG so that each query has a
consistent view of the DAG.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
38053395
|
2025-03-05T17:03:55
|
|
pkgconf 2.4.0.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
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>
|
|
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>
|
|
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>
|
|
4f78e449
|
2025-03-05T15:36:56
|
|
libpkgconf: fragment: track terminating fragments like -Wl,--end-group
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
6ec7df4d
|
2025-03-05T15:03:52
|
|
libpkgconf: fragment: plug memory leak when child fragments are present
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
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>
|
|
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>
|
|
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>
|
|
e8dc0e20
|
2025-02-04T16:57:14
|
|
libpkgconf: parser: finalize the parsing buffer when done with it
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
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>
|
|
88258bd9
|
2025-02-04T16:31:01
|
|
libpkgconf: buffer: round up buffer allocations to 4KB granules
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
bd043cae
|
2025-02-02T00:31:54
|
|
libpkgconf: buffer: add PKGCONF_BUFFER_INITIALIZER
|
|
10017500
|
2024-12-09T19:49:50
|
|
libpkgconf: add buffer management functions
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
|
|
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>.
|
|
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
|
|
a88c0d96
|
2024-08-07T00:10:13
|
|
pkgconf 2.3.0.
|
|
0dde98fa
|
2024-08-06T23:44:43
|
|
meson: define __EXTENSIONS__ for Solaris
|
|
174db1a1
|
2024-08-05T14:27:13
|
|
fragment: add pkgconf_fragment_insert()
|
|
a6179c77
|
2024-08-05T13:42:49
|
|
queue: add PKGCONF_PKG_DEPF_QUERY to color solution nodes part of the original query
|
|
8b7e2c4e
|
2024-07-03T04:58:06
|
|
Process character after operator
|
|
06120a87
|
2024-03-27T11:34:36
|
|
pkgconf 2.2.0
|
|
7a8532f8
|
2024-03-27T18:39:00
|
|
queue: remove no longer used root package reference when walking dependency graphs
|
|
883b57df
|
2024-02-23T15:18:08
|
|
Cache packages from explicit file requests
|
|
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.
|
|
4090ba3e
|
2024-02-23T15:18:08
|
|
Clarify tracing messages
|
|
e7c9bdb3
|
2024-03-22T07:18:41
|
|
Don't print 'required by <VIRTUAL-PACKAGE>'
|
|
4e01010d
|
2024-03-16T15:19:57
|
|
Mark user input in error message
|
|
b6e04e2d
|
2023-12-11T06:58:17
|
|
pkgconf 2.1.1
|
|
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>
|
|
a4ecd42b
|
2023-11-24T19:44:04
|
|
Fix it's -> its
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
5fb09af8
|
2023-11-22T18:43:04
|
|
queue: ensure the initial solution is cleaned up when it is no longer needed
|
|
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>
|
|
be1ea788
|
2023-10-15T08:32:48
|
|
Separate input world from output world
|
|
45073b74
|
2023-10-15T12:40:41
|
|
Circular deps: track ancestors, not serial
|
|
948297b5
|
2023-10-31T14:09:55
|
|
Search XDG Base Directories for personality files
Try $XDG_DATA_HOME/pkgconfig/personality.d and $XDG_DATA_DIRS/pkgconfig/personality.d.
|
|
d454f62c
|
2023-11-05T22:17:02
|
|
libpkgconf: fix -Walloc-size
GCC 14 introduces a new -Walloc-size included in -Wextra which gives:
```
libpkgconf/personality.c:260:11: warning: allocation of insufficient size '1' for type 'pkgconf_cross_personality_t' {aka 'struct pkgconf_cross_personality_'} with size '48' [-Walloc-size]
libpkgconf/queue.c:46:33: warning: allocation of insufficient size '1' for type 'pkgconf_queue_t' {aka'struct pkgconf_queue_'} with size '16' [-Walloc-size]
libpkgconf/client.c:164:33: warning: allocation of insufficient size '1' for type 'pkgconf_client_t' {aka 'struct pkgconf_client_'} with size '120' [-Walloc-size]
libpkgconf/path.c:105:14: warning: allocation of insufficient size '1' for type 'pkgconf_path_t' {aka 'struct pkgconf_path_'} with size '24' [-Walloc-size]
libpkgconf/path.c:237:22: warning: allocation of insufficient size '1' for type 'pkgconf_path_t' {aka 'struct pkgconf_path_'} with size '24' [-Walloc-size]
libpkgconf/tuple.c:239:34: warning: allocation of insufficient size '1' for type 'pkgconf_tuple_t' {aka 'struct pkgconf_tuple_'} with size '24' [-Walloc-size]
libpkgconf/dependency.c:133:13: warning: allocation of insufficient size '1' for type 'pkgconf_dependency_t' {aka 'struct pkgconf_dependency_'} with size '44' [-Walloc-size]
libpkgconf/dependency.c:472:17: warning: allocation of insufficient size '1' for type 'pkgconf_dependency_t' {aka 'struct pkgconf_dependency_'} with size '44' [-Walloc-size]
libpkgconf/fragment.c:146:22: warning: allocation of insufficient size '1' for type 'pkgconf_fragment_t' {aka 'struct pkgconf_fragment_'} with size '24' [-Walloc-size]
libpkgconf/fragment.c:195:22: warning: allocation of insufficient size '1' for type 'pkgconf_fragment_t' {aka 'struct pkgconf_fragment_'} with size '24' [-Walloc-size]
libpkgconf/fragment.c:356:14: warning: allocation of insufficient size '1' for type 'pkgconf_fragment_t' {aka 'struct pkgconf_fragment_'} with size '24' [-Walloc-size]
libpkgconf/pkg.c:422:13: warning: allocation of insufficient size '1' for type 'pkgconf_pkg_t' {aka 'struct pkgconf_pkg_'} with size '188' [-Walloc-size]
libpkgconf/client.c:164:33: warning: allocation of insufficient size '1' for type 'pkgconf_client_t' {aka 'struct pkgconf_client_'} with size '224' [-Walloc-size]
libpkgconf/personality.c:260:11: warning: allocation of insufficient size '1' for type 'pkgconf_cross_personality_t' {aka 'struct pkgconf_cross_personality_'} with size '96' [-Walloc-size]
libpkgconf/dependency.c:133:13: warning: allocation of insufficient size '1' for type 'pkgconf_dependency_t' {aka 'struct pkgconf_dependency_'} with size '80' [-Walloc-size]
libpkgconf/dependency.c:472:17: warning: allocation of insufficient size '1' for type 'pkgconf_dependency_t' {aka 'struct pkgconf_dependency_'} with size '80' [-Walloc-size]
libpkgconf/path.c:105:14: warning: allocation of insufficient size '1' for type 'pkgconf_path_t' {aka 'struct pkgconf_path_'} with size '48' [-Walloc-size]
libpkgconf/path.c:237:22: warning: allocation of insufficient size '1' for type 'pkgconf_path_t' {aka 'struct pkgconf_path_'} with size '48' [-Walloc-size]
libpkgconf/queue.c:46:33: warning: allocation of insufficient size '1' for type 'pkgconf_queue_t' {aka 'struct pkgconf_queue_'} with size '32' [-Walloc-size]
libpkgconf/tuple.c:239:34: warning: allocation of insufficient size '1' for type 'pkgconf_tuple_t' {aka 'struct pkgconf_tuple_'} with size '48' [-Walloc-size]
libpkgconf/fragment.c:146:22: warning: allocation of insufficient size '1' for type 'pkgconf_fragment_t' {aka 'struct pkgconf_fragment_'} with size '48' [-Walloc-size]
libpkgconf/fragment.c:195:22: warning: allocation of insufficient size '1' for type 'pkgconf_fragment_t' {aka 'struct pkgconf_fragment_'} with size '48' [-Walloc-size]
libpkgconf/fragment.c:356:14: warning: allocation of insufficient size '1' for type 'pkgconf_fragment_t' {aka 'struct pkgconf_fragment_'} with size '48' [-Walloc-size]
libpkgconf/pkg.c:422:13: warning: allocation of insufficient size '1' for type 'pkgconf_pkg_t' {aka 'struct pkgconf_pkg_'} with size '360' [-Walloc-size]
```
The calloc prototype is:
```
void *calloc(size_t nmemb, size_t size);
```
So, just swap the number of members and size arguments to match the prototype, as
we're initialising 1 struct of size `sizeof(struct ...)`. GCC then sees we're not
doing anything wrong.
The only exception there is for argv which I fixed while at it.
Signed-off-by: Sam James <sam@gentoo.org>
|
|
752a9825
|
2023-10-09T07:22:59
|
|
queue: demote requires to requires.private when processing requires.private parents
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
5aeb469b
|
2023-09-03T16:19:14
|
|
libpkgconf: fix memory leak
Signed-off-by: Colin Gillespie <colin@cgillespie.xyz>
|
|
652aff97
|
2023-10-08T22:27:56
|
|
path: add pkgconf_path_prepend API for --with-path
Otherwise, PKG_CONFIG_PATH and PKG_CONFIG_LIBDIR elements would be processed backwards.
Fixes: 384ade5 (path: prepend paths rather than append paths when processing --with-path arguments)
Closes: #250
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
|
|
a6fb59a0
|
2023-09-02T21:15:46
|
|
pkgconf 2.0.3.
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>
|
|
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
|
|
6a84d704
|
2023-08-11T14:23:08
|
|
pkgconf 2.0.1.
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>
|
|
de51b03c
|
2023-08-04T08:45:16
|
|
pkgconf 2.0.0.
|
|
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.
|
|
35b1a623
|
2023-05-02T12:09:55
|
|
update libpkgconf version to 10905
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>
|
|
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.
|