Commit Graph

231 Commits (adc7f92874c82d66f07337e6d5c68c94a8b320f4)

Author SHA1 Message Date
William Pitcock dd53cd57f4 pkg: implement refcounting and a deeper cache 2013-02-25 23:29:57 -06:00
William Pitcock 77c5b82aad main: use support for munging by $(pc_sysrootdir) and remove the old sysroot hack 2013-02-24 08:59:07 -06:00
William Pitcock b4eb42f3c3 Update copyrights on modified files to 2013. 2013-02-24 08:21:36 -06:00
William Pitcock 910c6e00e9 main: add option to disable cache code 2013-02-24 08:20:35 -06:00
William Pitcock 7b322d73e8 main: limit evaluation graph depth to 2000 nodes
This allows us to break out of situations where circular dependencies may arise.
2013-02-24 06:42:32 -06:00
William Pitcock 0edc4ff3b3 main: mention compatibility level in --about ala PKG_PKGCONFIG_VERSION_EQUIV 2012-09-14 16:16:35 -05:00
William Pitcock 0153d2876f main: ensure program invocation with no package arguments always sends error messages to stderr 2012-09-14 15:02:08 -05:00
William Pitcock 150d91d07f main: add a trailing space at the end of the output if --cflags or --libs is requested (closes #40) 2012-09-05 07:03:37 -05:00
Baptiste Daroussin 4eedb041ed if no cflags or libs are defined in .pc just return 0 and output nothing 2012-08-20 22:47:10 +02:00
Baptiste Daroussin 9a26337507 return 1 and do not output anything a requirement is missing 2012-08-12 12:33:37 +02:00
William Pitcock 3e03f2d9aa main: use global fragment lists for --cflags and --libs 2012-08-08 11:09:37 -05:00
William Pitcock 84ea074fbe pkg: allow pkg_cflags() and pkg_libs() utility functions to have a user-provided list pointer.
Also chase this change in the frontend.
2012-08-08 11:09:37 -05:00
William Pitcock 56ba08b617 main: add --simulate (related to issue #33) 2012-08-08 10:23:23 -05:00
William Pitcock c8e604c83c main: add whitespace control to --variable output (fixes mozilla libxul stuff) 2012-07-30 05:40:26 -05:00
William Pitcock 0d412423bd main: print_variable() should add whitespace 2012-07-30 05:11:11 -05:00
Baptiste Daroussin 8acc7533db pkgconf --variable needs a \n 2012-07-30 11:50:09 +02:00
William Pitcock 301a46368e Revert "main: --exists should search Requires.private."
This reverts commit 980644230d.
2012-07-30 03:16:30 -05:00
William Pitcock 69a6331cbe main: --exists should search Requires.private. 2012-07-30 03:16:30 -05:00
William Pitcock 391dbad713 main: add logic to make --print-errors actually useful 2012-07-30 03:16:29 -05:00
William Pitcock e22860accc main: fix regression caused by moving to bitfield where --cflags or --libs wouldn't cause a newline 2012-07-30 02:07:02 -05:00
William Pitcock 8744ce5ec1 main: usage() should list --about 2012-07-29 11:41:57 -05:00
Baptiste Daroussin 1464b576b0 Convert all the int want_* to a single bitmap 2012-07-29 13:39:34 +02:00
William Pitcock b9ccc27abc pkg: add pkg_queue_validate() to compile and validate a pkg_queue_t. 2012-07-29 05:37:21 -05:00
William Pitcock 9136b192c3 main: rework to use pkg_queue_apply().
Presently 3 regressions.
2012-07-29 05:37:21 -05:00
William Pitcock 23b1806f65 main: remove redundant checks made obsolete by depgraph compilation 2012-07-29 05:37:21 -05:00
William Pitcock 50c496b7ce main: use pkg_queue_compile() and pkg_queue_free(). 2012-07-29 05:37:20 -05:00
William Pitcock 698358e9d4 queue: new file 2012-07-29 05:37:20 -05:00
William Pitcock 91271e56c6 main: remove several symbols from BSS (they are only needed by main()). 2012-07-29 03:30:50 -05:00
William Pitcock 3715fae236 main: move our actual version text to --about, make --version print pkg-config API version
This improves compatibility with broken packages, but really, scripts should depend on:
- --atleast-pkgconfig-version
- --modversion pkg-config

Anything else is just broken, but oh well.
2012-07-29 03:22:34 -05:00
William Pitcock 24bb536305 main: --list-all shouldn't list 'uninstalled' packages 2012-07-27 01:21:17 -05:00
William Pitcock 3e1858320c main: add frontend implementation of --list-all 2012-07-27 01:21:16 -05:00
William Pitcock 0a5cb4c4ec everything: update copyright to note multiple authors 2012-07-25 21:09:31 -05:00
Baptiste Daroussin 7b10816cdb Ordering cflags flags 2012-07-26 00:32:35 +02:00
Baptiste Daroussin cab2620408 Ordering libs flags 2012-07-26 00:26:04 +02:00
Baptiste Daroussin 83487e78cb skip empty packages arguments
(gobject-introspection scanner can pass empty arguments to pkgconf)
This improves compatibility with pkg-config
2012-07-25 13:51:19 +02:00
Baptiste Daroussin abcea07a1c add --with-system-includedir and --with-system-libdir
By default they are defined to --includedir and --libdir
2012-07-24 22:24:52 +02:00
William Pitcock da7e3de991 main: --silence-errors should be opt-in only. 2012-07-23 21:07:19 -05:00
William Pitcock b0cdca488e everything: do not shadow POSIX BUFSIZ definition 2012-07-21 14:38:13 -05:00
William Pitcock f4d84620a1 main: add support for --silence-errors by redirecting stderr to /dev/null 2012-07-21 14:33:07 -05:00
William Pitcock d730ec8a64 main: bail if the entire depgraph cannot be built 2012-07-20 20:04:11 -05:00
William Pitcock e5efad7df5 main: return EXIT_FAILURE when argument parsing fails 2012-07-20 17:19:43 -05:00
William Pitcock 43a2c7880d main: use pkg_getopt_long_only(). 2012-07-20 17:12:06 -05:00
William Pitcock 3035b0ba6b main: add support for HAVE_STRICT_MODE compiler define (and define it in the build system) (issue #25) 2012-07-20 16:29:57 -05:00
William Pitcock c928e7e429 main: clean up license text in --version 2012-07-20 14:31:58 -05:00
William Pitcock 1975a2981e everything: more friendly warranty disclaimer 2012-07-20 14:29:58 -05:00
William Pitcock 9d7672fc9a main: use our own getopt_long() implementation always, as pkg_getopt_long(). (closes #24) 2012-07-20 13:46:14 -05:00
William Pitcock b8645fbef2 main: fix regression caused by copy-and-paste (issue #20) 2012-07-01 22:02:45 -05:00
William Pitcock 4499d272dd main: implement use of pkg_dependency_parse_str() for --atleast-version and friends (issue #20) 2012-07-01 21:57:49 -05:00
William Pitcock 8a9971ec1f main: finish --errors-to-stdout support 2012-07-01 21:21:31 -05:00
William Pitcock 2d2ae06809 main: emulate --errors-to-stdout 2012-06-30 16:51:31 -05:00
William Pitcock fef7558c92 main: add --ignore-conflicts program option (issue #13) 2012-05-11 20:54:48 -05:00
William Pitcock 27c0779187 main: use pkg_libs(). 2012-05-11 20:18:12 -05:00
William Pitcock b8e538ecea main: use pkg_cflags() instead of custom code (issue #11) 2012-05-11 20:13:47 -05:00
William Pitcock 40402298ef main: use PKGF_MERGE_PRIVATE_FRAGMENTS 2012-05-11 20:07:45 -05:00
William Pitcock ee2df66a56 main: update traverse callback prototypes 2012-05-11 20:02:23 -05:00
William Pitcock 56fbf25c8a Move all portability gunk into stdinc.h. (Issue #18) 2012-05-11 13:47:20 -05:00
William Pitcock 2aaa1ce0df main: implement support for PKG_CONFIG_SYSROOT_DIR (issue #5) 2012-05-07 03:45:24 -05:00
William Pitcock 1b845b4310 main: implement support for PKG_CONFIG_TOP_BUILD_DIR (issue #6) 2012-05-07 03:33:00 -05:00
William Pitcock a5347c8b4f main: add --exact-version and --max-version to usage() 2012-05-07 03:27:55 -05:00
William Pitcock d5ddeb401b main: add --max-version and --exact version (issue #8) 2012-05-07 03:26:17 -05:00
William Pitcock 7ae5ccd177 main: implement --define-variable 2012-05-06 23:32:08 -05:00
William Pitcock 07a414677b main: use PKGF_SKIP_ROOT_VIRTUAL when looking for variables 2012-05-06 23:30:02 -05:00
William Pitcock 0056ba63dc tuple: add global tuple support (issue #5, issue #6, issue #7) 2012-05-06 23:10:41 -05:00
William Pitcock 4eb08d7c1f pkg: clean up foreach_list_entry* macros (issue #10) 2012-05-06 22:55:00 -05:00
William Pitcock d07e41c3f9 pkg: rename parse_deplist to pkg_dependency_parse 2012-05-06 22:23:05 -05:00
William Pitcock cc32bbd47c main: use error codes 2012-05-06 21:42:33 -05:00
William Pitcock 601341fb8f main: pkg_queue_walk(): cleanups 2012-05-06 21:31:20 -05:00
William Pitcock cb23f16a85 main: plug leak with --uninstalled 2012-05-06 21:22:40 -05:00
William Pitcock 1b1e8dcd1a main: free mergemaster'd fragment lists 2012-05-06 21:16:32 -05:00
William Pitcock 36269f760b main: don't just exit on --variable 2012-05-06 21:15:30 -05:00
William Pitcock c69d6c62eb main: free pkg_queue_t entries once they are committed to the depgraph 2012-05-06 21:12:16 -05:00
William Pitcock a75baf5a7b main: make 'world' package virtual 2012-05-06 21:08:47 -05:00
William Pitcock ded3ce7aff main: clean up variable printer now that we have pkg_tuple_parse 2012-05-06 20:13:54 -05:00
William Pitcock 30fe1fae39 parse: replace strdup_parse with pkg_tuple_parse(). 2012-05-06 20:12:11 -05:00
William Pitcock 4ea25d56f4 parse: split out tuple API and make public 2012-05-06 20:06:48 -05:00
William Pitcock 1752b75ac9 main: fix typo 2012-05-06 19:57:56 -05:00
William Pitcock 69c5925ba2 main: add --keep-system-cflags and --keep-system-libs (and also pkg-config env vars for this) 2012-05-06 19:56:19 -05:00
William Pitcock 857d36b642 main: add --no-uninstalled program option and PKG_CONFIG_DISABLE_UNINSTALLED env variable support 2012-05-06 19:49:50 -05:00
William Pitcock 498debd85a main: implement --uninstalled 2012-05-05 23:10:05 -05:00
William Pitcock 7352f14025 main: can't iterate backwards up deptree so need other hack for this 2012-05-05 22:00:32 -05:00
William Pitcock b17771d3f1 main: use our mergemaster 'world' package as a virtual 'pkg-config' package too 2012-05-05 21:53:47 -05:00
William Pitcock 58b525d2f8 main: move PKGCONFIG_VERSION_EQUIV to pkg.h 2012-05-05 21:51:25 -05:00
William Pitcock 2ba296dc96 main: default to unlimited traversal now that we do mergemaster 2012-05-05 21:46:20 -05:00
William Pitcock 793de6a06c main: handle pkg-config 'package' '>=' 'version' in 3 fields. 2012-05-05 21:39:37 -05:00
William Pitcock 4adb0b5dc6 pkg: clean up pkg_traverse() logic 2012-05-05 20:52:17 -05:00
William Pitcock faba0d8074 main: fix --modversion call for pkg_traverse(). 2012-05-05 20:47:13 -05:00
William Pitcock 18e051e760 main: pkg-config only allows printing variables from the first package, so exit once we've done that 2012-05-05 22:09:33 +00:00
William Pitcock a9a2ba3da4 main: don't put any trailing space after printed variables 2012-05-05 22:08:06 +00:00
William Pitcock 542e4e6f89 main: print_variable(): use strdup_parse(). 2012-05-05 21:52:18 +00:00
William Pitcock 8ff4ae5b16 main: traverse up to 3 levels for variable search 2012-05-05 21:51:59 +00:00
William Pitcock a4a572f608 main: separate CFLAGS and LIBS collection and printing steps into two phases. 2012-05-03 20:37:24 +00:00
William Pitcock bd1bfa6228 main: add support for --libs-only-L, --libs-only-l and --libs-only-other. 2012-05-03 20:21:57 +00:00
William Pitcock bd4044a9cf main: add support for --cflags-only-I and --cflags-only-other 2012-05-03 19:52:36 +00:00
William Pitcock a290467261 main: filter out system dirs 2012-05-03 19:44:44 +00:00
William Pitcock b0521ec9d8 main: implement support for printing fragment lists 2012-05-03 19:36:47 +00:00
William Pitcock b26da6815c main: --static shouldn't change maximum_traverse_depth 2012-05-03 18:05:19 +00:00
William Pitcock 91ec341a92 pkg: pkg_verify_dependency(): add return error flags pointer.
presently, three error flags are defined:

PKG_ERRF_OK: everything went fine (no error)

PKG_ERRF_PACKAGE_NOT_FOUND: a graph node couldn't be verified because there was no
                            database entry for it

PKG_ERRF_PACKAGE_VER_MISMATCH: a graph node couldn't be verified because the entry
                               in the database did not match versioning constraints
2012-05-03 17:42:04 +00:00
William Pitcock 460a0afb04 main: explicitly tell the compiler we don't want to use the userdata pointers in our callback 2012-05-03 17:21:41 +00:00
William Pitcock 290107de84 main: add support for --print-requires-private 2012-05-03 00:55:52 +00:00
William Pitcock 3f758a8bae pkg: pkg_verify_graph() should also accept resolver flags 2012-05-02 23:29:35 +00:00
William Pitcock 84aa1c11f1 main: now that we have global_traverse_flags, clean up --static handling 2012-05-02 23:20:54 +00:00
William Pitcock d97853e49c main: implement support for --env-only option. 2012-05-02 23:19:50 +00:00
William Pitcock 187b4e538f pkg: add resolver flags to pkg_find() and pkg_verify_dependency(). 2012-05-02 23:14:53 +00:00
William Pitcock 62f1bfbc5b main: add global_traverse_flags for PKGF flags that should be applied to any pkg_traverse() call 2012-05-02 23:11:19 +00:00
William Pitcock ff779219e1 main: if --static and --libs is requested, use PKGF_SEARCH_PRIVATE when printing linker flags 2012-05-02 22:01:17 +00:00
William Pitcock 07bb6d28bc main: if --static is requested, print LIBS.private too. 2012-05-02 21:53:43 +00:00
William Pitcock 8f8ed9b60a main: call pkg_traverse with PKGF_SEARCH_PRIVATE if --cflags is requested. 2012-05-02 21:48:23 +00:00
William Pitcock 5ea52d4cae pkg: add flags option to pkg_traverse() to optionally control what the depgraph traversal code does 2012-05-02 21:44:58 +00:00
William Pitcock 60421ad27e main: add --help support 2012-05-01 01:10:56 +00:00
William Pitcock f99ecae9e8 main: remove dependency on popt 2012-04-30 18:50:31 +00:00
William Pitcock 3c8bac678d main: add --digraph option to generate a representation of the depgraph in graphviz dot format 2011-07-26 20:37:19 -05:00
William Pitcock 1cd2906d9d main: add --print-variables 2011-07-26 20:04:09 -05:00
William Pitcock f717c7609b main: add --print-requires 2011-07-26 19:59:53 -05:00
William Pitcock 7c3db84499 main: consistency in help messages 2011-07-26 18:49:38 -05:00
William Pitcock 5a6a586a76 main: add --atleast-version 2011-07-26 18:47:42 -05:00
William Pitcock 8b721a263c main: implement --static 2011-07-26 18:44:28 -05:00
William Pitcock a362c7e936 main: make --atleast-pkgconfig-version work 2011-07-26 12:05:29 -05:00
William Pitcock e8a944f41d main: add support for --variable 2011-07-25 18:17:28 -05:00
William Pitcock 8100eb84f0 pkg: add pkg_verify_graph() to verify the depgraph is satisfiable 2011-07-25 17:44:05 -05:00
William Pitcock 3e69f4c7a6 parse: add pkg_dependency_append() and fix world dependency merging 2011-07-25 16:53:12 -05:00
William Pitcock bdbab6918a main: fix --modversion 2011-07-25 02:18:11 -05:00
William Pitcock 9f0521ec90 main: fix up depth traversal nonsense, set to depth 2 for pkg-config mode 2011-07-25 01:48:40 -05:00
William Pitcock 05d596b9bc pkg: implement maximum depth for pkg_traverse() 2011-07-25 01:22:04 -05:00
William Pitcock 8e46a165c2 main: switch to using apk-style master dependency merge strategy 2011-07-25 01:03:35 -05:00
William Pitcock faf2926f27 main: add pkg-config compat stubs 2011-07-25 00:36:57 -05:00
William Pitcock 02f7f67335 main: add some minor stuff 2011-07-25 00:26:55 -05:00
William Pitcock b0c762f3b9 main: add --modversion option 2011-07-25 00:21:54 -05:00
William Pitcock f79c6780c3 main: add pkg_queue for mergemaster operation 2011-07-25 00:19:55 -05:00
William Pitcock 3a36809567 main: expand into something more useful, add --cflags and --libs printer selectors to poptOptions 2011-07-25 00:06:37 -05:00
William Pitcock b55a4ce39f main: add a function for processing a single package 2011-07-24 23:54:39 -05:00
William Pitcock 4603ceb885 main: split out to main.c, make pretty printers hidden 2011-07-24 23:46:10 -05:00