enable symbol versioning

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gsoap?expand=0&rev=84
This commit is contained in:
Jan Engelhardt 2017-01-24 14:45:05 +00:00 committed by Git OBS Bridge
parent 9d5f64ae24
commit dfa7ea86d0
4 changed files with 115 additions and 27 deletions

View File

@ -4,16 +4,24 @@ Date: 2011-07-01 17:19:00 +0200
build: always use shared libraries
---
configure.ac | 10 +++++-----
gsoap/Makefile.am | 34 +++++++++++++++++++++-------------
gsoap/samples/autotest/Makefile.am | 2 +-
gsoap/samples/databinding/Makefile.am | 2 +-
4 files changed, 28 insertions(+), 20 deletions(-)
configure.ac | 10 ++++----
gsoap/Makefile.am | 38 ++++++++++++++++++++++------------
gsoap/gsoap++.sym | 1
gsoap/gsoap.sym | 1
gsoap/gsoapck++.sym | 1
gsoap/gsoapck.sym | 1
gsoap/gsoapckssl++.sym | 1
gsoap/gsoapckssl.sym | 1
gsoap/gsoapssl++.sym | 1
gsoap/gsoapssl.sym | 1
gsoap/samples/autotest/Makefile.am | 2 -
gsoap/samples/databinding/Makefile.am | 2 -
12 files changed, 40 insertions(+), 20 deletions(-)
Index: gsoap-2.8.36/configure.ac
Index: gsoap-2.8.42/configure.ac
===================================================================
--- gsoap-2.8.36.orig/configure.ac
+++ gsoap-2.8.36/configure.ac
--- gsoap-2.8.42.orig/configure.ac
+++ gsoap-2.8.42/configure.ac
@@ -15,8 +15,8 @@ AM_PROG_CC_C_O
AM_PROG_LEX
AC_PROG_YACC
@ -52,11 +60,11 @@ Index: gsoap-2.8.36/configure.ac
fi
AC_SUBST(WSDL2H_EXTRA_FLAGS)
AC_SUBST(WSDL2H_EXTRA_LIBS)
Index: gsoap-2.8.36/gsoap/Makefile.am
Index: gsoap-2.8.42/gsoap/Makefile.am
===================================================================
--- gsoap-2.8.36.orig/gsoap/Makefile.am
+++ gsoap-2.8.36/gsoap/Makefile.am
@@ -34,20 +34,28 @@ stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
--- gsoap-2.8.42.orig/gsoap/Makefile.am
+++ gsoap-2.8.42/gsoap/Makefile.am
@@ -34,20 +34,32 @@ stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
dom_cpp.cpp: dom.cpp
$(LN_S) -f $(srcdir)/dom.cpp dom_cpp.cpp
@ -77,31 +85,83 @@ Index: gsoap-2.8.36/gsoap/Makefile.am
-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoap_la_SOURCES = stdsoap2.c dom.c
+libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
+libgsoap_la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoap.sym
+EXTRA_libgsoap_la_DEPENDENCIES = gsoap.sym
+libgsoap___la_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
+libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
+libgsoap___la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoap++.sym
+EXTRA_libgsoap___la_DEPENDENCIES = gsoap++.sym
+libgsoapck_la_SOURCES = stdsoap2_ck.c dom.c
+libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
+libgsoapck_la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapck.sym
+EXTRA_libgsoapck_la_DEPENDENCIES = gsoapck.sym
+libgsoapck___la_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp
+libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
+libgsoapck___la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapck++.sym
+EXTRA_libgsoapck___la_DEPENDENCIES = gsoapck++.sym
+libgsoapssl_la_SOURCES = stdsoap2_ssl.c dom.c
+libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoapssl_la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapssl.sym
+EXTRA_libgsoapssl_la_DEPENDENCIES = gsoapssl.sym
+libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp
+libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoap_la_LDFLAGS = -release ${PACKAGE_VERSION}
+libgsoap___la_LDFLAGS = ${libgsoap_la_LDFLAGS}
+libgsoapck_la_LDFLAGS = ${libgsoap_la_LDFLAGS}
+libgsoapck___la_LDFLAGS = ${libgsoap_la_LDFLAGS}
+libgsoapssl_la_LDFLAGS = ${libgsoap_la_LDFLAGS}
+libgsoapssl_la_LIBADD = ${SAMPLE_SSL_LIBS}
+libgsoapssl___la_LDFLAGS = ${libgsoap_la_LDFLAGS}
+libgsoapssl___la_LIBADD = ${SAMPLE_SSL_LIBS}
+libgsoapssl___la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapssl++.sym
+EXTRA_libgsoapssl___la_DEPENDENCIES = gsoapssl++.sym
BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp stdsoap2_ck.c stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp
Index: gsoap-2.8.36/gsoap/samples/autotest/Makefile.am
Index: gsoap-2.8.42/gsoap/gsoap++.sym
===================================================================
--- gsoap-2.8.36.orig/gsoap/samples/autotest/Makefile.am
+++ gsoap-2.8.36/gsoap/samples/autotest/Makefile.am
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoap++.sym
@@ -0,0 +1 @@
+"GSOAP++" { global: *; };
Index: gsoap-2.8.42/gsoap/gsoap.sym
===================================================================
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoap.sym
@@ -0,0 +1 @@
+GSOAP { global: *; };
Index: gsoap-2.8.42/gsoap/gsoapck++.sym
===================================================================
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoapck++.sym
@@ -0,0 +1 @@
+"GSOAPCK++" { global: *; };
Index: gsoap-2.8.42/gsoap/gsoapck.sym
===================================================================
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoapck.sym
@@ -0,0 +1 @@
+GSOAPCK { global: *; };
Index: gsoap-2.8.42/gsoap/gsoapckssl++.sym
===================================================================
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoapckssl++.sym
@@ -0,0 +1 @@
+"GSOAPCKSSL++" { global: *; };
Index: gsoap-2.8.42/gsoap/gsoapckssl.sym
===================================================================
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoapckssl.sym
@@ -0,0 +1 @@
+GSOAPCKSSL { global: *; };
Index: gsoap-2.8.42/gsoap/gsoapssl++.sym
===================================================================
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoapssl++.sym
@@ -0,0 +1 @@
+"GSOAPSSL++" { global: *; };
Index: gsoap-2.8.42/gsoap/gsoapssl.sym
===================================================================
--- /dev/null
+++ gsoap-2.8.42/gsoap/gsoapssl.sym
@@ -0,0 +1 @@
+GSOAPSSL { global: *; };
Index: gsoap-2.8.42/gsoap/samples/autotest/Makefile.am
===================================================================
--- gsoap-2.8.42.orig/gsoap/samples/autotest/Makefile.am
+++ gsoap-2.8.42/gsoap/samples/autotest/Makefile.am
@@ -14,7 +14,7 @@ SOAP_FLAGS=-SL -T -I$(top_srcdir)/gsoap/
WSDLINPUT=$(srcdir)/examples.wsdl
SOAPHEADER=$(srcdir)/examples.h
@ -111,10 +171,10 @@ Index: gsoap-2.8.36/gsoap/samples/autotest/Makefile.am
$(SOAP_CPP_SRC) : $(WSDLINPUT)
$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
Index: gsoap-2.8.36/gsoap/samples/databinding/Makefile.am
Index: gsoap-2.8.42/gsoap/samples/databinding/Makefile.am
===================================================================
--- gsoap-2.8.36.orig/gsoap/samples/databinding/Makefile.am
+++ gsoap-2.8.36/gsoap/samples/databinding/Makefile.am
--- gsoap-2.8.42.orig/gsoap/samples/databinding/Makefile.am
+++ gsoap-2.8.42/gsoap/samples/databinding/Makefile.am
@@ -14,7 +14,7 @@ SOAP_FLAGS=-0 -CS -p address -I$(top_src
WSDLINPUT=$(srcdir)/address.xsd
SOAPHEADER=$(srcdir)/address.h

26
gsoap-02-implicit.diff Normal file
View File

@ -0,0 +1,26 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2017-01-24 15:41:51.682076375 +0100
build: resolve compiler warnings
stdsoap2_ck.c: In function soap_s2float:
stdsoap2_ck.c:14147:19: warning: implicit declaration of function strtod_l [-Wimplicit-function-declaration]
*p = (float)strtod_l(s, &r, SOAP_LOCALE(soap));
References: https://sourceforge.net/p/gsoap2/bugs/1096/
---
gsoap/stdsoap2.cpp | 1 +
1 file changed, 1 insertion(+)
Index: gsoap-2.8.42/gsoap/stdsoap2.cpp
===================================================================
--- gsoap-2.8.42.orig/gsoap/stdsoap2.cpp
+++ gsoap-2.8.42/gsoap/stdsoap2.cpp
@@ -50,6 +50,7 @@ compiling, linking, and/or using OpenSSL
A commercial use license is available from Genivia, Inc., contact@genivia.com
--------------------------------------------------------------------------------
*/
+#define _GNU_SOURCE 1
#define GSOAP_LIB_VERSION 20842

View File

@ -7,6 +7,7 @@ Tue Jan 24 13:53:09 UTC 2017 - jengelh@inai.de
the library with: this replaces illegal UTF-8 input/output
with the replacement character U+FFFD (or define your own
`SOAP_UNKNOWN_UNICODE_CHAR`).
- Add gsoap-02-implicit.diff
-------------------------------------------------------------------
Thu Jan 19 09:06:14 UTC 2017 - jengelh@inai.de

View File

@ -29,6 +29,7 @@ Source: gsoap-%version.tar.xz
Source2: sanitize_source.sh
Patch1: gsoap-automake1_13.diff
Patch2: gsoap-01-sharedlibs.diff
Patch3: gsoap-02-implicit.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
@ -83,7 +84,7 @@ available or under development.
%prep
%setup -q
cmp gsoap/stdsoap2.cpp gsoap/stdsoap2.c
%patch -P 1 -P 2 -p1
%patch -P 1 -P 2 -P 3 -p1
ln -fs stdsoap2.cpp gsoap/stdsoap2.c
%build