William Pitcock
d58ac74669
main: use pkgconf_ namespaced strlcpy/strlcat stubs
2016-12-10 16:22:16 -06:00
William Pitcock
b0c821af5c
bsdstubs: nothing seems to use strtok_r() anymore, kill it
2016-12-10 16:20:40 -06:00
William Pitcock
8213d91038
libpkgconf: migrate to using the pkgconf_ namespaced strlcat/strlcpy symbols
2016-12-10 16:19:40 -06:00
William Pitcock
bdaa26231b
bsdstubs: clean up the way this works by namespacing it
2016-12-10 16:16:37 -06:00
William Pitcock
eab112fb15
pkg: cleanups
2016-12-10 16:06:18 -06:00
William Pitcock
0ae2d8e5de
fragment: fix off-by-one error in pkgconf_fragment_render_len()
2016-12-10 15:47:21 -06:00
William Pitcock
d6d7ff775a
main: use pkgconf_fragment_render() to render fragment lists instead of custom stuff
2016-12-09 23:07:15 -06:00
William Pitcock
af63b799f1
main: filter out system dir fragments instead of skipping them when printing
2016-12-09 22:47:02 -06:00
William Pitcock
2b5d763e31
main: use pkgconf_fragment_filter() instead of crazy stuff
2016-12-09 22:45:22 -06:00
William Pitcock
0232ee52a3
libpkgconf: fragment: add pkgconf_fragment_filter() to selectively copy a fragment list using a filter function
2016-12-09 22:18:59 -06:00
William Pitcock
0baecbd165
libpkgconf: fragment: mark fragment objects const in several internal functions
2016-12-09 22:06:42 -06:00
William Pitcock
062f0fd331
libpkgconf: pkg: pkgconf_pkg_new_from_file() and children do not need the resolver flags anymore, so remove them
2016-12-09 21:40:19 -06:00
William Pitcock
6e4fd027c3
main: switch to pkgconf_client_set_sysroot_dir() and remove the last vestige of PKGCONF_PKG_PKGF_MUNGE_SYSROOT_PREFIX
2016-12-09 21:37:36 -06:00
William Pitcock
a902203054
libpkgconf: fragment: simplify sysroot handling by using pkgconf_client_t.sysroot_dir presence
2016-12-09 21:36:59 -06:00
William Pitcock
792cd7c8e6
libpkgconf: tuple: handle sysroot without the need of PKGCONF_PKG_PKGF_MUNGE_SYSROOT_PREFIX
2016-12-09 21:32:55 -06:00
William Pitcock
f8de5bf161
main: use pkgconf_client_set_buildroot_dir() instead of manually handling it
2016-12-09 21:10:21 -06:00
William Pitcock
38e959857a
libpkgconf: client: initialize sysroot and buildroot dirs to reasonable defaults
2016-12-09 21:08:53 -06:00
William Pitcock
92e9b78371
libpkgconf: tuple: when calling pkgconf_tuple_add() on a collection that already has a tuple entry for 'key', replace it instead of adding a new entry
2016-12-09 20:58:15 -06:00
William Pitcock
f7b7853932
libpkgconf: tuple: add pkgconf_tuple_free_entry() to free a specific tuple node
2016-12-09 20:50:33 -06:00
William Pitcock
02ec215ecc
client: introduce pkgconf_client_t.buildroot_dir and pkgconf_client_t.sysroot_dir members
...
This adds buildroot and sysroot dir members to the pkgconf client structure, which will allow us to replace
the suboptimal PKGCONF_PKG_PKGF_MUNGE_SYSROOT_PREFIX code.
2016-12-09 20:41:39 -06:00
William Pitcock
b59d3a94a1
README: typo fix [no-ci]
2016-12-02 01:08:18 -06:00
William Pitcock
3151927bd6
build: SOVERSION should be 2 due to ABI breaks
2016-12-02 00:55:23 -06:00
William Pitcock
3ba3aae783
libpkgconf: client: clean up cache
2016-12-02 00:48:26 -06:00
William Pitcock
011d8c77d6
libpkgconf: audit: migrate to pkgconf_client_t
2016-12-02 00:34:48 -06:00
William Pitcock
c05ecdfc9d
libpkgconf: migrate cache to pkgconf_client_t which unfortunately requires it to be non-const :(
2016-12-02 00:29:33 -06:00
William Pitcock
e7f4846508
libpkgconf: path: add cleanup functions
2016-12-02 00:04:43 -06:00
William Pitcock
b7984a795c
libpkgconf: commit missing client.c
2016-12-01 15:31:09 -06:00
William Pitcock
a300787cef
libpkgconf: do not implicitly build the dir list, instead explicitly do it
2016-12-01 15:17:23 -06:00
William Pitcock
ad731d1948
libpkgconf: make pkgconf_pkg_dir_list_build() public
2016-12-01 15:11:37 -06:00
William Pitcock
434c465ca9
libpkgconf: migrate pkgconf_error() to use client objects
2016-12-01 15:09:54 -06:00
William Pitcock
8740c5cd55
libpkgconf: begin removing global state from libpkgconf library by introducing a "client" object which holds the state
2016-12-01 15:05:03 -06:00
William Pitcock
4bb46e20e3
libpkgconf: add path matching and environment building functions
2016-11-30 22:36:35 -06:00
William Pitcock
f4da1082cb
libpkgconf: refactor some path operations
2016-11-30 22:15:13 -06:00
William Pitcock
082fd4af24
testsuite: add a test for --pure ( closes #83 )
2016-11-15 23:03:50 -06:00
William Pitcock
3f61f58c20
man: document more recently added features in the frontend
2016-11-15 22:52:07 -06:00
William Pitcock
8ecf7c186b
main: also enable --pure with the PKG_CONFIG_PURE_DEPGRAPH env variable ( #83 )
2016-11-15 22:30:04 -06:00
William Pitcock
ec10dd8edb
main: add --pure flag ( #83 ) which allows a static-linking dependency graph to be evaluated as if it were otherwise normal
2016-11-15 22:01:17 -06:00
William Pitcock
96014b0286
NEWS: add an entry for #96
2016-11-05 10:41:50 -05:00
William Pitcock
0c74b5a4c2
Merge branch 'kyua' ( closes #96 )
2016-11-04 23:32:50 -05:00
William Pitcock
cbd14e9118
testsuite: delete legacy testsuite
2016-11-04 23:31:02 -05:00
William Pitcock
63a61b7c9f
testsuite: regress: really add the last few tests this time
2016-11-04 23:30:21 -05:00
William Pitcock
20f4a7fcc7
testsuite: parser: add remaining test cases
2016-11-04 23:14:22 -05:00
William Pitcock
8075de1416
testsuite: regress: add the remaining tests that were in the old testsuite
2016-11-04 23:07:18 -05:00
William Pitcock
0ea956e300
testsuite: use uname -s instead of uname -o for system name
2016-11-04 22:44:00 -05:00
William Pitcock
0764d8af51
Merge branch 'master' into kyua
2016-11-04 22:36:40 -05:00
William Pitcock
febf476a91
configure: kill --enable-strict-mode, entirely pointless
2016-11-04 22:35:55 -05:00
William Pitcock
64c07aa90f
Merge branch 'master' into kyua
2016-10-27 21:51:09 -05:00
William Pitcock
1ce35f8bbb
buildsystem: add new testsuite files
2016-10-25 14:08:39 -05:00
William Pitcock
ce165646de
fragment: skip empty tokens ( closes #99 )
...
Due to the way that tokens are merged together for arguments which require explicit whitespace, an
empty token could result in a fragment like:
{.type = 'I', .data = '/usr/include '}
Such a fragment would be treated differently than:
{.type = 'I', .data = '/usr/include'}
This difference causes the compiler to include a system include path as part of the additional includes, thus
breaking things like include path shadowing, resulting in random build failures. As such, we skip empty tokens
from the tokenizer as they do not have any relevance anyway.
2016-10-25 14:03:25 -05:00
William Pitcock
9a89bd051d
testsuite: add a test for #99
2016-10-25 14:03:25 -05:00