Commit Graph

164 Commits (3744a84380cbd95b9625aa5bbb404687e9701bda)

Author SHA1 Message Date
William Pitcock 01fe5743ea fragment: add new option to control escaping shell arguments 2017-02-25 15:32:49 -06:00
William Pitcock ae42261c3f argvsplit: refactor splitting state machine 2017-02-25 15:04:08 -06:00
John Hein 9b255d465c If PKG_CONFIG_PATH element is a sym link, use the link destination instead of the link for inode caching checks.
See issue 112 & issue 110 (https://github.com/pkgconf/pkgconf/issues)
2017-02-24 23:26:41 -06:00
John Hein 76b8e0a26b Normalize the path to remove duplicate / separators rather than possibly altering the path with realpath(3). Leave sym links as is in path components. This is also cheaper than realpath(3), and works on platforms that don't have realpath(3).
Note: if this is accepted, the check for realpath in configure.ac
can be removed, and some docs that mention realpath will be adjusted.
2017-02-24 23:26:10 -06:00
William Pitcock d558e30ab3 libpkgconf: argvsplit: quoting logic was simplified too much 2017-02-07 10:25:38 -06:00
William Pitcock b0c36cd128 libpkgconf: pkg: add some trace points 2017-02-04 20:35:49 -06:00
William Pitcock 16ecf82fd7 libpkgconf: client: bring up the default trace handler as early as possible 2017-02-04 20:09:21 -06:00
William Pitcock f7f0bfc460 libpkgconf: cache: add trace points 2017-02-04 20:01:41 -06:00
William Pitcock 2b6bb5a252 libpkgconf: client: add trace points 2017-02-04 19:50:58 -06:00
William Pitcock d20efff495 libpkgconf: overhaul pkgconf_trace() a little 2017-02-04 19:49:59 -06:00
William Pitcock 820ad83edd libpkgconf: pkg: add variable whitespace warnings back, using pkgconf_warn(). 2017-02-04 19:05:28 -06:00
William Pitcock bef293080a libpkgconf: client: add trace logging too 2017-02-04 18:57:21 -06:00
William Pitcock a6755cd792 libpkgconf: client: add pkgconf_warn() 2017-02-04 18:46:53 -06:00
William Pitcock eb98a1e6c3 libpkgconf: client: clean up various aspects of error/warn handlers 2017-02-04 18:46:33 -06:00
William Pitcock d884dc46a2 libpkgconf: client: ensure error/warn handlers always have a sane default instead of actually NULL 2017-02-04 18:41:16 -06:00
William Pitcock c0b6a62c40 libpkgconf: client: add warn handler and getter/setter for both warn handler and error handler 2017-02-04 18:37:58 -06:00
William Pitcock 647c0255aa libpkgconf: add PKGCONF_PKG_PKGF_DONT_RELOCATE_PATHS (#110)
main: add PKG_CONFIG_DONT_RELOCATE_PATHS environment variable and --dont-relocate-paths option to disable path relocation
2017-02-03 13:17:21 -06:00
William Pitcock fe40bc33f8 libpkgconf: argvsplit: do not consider ' or " to be equivalent to \ (#111) 2017-02-03 12:53:50 -06:00
William Pitcock 42d65b14c7 libpkgconf: client: add INCLUDE environment to the cflags path filter list on windows 2017-02-01 13:03:06 -06:00
William Pitcock 1aa1a43321 Revert "libpkgconf: pkg: warn when encountering trailing whitespace"
This reverts commit 2fa4fd09d0.
2017-01-26 13:38:57 -06:00
William Pitcock 2fa4fd09d0 libpkgconf: pkg: warn when encountering trailing whitespace 2017-01-26 13:32:07 -06:00
William Pitcock ef1503b769 libpkgconf: strip trailing whitespace 2017-01-26 13:10:52 -06:00
William Pitcock b06bbe75a4 libpkgconf: path: only enable cygwin path relocation backend for msys (ref #72) 2017-01-23 23:17:26 -06:00
William Pitcock e87595b3d1 libpkgconf: use a better check instead of stat() for pkg-config file iteration, avoiding a TOCTOU race condition identified by coverity 2017-01-23 12:42:13 -06:00
William Pitcock db65f935f0 libpkgconf: iter: check list->tail for null, not list->head 2017-01-23 00:24:13 -06:00
William Pitcock 0927ecf1c6 Revert "Actually fix the regression introduced in 7b39c38"
This reverts commit 5e5c418837.
2017-01-22 23:29:59 -06:00
William Pitcock 5554be4986 libpkgconf: queue: chase API change (mark static root virtual packages as static) 2017-01-22 23:28:51 -06:00
William Pitcock 0c01a81299 libpkgconf: split virtual/static package state (this is API/ABI safe, static packages are always treated as virtual when it comes to mutation) 2017-01-22 23:26:01 -06:00
William Pitcock 9ece7cd487 libpkgconf: move sys/stat.h inclusion out of stdinc.h to the only other consumer of sys/stat.h 2017-01-22 23:09:38 -06:00
William Pitcock e5f3dac6e7 libpkgconf: pkg: handle error value from stat(2). 2017-01-22 23:07:39 -06:00
William Pitcock 67796a1d86 libpkgconf: argvsplit: make escape handling more explicit 2017-01-22 23:04:01 -06:00
Igor Gnatenko 5db87c9685 remove dead assignments (#109)
* remove dead assignments

None of them are used.

Signed-off-by: Igor Gnatenko <ignatenko@redhat.com>

* The address of an object "&pkgconf_pkg_provides_vermatch_rules[pkgdep->compare]" is never null

Signed-off-by: Igor Gnatenko <ignatenko@redhat.com>

* Overrunning array pkgconf_pkg_comparator_names at element index 7

Signed-off-by: Igor Gnatenko <ignatenko@redhat.com>
2017-01-22 11:31:34 -08:00
Baptiste Daroussin 5e5c418837 Actually fix the regression introduced in 7b39c38 2017-01-22 11:26:43 +01:00
Baptiste Daroussin 17be554a21 Revert "Fix regression introduced in 7b39c38"
This reverts commit 7d89f659ff.
2017-01-22 11:23:24 +01:00
Baptiste Daroussin 7d89f659ff Fix regression introduced in 7b39c38
now pkgconf --variable=pc_path pkg-config works
2017-01-22 10:44:09 +01:00
William Pitcock 7237b811e7 add support for making paths relocatable (closes #103) 2017-01-20 00:58:48 -06:00
William Pitcock ced4f00363 libpkgconf: client: add pkgconf_client_[get|set]_prefix_varname() 2017-01-19 19:16:00 -06:00
William Pitcock 13cf74c7a3 libpkgconf: kill flags from top-level fragment API (ref #105) 2017-01-19 18:23:25 -06:00
William Pitcock 7b39c38408 libpkgconf: pkg: clean up use of flags variable (ref #105) 2017-01-19 18:17:29 -06:00
William Pitcock 127fd037d4 libpkgconf: pkg: uncouple resolver flags from pkgconf_pkg_dir_list_build(). (ref #105) 2017-01-19 17:35:57 -06:00
William Pitcock 0ca6a16ce5 libpkgconf: queue: nuke flags parameters (ref #105) 2017-01-19 17:32:38 -06:00
William Pitcock 597c3c7faf libpkgconf: client: add pkgconf_client_t.flags and a get/set interface for it 2017-01-19 17:22:20 -06:00
William Pitcock 1ee3c12f53 libpkgconf: path: use pkgconf_path_relocate() when matching paths 2017-01-19 10:43:23 -06:00
William Pitcock fa927fd379 libpkgconf: path: pkgconf_path_relocate(): implement realpath backend 2017-01-19 10:36:07 -06:00
William Pitcock 0315832285 doc: document pkgconf_path_relocate() 2017-01-19 10:31:40 -06:00
William Pitcock 4f94090fe4 libpkgconf: fragment: make pkgconf_fragment_filter() accept userdata (closes #106) 2017-01-18 20:25:19 -06:00
William Pitcock b428eeaacf libpkgconf: remove legacy check to ensure pkgconf_pkg_dir_list_build() is only called once.
this is not necessary anymore because:

- we do path entry deduplication
- it is possible that we want to prime the dir list with some user-specified paths prior to building it
2017-01-18 11:29:24 -06:00
William Pitcock 147fd80750 path: relocate system libdir/includedir if appropriate 2017-01-13 20:12:38 -06:00
William Pitcock cb1dc71e23 fragment: simplify pkgconf_fragment_copy_munged() 2017-01-13 20:10:02 -06:00
William Pitcock 87a5a1f0cc path: when stubbing pkgconf_path_relocate(), suppress unused variables warnings 2017-01-13 20:08:22 -06:00