summaryrefslogtreecommitdiff
path: root/net-vpn/openconnect/files/openconnect-9.11-json-cflags.patch
blob: c09e87bff7c988cb5e9da1aa23337c4e702b018e (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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
From ce49cf495276c737fe95725da8f0773742fb838d Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Thu, 18 May 2023 15:04:17 -0400
Subject: [PATCH] Move JSON_CFLAGS before LIBPROXY_CFLAGS

Depending on build options, libproxy-1.0.pc depends indirectly
on json-c.pc:

libproxy-1.0 -> gio-2.0 -> mount -> libcryptsetup -> json-c

This causes "pkg-config --cflags libproxy-1.0" to emit
"-I/usr/include/json-c".

json-c installs a "json.h" file that conflicts with the one provided by
json-parser. If json-c comes before json-parser on the compiler command,
we get a build failure:

openconnect-internal.h:1654:59: error: unknown type name 'json_value'

[ dwmw2: This is a combination of at *least* three different bugs in
         three different packages conspiring to be my problem. See
         https://gitlab.com/openconnect/openconnect/-/merge_requests/476#note_1397129468
         But still, working around it does no harm for now.
         Ironically, if the presence of json-c on the include path
         wasn't *entirely* gratuitous then hiding it by putting it
         last wouldn't actually work because then something would
         fail to include the json-c version of <json.h> instead. ]

Bug: https://bugs.gentoo.org/906662
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
---
 Makefile.am | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 495b46f2..a09c0614 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -128,10 +128,10 @@ endif
 
 libopenconnect_la_SOURCES = version.c $(library_srcs)
 libopenconnect_la_CFLAGS = $(AM_CFLAGS) $(SSL_CFLAGS) $(DTLS_SSL_CFLAGS) \
-	$(LIBXML2_CFLAGS) $(LIBPROXY_CFLAGS) $(ZLIB_CFLAGS) $(P11KIT_CFLAGS) \
-	$(TSS_CFLAGS) $(LIBSTOKEN_CFLAGS) $(LIBPSKC_CFLAGS) $(GSSAPI_CFLAGS) \
-	$(INTL_CFLAGS) $(ICONV_CFLAGS) $(LIBPCSCLITE_CFLAGS) $(LIBP11_CFLAGS) \
-	$(LIBLZ4_CFLAGS) $(JSON_CFLAGS)
+	$(LIBXML2_CFLAGS) $(JSON_CFLAGS) $(LIBPROXY_CFLAGS) $(ZLIB_CFLAGS) \
+	$(P11KIT_CFLAGS) $(TSS_CFLAGS) $(LIBSTOKEN_CFLAGS) $(LIBPSKC_CFLAGS) \
+	$(GSSAPI_CFLAGS) $(INTL_CFLAGS) $(ICONV_CFLAGS) $(LIBPCSCLITE_CFLAGS) \
+	$(LIBP11_CFLAGS) $(LIBLZ4_CFLAGS)
 libopenconnect_la_LIBADD = $(SSL_LIBS) $(DTLS_SSL_LIBS) \
 	$(LIBXML2_LIBS) $(LIBPROXY_LIBS) $(ZLIB_LIBS) $(P11KIT_LIBS) \
 	$(TSS_LIBS) $(LIBSTOKEN_LIBS) $(LIBPSKC_LIBS) $(GSSAPI_LIBS) \
-- 
GitLab