summaryrefslogtreecommitdiff
path: root/libpkgconf/dont-merge-fragments.patch
blob: d8e5eae3b85aae433269d4ec1f7c442fd0c47db3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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