pkg.c


Log

Author Commit Date CI Message
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().
William Pitcock 38f3dc78 2012-05-02T21:47:02 pkg: if PKGF_SEARCH_PRIVATE is requested, search root::requires_private graph entries too
William Pitcock 5ea52d4c 2012-05-02T21:44:58 pkg: add flags option to pkg_traverse() to optionally control what the depgraph traversal code does
William Pitcock 656b34fb 2012-05-02T19:35:45 pkg: plug some minor memory leaks
William Pitcock 77703f18 2012-05-02T19:31:30 pkg: path_split(): clarify that we want to dereference parv itself, not parv[idx].
William Pitcock ca484382 2012-05-02T19:11:20 pkg: use PKG_CONFIG_EXT everywhere
William Pitcock 52433aa2 2012-05-02T19:07:38 pkg: clean up PKG_CONFIG_PATH_SEP_S nonsense
William Pitcock b91bdcd3 2012-05-02T19:06:32 pkg: use path_split() instead of a static buffer.
William Pitcock 538317f6 2012-05-02T18:38:31 pkg: add path_split() helper function
Michał Górny 3707ccd2 2012-05-02T15:55:13 Fix PKG_CONFIG_PATH precedence, simplify. PKG_CONFIG_PATH paths must take precedence over the default path. Otherwise, we would be unable to override default .pc files. And while I'm at it, simplify the whole code. It is pointless to introduce another buffer and a lot of string mangling for one additional path.
Michał Górny 0e0bf1b0 2012-05-02T11:45:31 Omit empty paths in file lookup. This avoids looking for '/foo.pc'.
Michał Górny 218b3ccd 2012-05-02T11:42:52 Remove unnecessary buffer zeroing. We always replace that current pos with a null terminator, so it doesn't matter what follows it.
Michał Górny f26001c3 2012-05-02T11:40:38 File lookup: wind in last occurence to the loop. Instead of repeating the parsing stage after reaching the null terminator, just handle it inside the loop and terminate the loop afterwards.
Michał Górny 353ba1ea 2012-05-02T11:24:58 Use ';' as path separator on win32. This is what pkg-config does, and it is necessary because ':' is part of path specification on win32.
William Pitcock 2d738c2c 2012-05-01T01:27:19 pkg: make PKG_CONFIG_PATH parsing more robust
William Pitcock 3b154d8a 2012-04-30T06:06:13 everywhere: use strlcpy and strlcat where appropriate
Mike Frysinger 4e4c1d62 2012-04-29T23:58:52 fix handling of length with strncat The length arg in the strncat func represents the max number of bytes that may be appended, but the total length of the buffer. So we have to subtract the length of bytes already in there. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
William Pitcock 1e93bac3 2012-02-17T15:35:23 pkg: handle PKG_DEFAULT_PATH and PKG_CONFIG_PATH envvar more cleanly
Alyx d0639b33 2012-01-15T19:03:54 Make pkg_find() follow the PKG_CONFIG_PATH environmental variable, if available.
William Pitcock b0c16941 2011-07-26T20:37:01 pkg: add pkg_t.id field
William Pitcock 8543f1bd 2011-07-26T20:15:44 pkg: document pkg_traverse()
William Pitcock 648c39cf 2011-07-26T19:59:46 pkg: add pkg_get_comparator()
William Pitcock 774ebc97 2011-07-26T19:52:44 pkg: pkg_verify_dependency() was calling pkg_compare_version() in reverse order
William Pitcock f8638cdb 2011-07-26T12:17:45 pkg: add pkg_verify_dependency()
William Pitcock a872c725 2011-07-26T12:05:14 pkg: fix up pkg_compare_version()
William Pitcock 7e268420 2011-07-26T11:56:59 pkg: add pkg_compare_version()
William Pitcock 8100eb84 2011-07-25T17:44:05 pkg: add pkg_verify_graph() to verify the depgraph is satisfiable
William Pitcock 3d502159 2011-07-25T17:03:06 pkg: use exact same error message as pkg-config when dependency is unresolvable
William Pitcock 4fe2dc1b 2011-07-25T01:26:05 pkg: croak if dependency tree is incomplete