pkg.c


Log

Author Commit Date CI Message
Alexpux 39e3fc1c 2014-08-08T13:19:34 Fix expanding PKG_DEFAULT_PATH under Windows.
Jean-Sébastien Pédron bff5f15d 2014-07-31T16:15:31 Support .pc file without a trailing newline Some editors write text files without a newline character at the end of the last line. Before this change, the main loop in pkg_new_from_file() expected a newline character at the end of the line and overwrote it with a NUL character. In the case of the last line in a non-newline-terminated file, this ate the last character of that line. Now, the pkg_fgetline() function takes care of returning a line without the newline character (or the "\r\n" sequence in case of a DOS file format).
William Pitcock 12ff14f8 2014-07-09T01:23:51 fragments: handle sysroot dir munging directly in a smarter way Previously we just let the tuple system handle it, but pkg-config modules which do not define variables were able to get by the checks. While here, check to ensure we do not duplicate the sysroot dir twice if it is already defined in the pkg-config module file. Downstream bug: https://bugs.busybox.net/show_bug.cgi?id=5750
William Pitcock 9f94461b 2014-02-10T23:57:50 pkg: make fields other than CFLAGS and LIBS case-sensitive (closes #60)
William Pitcock 9d960fb9 2013-08-23T03:44:33 fragment: use forward-merge for static linking (closes #51)
Tony Theodore 1c658f03 2013-08-14T15:36:43 add Cflags.private fragment
Baptiste Daroussin 83877eb2 2013-03-20T17:52:17 Do not ignore PKG_CONFIG_PATH if a direct path to a .pc file is supplied
Baptiste Daroussin 24207bd1 2013-03-17T23:45:51 Do not overwrite eflags with walking though a long list of packages
William Pitcock 18153786 2013-03-15T20:09:54 pkg: list all depgraph breaks (this is technically different than pkg-config, but nobody reads stderr)
William Pitcock f9d93a1f 2013-03-15T19:59:20 main: --simulate: enhancements
William Pitcock 1554c357 2013-03-15T18:11:43 pkg: rework PKG_CONFIG_PATH handling code. As a side effect, the dependency resolver now understands that it should check in the parent directory as well for dependencies if given a literal path to a .pc file. (pkg-config 0.28 does not do this, it should.)
William Pitcock 48c6e4c3 2013-03-15T17:55:44 pkg: improve pkg scandir target building
William Pitcock 874bd58e 2013-03-15T17:40:25 pkg: clarify pkg not found error message
William Pitcock d6fb7881 2013-03-01T12:06:52 pkg: remove pkg_t.uninstalled, use a property flag instead
William Pitcock 1fd95f90 2013-03-01T11:36:21 dependency: refactor to use pkg_list_t framework
William Pitcock 8330056d 2013-03-01T11:10:43 fragment: refactor using pkg_list_t framework
William Pitcock 74e40fd1 2013-03-01T10:45:55 tuple: refactor to use pkg_list_t framework
William Pitcock dd53cd57 2013-02-25T23:29:57 pkg: implement refcounting and a deeper cache
William Pitcock e3d8475c 2013-02-25T22:47:32 pkg: readd cached sentinel
William Pitcock c9831c1e 2013-02-25T22:40:30 pkg: use pkg_cache APIs.
William Pitcock 7d3f234c 2013-02-25T08:56:57 pkg: pkg_report_graph_error() should be static
William Pitcock a3d25fe9 2013-02-25T08:47:37 pkg: ensure we actually have a package object before caching it
William Pitcock 01c2d1d4 2013-02-24T08:58:35 pkg: add support for munging tuples based on $(pc_sysrootdir) if requested
William Pitcock b4eb42f3 2013-02-24T08:21:36 Update copyrights on modified files to 2013.
William Pitcock 14f3e1ed 2013-02-24T08:14:23 pkg: implement a cache for packages and use it to break circular dependencies
William Pitcock 6e457336 2013-02-24T07:37:20 pkg: add pkg_comparator_lookup_by_name().
William Pitcock ef1f1a3a 2013-02-24T07:32:26 pkg: rework pkg_verify_dependency() to treat dependencies as bytecode
William Pitcock ac2f99f6 2013-02-24T07:20:50 pkg: refactor pkg_get_comparator().
William Pitcock 3867a664 2012-09-14T15:42:06 pkg: pkg_get_parent_dir() should fall back to '/' directory separator if necessary Some environments such as the MingW-MSYS shell environment use both \ and / as directory separators, thusly we should fall back to the POSIX directory separator. Both directory separators are fully supported by Windows.
Bryan Drewery 25ebc22d 2012-08-25T16:34:00 Fix crash when specified filename has no path separators
Baptiste Daroussin 4eedb041 2012-08-20T22:47:10 if no cflags or libs are defined in .pc just return 0 and output nothing
Baptiste Daroussin 38abe86a 2012-08-14T16:16:06 Remove unneeded strdup(3)
Baptiste Daroussin 666019cf 2012-08-14T16:04:56 Nuke use of basename/dirname where a simple strrchr can do the trick
Baptiste Daroussin 9a263375 2012-08-12T12:32:31 return 1 and do not output anything a requirement is missing
William Pitcock 390ff275 2012-08-08T11:15:13 pkg: ensure libs.private merging is always after libs
William Pitcock 84ea074f 2012-08-08T11:04:07 pkg: allow pkg_cflags() and pkg_libs() utility functions to have a user-provided list pointer. Also chase this change in the frontend.
William Pitcock 953fb66f 2012-08-08T10:20:08 pkg: fix backwards root-leaf traversal order. This bug causes occasional problems when calculating inter-module dependencies in complex dependency graphs, such as ffmpeg when cross-compiled. Reported-by: Alexander Kojevnikov <alexander@kojevnikov.com> Closes: Issue #33
William Pitcock 22d76251 2012-07-30T05:03:37 pkg: fix tilde operator
William Pitcock 004adad0 2012-07-30T02:46:03 pkg: improve conflicts handling
William Pitcock 573cf8d2 2012-07-26T00:12:29 pkg: fix pkg_t.id initialization
William Pitcock 79ca134f 2012-07-26T00:07:27 pkg: call stat(2) in scan function
William Pitcock 0ac7978e 2012-07-26T00:01:40 pkg: bug fixes
William Pitcock 6f5fbb80 2012-07-25T23:49:07 pkg: add pkg_scan() and pkg_scan_all() functions.
William Pitcock 0a5cb4c4 2012-07-25T21:09:31 everything: update copyright to note multiple authors
William Pitcock 3388277b 2012-07-23T21:07:57 pkg: implement dpkg-style version comparison rules
William Pitcock 111046f1 2012-07-22T23:16:39 pkg: add support for $(pc_path) variable for extracting PKG_DEFAULT_PATH
William Pitcock 3d7455f8 2012-07-22T23:09:10 pkg: add description and url fields to pkg-config virtual
William Pitcock 29ea7ce4 2012-07-21T14:49:55 pkg: add pkg_get_parent_dir() and define $(pcfiledir).
William Pitcock b0cdca48 2012-07-21T14:38:13 everything: do not shadow POSIX BUFSIZ definition
William Pitcock 1975a298 2012-07-20T14:29:58 everything: more friendly warranty disclaimer
William Pitcock 3d0f67a7 2012-07-02T03:41:08 pkg: use relative paths on windows (issue #17)
William Pitcock 8a9971ec 2012-07-01T21:21:31 main: finish --errors-to-stdout support
William Pitcock 524133cd 2012-05-12T02:26:55 pkg: add support for relative path finding on windows (issue #17)
William Pitcock 6519f6ab 2012-05-12T02:21:11 pkg: add get_pkgconfig_path() for separating out the fallback path logic
William Pitcock 52dee220 2012-05-11T21:20:00 pkg: plug memory leak in conflicts code
William Pitcock db9f6267 2012-05-11T21:01:42 pkg: if pkg_traverse() fails, abort walking the graph.
William Pitcock 298a3786 2012-05-11T21:00:01 pkg: return PKG_ERRF_PACKAGE_CONFLICT only if a conflict has been formally verified
William Pitcock 9c335f16 2012-05-11T20:59:35 pkg: when walking a list, get eflags from pkg_traverse() call
William Pitcock 6c1ace0a 2012-05-11T20:51:13 pkg: add conflicts graph node verification (issue #13)
William Pitcock 2ecb181f 2012-05-11T20:16:22 pkg: add pkg_libs() for calculating the mergemaster set of linker flags (issue #11)
William Pitcock e6cf8b40 2012-05-11T20:13:03 pkg: add pkg_cflags() for calculating a mergemastered list of cflag fragments for a problem set (issue #11)
William Pitcock 559ae095 2012-05-11T19:58:34 pkg: pass PKGF_* flags to traverse funcs
William Pitcock acf2ee26 2012-05-11T19:56:38 pkg: use typename enforcement on pkg_traverse()
William Pitcock bb41d143 2012-05-11T13:59:18 pkg: get rid of PKG_LOCAL_COPY() since it was only used in one place
William Pitcock 56fbf25c 2012-05-11T13:47:20 Move all portability gunk into stdinc.h. (Issue #18)
William Pitcock 4b193018 2012-05-07T03:57:28 pkg: clean up pkg_find() by adding pkg_try_specific_path(). (issue #16)
Michał Górny c203beb9 2012-05-07T10:09:59 Support getting PKG_CONFIG_PATH from win32 registry.
William Pitcock f1bd223f 2012-05-06T23:28:42 pkg: disable PKGF_SKIP_ROOT_VIRTUAL when recursing
William Pitcock f663f792 2012-05-06T23:26:21 pkg: add PKGF_SKIP_ROOT_VIRTUAL for some queries like --variable
William Pitcock 688c0789 2012-05-06T23:00:06 parse: remove remaining function (pkg_t constructor) to pkg.c
William Pitcock 4eb08d7c 2012-05-06T22:55:00 pkg: clean up foreach_list_entry* macros (issue #10)
William Pitcock 9eea62fb 2012-05-06T22:52:05 pkg: LOCAL_COPY() becomes PKG_LOCAL_COPY().
William Pitcock a961a523 2012-05-06T22:38:44 pkg: cleanups
William Pitcock db6d0e23 2012-05-06T22:24:36 pkg: parse_file is now pkg_new_from_file
William Pitcock 4f50dad1 2012-05-06T21:42:15 pkg: provide error return codes for pkg_traverse() and pkg_verify_graph().
William Pitcock 6646e99a 2012-05-06T21:30:35 pkg: pkg_report_graph_error(): free pkg when exiting
William Pitcock 5122d5ee 2012-05-06T21:30:14 pkg: do not allocate an id for a virtual package
William Pitcock 9d2bd0b6 2012-05-06T21:09:26 pkg: plug memory leaks
William Pitcock 4d027a43 2012-05-06T20:59:03 pkg: fix out-of-boundary write caused by realloc() semantics
William Pitcock 29ca5b7e 2012-05-06T20:39:26 pkg: free packages constructed while walking the dependency graph
William Pitcock d99f3db8 2012-05-06T20:39:10 pkg: make pkg-config builtin package "virtual"
William Pitcock 4172dc54 2012-05-06T20:38:48 pkg: don't free builtin (virtual) packages
William Pitcock 3eb16dca 2012-05-06T20:30:50 pkg: add pkg_free()
William Pitcock 24265bb1 2012-05-06T19:49:15 pkg: add PKGF_NO_UNINSTALLED resolver flag
William Pitcock ed126f5b 2012-05-06T19:44:22 pkg: add support for PKG_CONFIG_LIBDIR env variable
William Pitcock 44ef8391 2012-05-06T01:02:57 pkg: reset iter to 0 when checking system compiled-in paths
William Pitcock a078249a 2012-05-06T00:12:27 pkg: add support for treating package names as files
William Pitcock 65d4b88d 2012-05-05T23:00:20 pkg: add support for foo-uninstalled.pc file
William Pitcock 1bf5da3b 2012-05-05T22:00:47 pkg: implement pkg-config.pc as a builtin
William Pitcock 4adb0b5d 2012-05-05T20:52:17 pkg: clean up pkg_traverse() logic
William Pitcock 83ba2950 2012-05-05T20:24:45 pkg: add support for compiling in more than one default pkg-config search path Some packages install to /usr/share/pkgconfig instead of /usr/lib/pkgconfig.
William Pitcock 7f7ad67b 2012-05-05T20:21:47 pkg: fix off-by-one when parsing PKG_CONFIG_PATH data
William Pitcock 49a5edda 2012-05-03T17:55:06 pkg: add pkg_report_graph_error() for describing breaks in the dependency graph. Fixes issue #3.
William Pitcock 91ec341a 2012-05-03T17:42:04 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
William Pitcock 1caa0dca 2012-05-03T17:20:39 pkg: pkg_walk_list() does not need a reference to the parent node in the graph
William Pitcock ccda6b37 2012-05-03T17:15:45 everywhere: warning cleanups
Michał Górny a4ceb684 2012-05-03T09:22:08 File lookup: fix uninitialized 'iter'.
William Pitcock 3f758a8b 2012-05-02T23:29:35 pkg: pkg_verify_graph() should also accept resolver flags
William Pitcock e59b9864 2012-05-02T23:16:32 pkg: implement resolver-side support for some pkg-config clone's --env-only option
William Pitcock 187b4e53 2012-05-02T23:14:53 pkg: add resolver flags to pkg_find() and pkg_verify_dependency().