summaryrefslogtreecommitdiffstats
path: root/external/meta-openembedded/meta-oe/recipes-support/gsoap/gsoap/0001-Fix-out-of-tree-builds.patch
blob: 5ceb4bf025a2a2c2f6c2ed80e8091e2d4bbc24d1 (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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
From 8a10b6bd556426616e93f15639f369defbeca33f Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 14 Aug 2017 11:58:58 -0700
Subject: [PATCH] Fix out of tree builds

When build dir is not same as sourcedir then the build failed due
to use of $(srcdir) variable which assumes source = build therefore
replace that with top_srcdir

Additionally move the conditional addition of sources to Makefile.am
instead of adding it in configure.ac, since then we can use top_srcdir
variable to access those sources too otherwise its not possible to
specify the right dir for these sources

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Upstream-Status: Submitted[https://sourceforge.net/p/gsoap2/patches/171/]

 configure.ac                          |  5 +++--
 gsoap/Makefile.am                     | 14 +++++++-------
 gsoap/samples/autotest/Makefile.am    |  8 ++++----
 gsoap/samples/databinding/Makefile.am |  8 ++++----
 gsoap/wsdl/Makefile.am                | 15 +++++++++------
 5 files changed, 27 insertions(+), 23 deletions(-)

diff --git a/configure.ac b/configure.ac
index 0631c18..c36e696 100644
--- a/configure.ac
+++ b/configure.ac
@@ -265,7 +265,7 @@ if test "x$with_openssl" = "xyes"; then
     WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
     # an ugly hack to get httpda and smdevp plugins to conditionally
     # compile with wsdl2h when OPENSSL is available
-    WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/smdevp.c ../plugin/threads.c -lssl -lcrypto -lz"
+    WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lssl -lcrypto -lz"
     SAMPLE_INCLUDES=
     SAMPLE_SSL_LIBS="-lssl -lcrypto -lz"
     WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
@@ -289,12 +289,13 @@ else
   SAMPLE_INCLUDES=
   WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
 fi
+AM_CONDITIONAL(WITH_OPENSSL, test "x$with_openssl" = "xyes" -a "x$with_gnutls" != "xyes")
+AC_SUBST(WITH_OPENSSL)
 AC_SUBST(WSDL2H_EXTRA_FLAGS)
 AC_SUBST(WSDL2H_EXTRA_LIBS)
 AC_SUBST(SAMPLE_INCLUDES)
 AC_SUBST(SAMPLE_SSL_LIBS)
 AC_SUBST(WSDL2H_SOAP_CPP_LIB)
-
 # enable the compile of the samples
 AC_ARG_ENABLE(samples,
 [  --enable-samples	  enable compile for the gsoap samples],
diff --git a/gsoap/Makefile.am b/gsoap/Makefile.am
index 7273b82..9c0c89f 100644
--- a/gsoap/Makefile.am
+++ b/gsoap/Makefile.am
@@ -13,26 +13,26 @@ AM_CXXFLAGS = $(SOAPCPP2_DEBUG) -D$(platform)
 AM_CFLAGS = $(SOAPCPP2_DEBUG) -D$(platform)
 
 # Install all soapcpp2 and wsdl2h files into ${prefix}/share/gsoap
-nobase_pkgdata_DATA = $(srcdir)/import/* $(srcdir)/plugin/* $(srcdir)/WS/* $(srcdir)/custom/* $(srcdir)/extras/*
+nobase_pkgdata_DATA = $(top_srcdir)/gsoap/import/* $(top_srcdir)/gsoap/plugin/* $(top_srcdir)/gsoap/WS/* $(top_srcdir)/gsoap/custom/* $(top_srcdir)/gsoap/extras/*
 
 ## we cannot build stdsoap2.o from 2 different sources (stdsoap2.cpp and stdsoap2.c), so we need an intermediate target:
 stdsoap2_ck.c: stdsoap2.cpp
-	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ck.c
+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ck.c
 
 stdsoap2_cpp.cpp: stdsoap2.cpp
-	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_cpp.cpp
+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_cpp.cpp
 
 stdsoap2_ck_cpp.cpp: stdsoap2.cpp
-	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ck_cpp.cpp
+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ck_cpp.cpp
 
 stdsoap2_ssl.c: stdsoap2.cpp
-	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ssl.c
+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ssl.c
 
 stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
-	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ssl_cpp.cpp
+	$(LN_S) -f $(top_srcdir)/gsoap/stdsoap2.cpp stdsoap2_ssl_cpp.cpp
 ## do the same fo dom.cpp since we want to link it into the cpp libs and dom.c into the c libs
 dom_cpp.cpp: dom.cpp
-	$(LN_S) -f $(srcdir)/dom.cpp dom_cpp.cpp
+	$(LN_S) -f $(top_srcdir)/gsoap/dom.cpp dom_cpp.cpp
 
 lib_LIBRARIES = libgsoap.a libgsoap++.a libgsoapck.a libgsoapck++.a libgsoapssl.a libgsoapssl++.a
 
diff --git a/gsoap/samples/autotest/Makefile.am b/gsoap/samples/autotest/Makefile.am
index 36adf51..61e514c 100644
--- a/gsoap/samples/autotest/Makefile.am
+++ b/gsoap/samples/autotest/Makefile.am
@@ -6,13 +6,13 @@
 AUTOMAKE_OPTIONS = subdir-objects foreign 1.4
 
 CPPFLAGS=-I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
-AM_LDFLAGS=$(CPPFLAGS) -I$(srcdir) -L$(srcdir)
+AM_LDFLAGS=$(CPPFLAGS) -I$(top_srcdir)/gsoap/samples/autotest -L$(top_srcdir)/gsoap/samples/autotest
 SOAP=$(top_srcdir)/gsoap/src/soapcpp2$(EXEEXT)
 WSDL=$(top_srcdir)/gsoap/wsdl/wsdl2h$(EXEEXT)
-WSDL_FLAGS=-d -P -t $(srcdir)/typemap.dat
+WSDL_FLAGS=-d -P -t $(top_srcdir)/gsoap/samples/autotest/typemap.dat
 SOAP_FLAGS=-SL -T -I$(top_srcdir)/gsoap/import -I$(top_srcdir)/gsoap/custom
-WSDLINPUT=$(srcdir)/examples.wsdl
-SOAPHEADER=$(srcdir)/examples.h
+WSDLINPUT=$(top_srcdir)/gsoap/samples/autotest/examples.wsdl
+SOAPHEADER=$(top_srcdir)/gsoap/samples/autotest/examples.h
 SOAP_CPP_SRC=soapC.cpp soapServer.cpp
 SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
 
diff --git a/gsoap/samples/databinding/Makefile.am b/gsoap/samples/databinding/Makefile.am
index 892d4fd..86ad482 100644
--- a/gsoap/samples/databinding/Makefile.am
+++ b/gsoap/samples/databinding/Makefile.am
@@ -6,13 +6,13 @@
 AUTOMAKE_OPTIONS = subdir-objects foreign 1.4
 
 CPPFLAGS=$(SAMPLE_INCLUDES) -I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
-AM_LDFLAGS=$(AM_CPPFLAGS) -I$(srcdir) -L$(srcdir)
+AM_LDFLAGS=$(AM_CPPFLAGS) -I$(top_srcdir)/gsoap/samples/databinding -L$(top_srcdir)/gsoap/samples/databinding
 SOAP=$(top_srcdir)/gsoap/src/soapcpp2$(EXEEXT)
 WSDL=$(top_srcdir)/gsoap/wsdl/wsdl2h$(EXEEXT)
-WSDL_FLAGS=-g -t $(srcdir)/addresstypemap.dat
+WSDL_FLAGS=-g -t $(top_srcdir)/gsoap/samples/databinding/addresstypemap.dat
 SOAP_FLAGS=-0 -CS -p address -I$(top_srcdir)/gsoap/import
-WSDLINPUT=$(srcdir)/address.xsd
-SOAPHEADER=$(srcdir)/address.h
+WSDLINPUT=$(top_srcdir)/gsoap/samples/databinding/address.xsd
+SOAPHEADER=$(top_srcdir)/gsoap/samples/databinding/address.h
 SOAP_CPP_SRC=addressC.cpp
 SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
 
diff --git a/gsoap/wsdl/Makefile.am b/gsoap/wsdl/Makefile.am
index b8da5db..9f2aefa 100644
--- a/gsoap/wsdl/Makefile.am
+++ b/gsoap/wsdl/Makefile.am
@@ -6,14 +6,14 @@
 AUTOMAKE_OPTIONS = foreign 1.4
 
 # INCLUDES=-I$(top_srcdir)/gsoap
-# AM_LDFLAGS=$(INCLUDES) -I$(srcdir) -L$(srcdir)
-AM_LDFLAGS=-L$(srcdir) -I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
+# AM_LDFLAGS=$(INCLUDES) -I$(top_srcdir)/gsoap/wsdl -L$(top_srcdir)/gsoap/wsdl
+AM_LDFLAGS=-L$(top_srcdir)/gsoap/wsdl -I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
 AM_CPPFLAGS=-I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
 SOAP=$(top_builddir)/gsoap/src/soapcpp2$(EXEEXT)
 SOAP_CPP_LIB=$(top_builddir)/gsoap/$(WSDL2H_SOAP_CPP_LIB)
 SOAP_CPP_SRC=wsdlC.cpp
-SOAPHEADER=$(srcdir)/wsdl.h
-SOAP_FLAGS=-SC -pwsdl -I$(srcdir) -I$(top_srcdir)/gsoap/import
+SOAPHEADER=$(top_srcdir)/gsoap/wsdl/wsdl.h
+SOAP_FLAGS=-SC -pwsdl -I$(top_srcdir)/gsoap/wsdl -I$(top_srcdir)/gsoap/import
 BUILT_SOURCES=$(SOAP_CPP_SRC)
 # WSDL2H_EXTRA_FLAGS=-DWITH_OPENSSL -DWITH_GZIP # defined in configure.in
 # WSDL2H_EXTRA_LIBS=-lssl -lcrypto -lz # defined in configure.in
@@ -24,11 +24,14 @@ $(SOAP_CPP_SRC) : $(SOAPHEADER)
 #LIBS=
 
 bin_PROGRAMS=wsdl2h
-
+if WITH_OPENSSL
+wsdl2h_LDADD=$(SOAP_CPP_LIB) $(top_srcdir)/gsoap/plugin/httpda.c $(top_srcdir)/gsoap/plugin/smdevp.c $(top_srcdir)/gsoap/plugin/threads.c $(WSDL2H_EXTRA_LIBS)
+else
+wsdl2h_LDADD=$(SOAP_CPP_LIB) $(WSDL2H_EXTRA_LIBS)
+endif
 wsdl2h_CFLAGS=$(C_DEBUG_FLAGS) $(SOAPCPP2_NO_C_LOCALE) $(WSDL2H_EXTRA_FLAGS)
 wsdl2h_CXXFLAGS=$(C_DEBUG_FLAGS) $(SOAPCPP2_NO_C_LOCALE) $(WSDL2H_EXTRA_FLAGS) $(WSDL2H_IMPORTPATH)
 wsdl2h_CPPFLAGS=$(AM_CPPFLAGS) $(SOAPCPP2_NONAMESPACES) -D$(platform)
 wsdl2h_SOURCES=wsdl2h.cpp wsdl.cpp wadl.cpp schema.cpp types.cpp service.cpp soap.cpp mime.cpp wsp.cpp bpel.cpp $(SOAP_CPP_SRC)
-wsdl2h_LDADD=$(SOAP_CPP_LIB) $(WSDL2H_EXTRA_LIBS)
 
 CLEANFILES= *~ *C.cpp *H.h *Stub.h *.nsmap
-- 
2.14.1