aboutsummaryrefslogtreecommitdiff
path: root/libpkgconf/pkg.c
diff options
context:
space:
mode:
Diffstat (limited to 'libpkgconf/pkg.c')
-rw-r--r--libpkgconf/pkg.c33
1 files changed, 28 insertions, 5 deletions
diff --git a/libpkgconf/pkg.c b/libpkgconf/pkg.c
index 6918d6d..0feb4d6 100644
--- a/libpkgconf/pkg.c
+++ b/libpkgconf/pkg.c
@@ -884,15 +884,25 @@ static pkgconf_pkg_t pkg_config_virtual = {
.flags = PKGCONF_PKG_PROPF_STATIC,
.vars = {
.head = &(pkgconf_node_t){
- .prev = NULL,
- .next = NULL,
+ .next = &(pkgconf_node_t){
+ .next = &(pkgconf_node_t){
+ .data = &(pkgconf_tuple_t){
+ .key = "pc_system_libdirs",
+ .value = SYSTEM_LIBDIR,
+ }
+ },
+ .data = &(pkgconf_tuple_t){
+ .key = "pc_system_includedirs",
+ .value = SYSTEM_INCLUDEDIR,
+ }
+ },
.data = &(pkgconf_tuple_t){
.key = "pc_path",
.value = PKG_DEFAULT_PATH,
},
},
.tail = NULL,
- },
+ }
};
static pkgconf_pkg_t pkgconf_virtual = {
@@ -904,8 +914,18 @@ static pkgconf_pkg_t pkgconf_virtual = {
.flags = PKGCONF_PKG_PROPF_STATIC,
.vars = {
.head = &(pkgconf_node_t){
- .prev = NULL,
- .next = NULL,
+ .next = &(pkgconf_node_t){
+ .next = &(pkgconf_node_t){
+ .data = &(pkgconf_tuple_t){
+ .key = "pc_system_libdirs",
+ .value = SYSTEM_LIBDIR,
+ }
+ },
+ .data = &(pkgconf_tuple_t){
+ .key = "pc_system_includedirs",
+ .value = SYSTEM_INCLUDEDIR,
+ }
+ },
.data = &(pkgconf_tuple_t){
.key = "pc_path",
.value = PKG_DEFAULT_PATH,
@@ -1241,7 +1261,10 @@ pkgconf_pkg_scan_providers(pkgconf_client_t *client, pkgconf_dependency_t *pkgde
pkg = pkgconf_scan_all(client, &ctx, (pkgconf_pkg_iteration_func_t) pkgconf_pkg_scan_provides_entry);
if (pkg != NULL)
+ {
+ pkgdep->match = pkgconf_pkg_ref(client, pkg);
return pkg;
+ }
if (eflags != NULL)
*eflags |= PKGCONF_PKG_ERRF_PACKAGE_NOT_FOUND;