William Pitcock
278a2bd667
libpkgconf: fragment: rework quoting and lexing ( closes #139 , #153 )
...
we now use POSIX-style quoting for all fragments. it is our belief that this is the
most optimal behaviour for portability, because all POSIX-compliant tools require
single-quotes to be considered as literal (closes #153 ).
because of this, we are able to remove some hacks on the lexer side which were there
to simulate pkg-config quoting, but were basically utterly wrong (closes #139 ).
2017-12-11 18:25:55 -06:00
William Pitcock
1c9880a03b
main: fix refcount violation exposed by incremental dependency solver
2017-12-11 18:23:14 -06:00
William Pitcock
7b1fac4c99
tests: remove fragment-quoting-4 and fragment-quoting-6 tests as they are not relevant anymore
2017-12-11 17:41:08 -06:00
William Pitcock
973aff21e9
libpkgconf: tuple: add some trace logging
2017-12-11 17:39:12 -06:00
William Pitcock
7274357565
libpkgconf: fragment: track merged fragments, as they should never be quoted
2017-12-10 00:39:39 -06:00
William Pitcock
cad2515be5
libpkgconf: fragment: there are no consumers of non-escaped rendered fragment lists, so deprecate the option
2017-12-10 00:36:20 -06:00
William Pitcock
d2b6983385
libpkgconf: cache: fix refcount issue exposed by recent depgraph solver changes
2017-12-08 13:39:40 -06:00
William Pitcock
4058a722a4
NEWS: mention --msvc-syntax and the infrastructure allowing it
2017-12-07 20:12:29 -06:00
William Pitcock
b216ccb33d
build: add renderer-msvc.h to noinst_HEADERS
2017-12-07 20:08:29 -06:00
William Pitcock
0b09c111ed
main: implement a MSVC renderer (only some fragments supported) ( closes #161 )
2017-12-07 20:07:30 -06:00
William Pitcock
19d91e90e5
libpkgconf: fragment: allow for overriding the default fragment rendering behaviour
2017-12-07 19:13:35 -06:00
William Pitcock
eec34c480c
NEWS: cmake was mentioned twice
2017-12-07 15:22:58 -06:00
William Pitcock
fc5e33a3cb
add 1.4 stuff so far to NEWS
2017-12-07 15:22:05 -06:00
William Pitcock
73119e0165
update NEWS with bugfixes/enhancements that were backported to 1.3.8 and later
2017-12-07 15:14:35 -06:00
William Pitcock
0d6cad31fa
meson: look for atf-sh ( closes #160 )
2017-12-07 12:34:06 -06:00
William Pitcock
f1e5014921
main: use single-quotes for --env output
2017-12-07 12:31:45 -06:00
William Pitcock
7ab4dffaf1
main: implement --env ( closes #159 )
2017-12-06 17:45:17 -06:00
William Pitcock
69a05a74b5
man: pkgconf(1): add crossreference to new pkg.m4(7) manpage ( closes #147 )
2017-12-05 19:52:32 -06:00
William Pitcock
7fed573a6f
man: finish pkg.m4(7)
2017-12-05 19:47:51 -06:00
William Pitcock
d80d66f5ff
man: add starting point on pkg.m4(7) manpage
2017-12-05 19:17:31 -06:00
William Pitcock
60df6ba3b0
build: move manpages to man subdir
2017-12-05 18:45:06 -06:00
William Pitcock
5ed0f532d4
docs: s/frameworks/libraries/ ( closes #156 )
2017-12-05 18:12:47 -06:00
William Pitcock
f7406afc5b
libpkgconf: pkg: do not mention PKG_CONFIG_SKIP_CONFLICTS env var when simplified errors are requested ( closes #134 )
2017-12-05 18:04:42 -06:00
William Pitcock
06abf28dab
libpkgconf: client: handle NULL client in pkgconf_trace calls
2017-12-05 17:46:57 -06:00
William Pitcock
74d58d1b63
libpkgconf: pkg: cache solutions for already solved dependency graph nodes
...
in almost all cases, we partially solve the dependency graph multiple times, which
just wastes resources. if we record the solution to a given dependency node, further
iterations can make use of the previous solution without having to solve it again.
this is safe because all provides entries (including virtuals) are knowable prior to
solving the dependency graph the first time.
a nice side effect of this is that all packages are preloaded when querying
information about them (--cflags and related commands).
2017-12-05 17:34:01 -06:00
William Pitcock
44b4b126f3
libpkgconf: pkg: record which pkgconf_client_t owns each pkgconf_pkg_t object
2017-12-05 17:32:00 -06:00
William Pitcock
4c0cc29277
libpkgconf: pkg: add refcount debugging
2017-12-05 17:24:57 -06:00
William Pitcock
b6a56c8728
main: do not evaluate module paths for modules that are not really on disk ( closes #158 )
2017-12-02 21:14:43 -06:00
William Pitcock
b52d3819a2
main: add --modversion to --help output ( closes #157 )
2017-11-28 13:41:35 -06:00
William Pitcock
4589274c43
libpkgconf: start to remove PKGCONF_BUFSIZE allocations from the stack. ( closes #149 )
...
Patch by Karen Arutyunov.
2017-10-16 12:56:19 -05:00
William Pitcock
1297385762
libpkgconf: fragment: remove obsolete code in pkgconf_fragment_should_munge()
2017-10-16 12:51:59 -05:00
William Pitcock
36551cca83
libpkgconf: path: relocate the path before doing dedup checks ( closes #151 )
2017-10-16 11:30:22 -05:00
William Pitcock
3bc2e21dd1
libpkgconf: path: ensure entire buffer is zeroed before calling realpath() on it ( closes #150 )
2017-10-16 11:26:27 -05:00
Baptiste Daroussin
6985a179c1
libpkgconf: Fix issue when sysroot is '/'
...
If sysroot is /, simply do nothing.
This fixes #146
2017-10-11 17:05:35 +02:00
Baptiste Daroussin
4e50938e78
tests: add a test case for #146
2017-10-11 17:05:23 +02:00
✈ Graham ✈
a8a65c7f6c
Only add warnings and std flags if supported by compiler (autoconf) ( #145 )
...
* Only add warning and std flags if supported by compiler (autoconf)
* bundle AX_CHECK_COMPILE_FLAG macro from autoconf-archive
2017-09-26 12:27:52 -05:00
William Pitcock
301dc16909
makefile: helps to add the test to the actual testfile list
2017-09-24 14:22:56 -05:00
William Pitcock
e56fea66e4
travis: third time should be the charm
2017-09-24 14:15:04 -05:00
William Pitcock
5a10c6bb7b
travis: retry
2017-09-24 14:10:30 -05:00
William Pitcock
0d89bea9a8
travis: grrrrr
2017-09-24 14:06:06 -05:00
✈ Graham ✈
e9c2e6f127
Only add warning and std flags if supported by compiler ( #144 )
...
This fixes errors like those reported in #143 on Solaris
(and probably other platforms where gcc is not the native
compiler):
c99: -W option with unknown program all
This only fixes it for cmake, but presumably similar checks
could be added for autoconf as well.
2017-09-24 12:52:49 -05:00
William Pitcock
fae657101c
libpkgconf: argvsplit: handle double backslash case properly ( closes #140 )
2017-09-23 00:24:34 -05:00
William Pitcock
abe0f5c821
libpkgconf: fileio: fix quoting logic for double backslash case (ref #140 )
2017-09-23 00:19:16 -05:00
William Pitcock
db56c80d92
libpkgconf: fragment: add debug to document post-subst output to parser
2017-09-23 00:11:55 -05:00
William Pitcock
95b68f7c02
tests: add testcase for #140
2017-09-23 00:08:12 -05:00
William Pitcock
67dd48a343
libpkgconf: api: handle DLL_EXPORT libtool case on mingw ( closes #141 )
2017-09-23 00:00:43 -05:00
William Pitcock
24c1439d52
libpkgconf: stdinc: fix SIZE_FMT_SPECIFIER on mingw
2017-09-22 23:58:40 -05:00
William Pitcock
420c62e10c
libpkgconf: pkg: refactor parser harness to allow providing warnings, provide warning for improper fragment list
2017-09-19 21:58:54 -05:00
William Pitcock
7ced8d77ae
libpkgconf: fragment: pkgconf_fragment_parse: return false on parse failure
2017-09-19 21:48:53 -05:00
William Pitcock
72cf871421
tests: regress: add malformed quoting test
2017-09-19 21:35:18 -05:00