summaryrefslogtreecommitdiff
path: root/libpkgconf/dont-merge-fragments.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libpkgconf/dont-merge-fragments.patch')
-rw-r--r--libpkgconf/dont-merge-fragments.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/libpkgconf/dont-merge-fragments.patch b/libpkgconf/dont-merge-fragments.patch
new file mode 100644
index 0000000..d8e5eae
--- /dev/null
+++ b/libpkgconf/dont-merge-fragments.patch
@@ -0,0 +1,26 @@
+diff --git a/libpkgconf/libpkgconf/fragment.c b/libpkgconf/libpkgconf/fragment.c
+index b431694..37830c8 100644
+--- a/libpkgconf/libpkgconf/fragment.c
++++ b/libpkgconf/libpkgconf/fragment.c
+@@ -150,7 +150,8 @@ pkgconf_fragment_add(const pkgconf_client_t *client, pkgconf_list_t *list, const
+ {
+ char mungebuf[PKGCONF_ITEM_SIZE];
+
+- if (list->tail != NULL && list->tail->data != NULL)
++ if (list->tail != NULL && list->tail->data != NULL &&
++ !(client->flags & PKGCONF_PKG_PKGF_DONT_MERGE_SPECIAL_FRAGMENTS))
+ {
+ pkgconf_fragment_t *parent = list->tail->data;
+
+diff --git a/libpkgconf/libpkgconf/libpkgconf.h b/libpkgconf/libpkgconf/libpkgconf.h
+index 44a9e7f..6f4c8b5 100644
+--- a/libpkgconf/libpkgconf/libpkgconf.h
++++ b/libpkgconf/libpkgconf/libpkgconf.h
+@@ -247,6 +247,7 @@ PKGCONF_API pkgconf_cross_personality_t *pkgconf_cross_personality_find(const ch
+ #define PKGCONF_PKG_PKGF_DONT_RELOCATE_PATHS 0x0800
+ #define PKGCONF_PKG_PKGF_SIMPLIFY_ERRORS 0x1000
+ #define PKGCONF_PKG_PKGF_DONT_FILTER_INTERNAL_CFLAGS 0x2000
++#define PKGCONF_PKG_PKGF_DONT_MERGE_SPECIAL_FRAGMENTS 0x4000
+
+ #define PKGCONF_PKG_DEPF_INTERNAL 0x1
+