Accepting request 76002 from home:jengelh:dev
The GSOAP libraries. OBS-URL: https://build.opensuse.org/request/show/76002 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gsoap?expand=0&rev=1
This commit is contained in:
commit
35670cd99c
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
121
gsoap-01-sharedlibs.diff
Normal file
121
gsoap-01-sharedlibs.diff
Normal file
@ -0,0 +1,121 @@
|
||||
From: Jan Engelhardt <jengelh@medozas.de>
|
||||
Date: 2011-07-01 17:19:00 +0200
|
||||
|
||||
build: always use shared libraries
|
||||
|
||||
---
|
||||
configure.in | 9 ++++-----
|
||||
gsoap/Makefile.am | 32 +++++++++++++++++++-------------
|
||||
gsoap/samples/autotest/Makefile.am | 2 +-
|
||||
gsoap/samples/databinding/Makefile.am | 2 +-
|
||||
4 files changed, 25 insertions(+), 20 deletions(-)
|
||||
|
||||
Index: gsoap-2.8.3/configure.in
|
||||
===================================================================
|
||||
--- gsoap-2.8.3.orig/configure.in
|
||||
+++ gsoap-2.8.3/configure.in
|
||||
@@ -16,8 +16,7 @@ AM_PROG_CC_C_O
|
||||
AM_PROG_LEX
|
||||
AC_PROG_YACC
|
||||
AC_PROG_CPP
|
||||
-AC_PROG_RANLIB
|
||||
-#AC_PROG_LIBTOOL
|
||||
+LT_INIT
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_AWK
|
||||
AC_PROG_INSTALL
|
||||
@@ -222,13 +221,13 @@ if test "x$with_openssl" = "xyes"; then
|
||||
WSDL2H_EXTRA_FLAGS="-DWITH_GNUTLS -DWITH_GZIP"
|
||||
WSDL2H_EXTRA_LIBS="-lgnutls -lgcrypt -lgpg-error -lz"
|
||||
SAMPLE_SSL_LIBS="-lgnutls -lgcrypt -lgpg-error -lz"
|
||||
- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
|
||||
+ WSDL2H_SOAP_CPP_LIB="libgsoapssl++.la"
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
|
||||
WSDL2H_EXTRA_LIBS="-lssl -lcrypto -lz"
|
||||
SAMPLE_SSL_LIBS="-lssl -lcrypto -lz"
|
||||
- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
|
||||
+ WSDL2H_SOAP_CPP_LIB="libgsoapssl++.la"
|
||||
fi
|
||||
if test -n "$OPENSSL"; then
|
||||
WSDL2H_EXTRA_FLAGS="-I${OPENSSL}/include ${WSDL2H_EXTRA_FLAGS}"
|
||||
@@ -240,7 +239,7 @@ else
|
||||
WSDL2H_EXTRA_FLAGS=
|
||||
WSDL2H_EXTRA_LIBS=
|
||||
SAMPLE_SSL_LIBS=
|
||||
- WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
|
||||
+ WSDL2H_SOAP_CPP_LIB="libgsoap++.la"
|
||||
fi
|
||||
AC_SUBST(WSDL2H_EXTRA_FLAGS)
|
||||
AC_SUBST(WSDL2H_EXTRA_LIBS)
|
||||
Index: gsoap-2.8.3/gsoap/Makefile.am
|
||||
===================================================================
|
||||
--- gsoap-2.8.3.orig/gsoap/Makefile.am
|
||||
+++ gsoap-2.8.3/gsoap/Makefile.am
|
||||
@@ -34,20 +34,26 @@ stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
|
||||
dom_cpp.cpp: dom.cpp
|
||||
$(LN_S) -f $(srcdir)/dom.cpp dom_cpp.cpp
|
||||
|
||||
-lib_LIBRARIES = libgsoap.a libgsoap++.a libgsoapck.a libgsoapck++.a libgsoapssl.a libgsoapssl++.a
|
||||
+lib_LTLIBRARIES = libgsoap.la libgsoap++.la libgsoapck.la libgsoapck++.la libgsoapssl.la libgsoapssl++.la
|
||||
|
||||
-libgsoap_a_SOURCES = stdsoap2.c dom.c
|
||||
-libgsoap_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
|
||||
-libgsoap___a_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
|
||||
-libgsoap___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
|
||||
-libgsoapck_a_SOURCES = stdsoap2_ck.c dom.c
|
||||
-libgsoapck_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
|
||||
-libgsoapck___a_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp
|
||||
-libgsoapck___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
|
||||
-libgsoapssl_a_SOURCES = stdsoap2_ssl.c dom.c
|
||||
-libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM
|
||||
-libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp
|
||||
-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM
|
||||
+libgsoap_la_SOURCES = stdsoap2.c dom.c
|
||||
+libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
|
||||
+libgsoap_la_LDFLAGS = -release ${PACKAGE_VERSION} -version-info 0:0:0
|
||||
+libgsoap___la_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
|
||||
+libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
|
||||
+libgsoap___la_LDFLAGS = ${libgsoap_la_LDFLAGS}
|
||||
+libgsoapck_la_SOURCES = stdsoap2_ck.c dom.c
|
||||
+libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
|
||||
+libgsoapck_la_LDFLAGS = ${libgsoap_la_LDFLAGS}
|
||||
+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 = ${libgsoap_la_LDFLAGS}
|
||||
+libgsoapssl_la_SOURCES = stdsoap2_ssl.c dom.c
|
||||
+libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM
|
||||
+libgsoapssl_la_LDFLAGS = ${libgsoap_la_LDFLAGS}
|
||||
+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
|
||||
+libgsoapssl___la_LDFLAGS = ${libgsoap_la_LDFLAGS}
|
||||
|
||||
BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp $(lib_LIBRARIES)
|
||||
|
||||
Index: gsoap-2.8.3/gsoap/samples/autotest/Makefile.am
|
||||
===================================================================
|
||||
--- gsoap-2.8.3.orig/gsoap/samples/autotest/Makefile.am
|
||||
+++ gsoap-2.8.3/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
|
||||
SOAP_CPP_SRC=soapC.cpp soapServer.cpp
|
||||
-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
|
||||
+SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
|
||||
|
||||
$(SOAP_CPP_SRC) : $(WSDLINPUT)
|
||||
$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
|
||||
Index: gsoap-2.8.3/gsoap/samples/databinding/Makefile.am
|
||||
===================================================================
|
||||
--- gsoap-2.8.3.orig/gsoap/samples/databinding/Makefile.am
|
||||
+++ gsoap-2.8.3/gsoap/samples/databinding/Makefile.am
|
||||
@@ -14,7 +14,7 @@ SOAP_FLAGS=-2 -CS -p address -I$(top_src
|
||||
WSDLINPUT=$(srcdir)/address.xsd
|
||||
SOAPHEADER=$(srcdir)/address.h
|
||||
SOAP_CPP_SRC=addressC.cpp
|
||||
-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
|
||||
+SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
|
||||
|
||||
$(SOAP_CPP_SRC) : $(WSDLINPUT)
|
||||
$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
|
31
gsoap-02-typepuns.diff
Normal file
31
gsoap-02-typepuns.diff
Normal file
@ -0,0 +1,31 @@
|
||||
From: Jan Engelhardt <jengelh@medozas.de>
|
||||
Date: 2011-07-01 17:19:00 +0200
|
||||
|
||||
src: fix invocation of undefined behavior
|
||||
|
||||
The int type may have a stricter alignment than buf, and as such,
|
||||
using *(int *)buf is prone to undefined behavior, usually manifesting
|
||||
themselves in SIGBUS.
|
||||
|
||||
---
|
||||
gsoap/stdsoap2.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
Index: gsoap-2.8.3/gsoap/stdsoap2.c
|
||||
===================================================================
|
||||
--- gsoap-2.8.3.orig/gsoap/stdsoap2.c
|
||||
+++ gsoap-2.8.3/gsoap/stdsoap2.c
|
||||
@@ -2946,10 +2946,12 @@ int
|
||||
SOAP_FMAC2
|
||||
soap_rand()
|
||||
{ unsigned char buf[4];
|
||||
+ int r;
|
||||
if (!soap_ssl_init_done)
|
||||
soap_ssl_init();
|
||||
RAND_pseudo_bytes(buf, 4);
|
||||
- return *(int*)buf;
|
||||
+ memcpy(&r, buf, sizeof(r));
|
||||
+ return r;
|
||||
}
|
||||
#endif
|
||||
#endif
|
29
gsoap-03-initext.diff
Normal file
29
gsoap-03-initext.diff
Normal file
@ -0,0 +1,29 @@
|
||||
From: Jan Engelhardt <jengelh@medozas.de>
|
||||
Date: 2011-07-01 17:19:00 +0200
|
||||
|
||||
build: resolve compiler warning
|
||||
|
||||
An extern declaration must not be a definition.
|
||||
|
||||
wsdl2h.cpp:88:7: warning: 'mapfile' initialized and declared 'extern'
|
||||
wsdl2h.cpp:89:7: warning: 'import_path' initialized and declared 'extern'
|
||||
wsdl2h.cpp:90:7: warning: 'cwd_path' initialized and declared 'extern'
|
||||
wsdl2h.cpp:91:7: warning: 'cppnamespace' initialized and declared 'extern'
|
||||
|
||||
---
|
||||
gsoap/wsdl/wsdl2h.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
Index: gsoap-2.8.3/gsoap/wsdl/wsdl2h.cpp
|
||||
===================================================================
|
||||
--- gsoap-2.8.3.orig/gsoap/wsdl/wsdl2h.cpp
|
||||
+++ gsoap-2.8.3/gsoap/wsdl/wsdl2h.cpp
|
||||
@@ -84,7 +84,7 @@ char *infile[MAXINFILES],
|
||||
*proxy_host = NULL,
|
||||
*proxy_userid = NULL,
|
||||
*proxy_passwd = NULL;
|
||||
-extern const char
|
||||
+const char
|
||||
*mapfile = WSDL_TYPEMAP_FILE,
|
||||
*import_path = WSDL2H_IMPORT_PATH,
|
||||
*cwd_path = NULL,
|
3
gsoap-2.8.3.tar.xz
Normal file
3
gsoap-2.8.3.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7c8dddc7242264d9c027ffab2d78729e68f5a951908b357b39e2194c8179b51a
|
||||
size 3004944
|
104
gsoap.spec
Normal file
104
gsoap.spec
Normal file
@ -0,0 +1,104 @@
|
||||
Name: gsoap
|
||||
Summary: Toolkit for C/C++ server and client web service applications
|
||||
Version: 2.8.3
|
||||
Release: 0
|
||||
Group: Development/Libraries/C and C++
|
||||
URL: http://gsoap2.sf.net/
|
||||
License: GPLv2
|
||||
|
||||
Source: gsoap-%version.tar.xz
|
||||
Patch1: gsoap-01-sharedlibs.diff
|
||||
Patch2: gsoap-02-typepuns.diff
|
||||
Patch3: gsoap-03-initext.diff
|
||||
BuildRoot: %_tmppath/%name-%version-build
|
||||
BuildRequires: bison, fdupes flex, gcc-c++, libgnutls-devel
|
||||
BuildRequires: libopenssl-devel, zlib-devel, xz
|
||||
|
||||
%description
|
||||
The gSOAP toolkit provides a cross-platform software development
|
||||
toolkit for C and C++ server and client Web service applications, and
|
||||
simplifies the overall use of XML in any type of application. The
|
||||
toolkit supports SOAP 1.1/1.2 RPC encoding and document/literal
|
||||
styles, WSDL 1.1, MTOM/MIME/DIME attachments (streaming),
|
||||
SOAP-over-UDP, request-response and one-way messaging. The toolkit
|
||||
also supports WS-Addressing and WS-Security, with several other WS-*
|
||||
available or under development.
|
||||
|
||||
Authors:
|
||||
--------
|
||||
Robert A. van Engelen <engelen@acm.org>
|
||||
|
||||
%package devel
|
||||
Summary: Development files for the gSOAP toolkit
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %name = %version
|
||||
|
||||
%description devel
|
||||
This package contains the development files for gSOAP.
|
||||
|
||||
%package -n libgsoap
|
||||
Summary: Runtime libraries for gSOAP
|
||||
Group: Development/Libraries/C and C++
|
||||
|
||||
%description -n libgsoap
|
||||
The gSOAP toolkit provides a cross-platform software development
|
||||
toolkit for C and C++ server and client Web service applications, and
|
||||
simplifies the overall use of XML in any type of application. The
|
||||
toolkit supports SOAP 1.1/1.2 RPC encoding and document/literal
|
||||
styles, WSDL 1.1, MTOM/MIME/DIME attachments (streaming),
|
||||
SOAP-over-UDP, request-response and one-way messaging. The toolkit
|
||||
also supports WS-Addressing and WS-Security, with several other WS-*
|
||||
available or under development.
|
||||
|
||||
Authors:
|
||||
--------
|
||||
Robert A. van Engelen <engelen@acm.org>
|
||||
|
||||
%package -n libgsoap-devel
|
||||
Summary: Development files for libgsoap
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %name = %version
|
||||
|
||||
%description -n libgsoap-devel
|
||||
This package contains the development files for libgsoap.
|
||||
|
||||
%prep
|
||||
%setup -qn gsoap-%version
|
||||
%patch -P 1 -P 2 -P 3 -p1
|
||||
|
||||
%build
|
||||
# Rebuild configure - fix that utterly long mktime test.
|
||||
autoreconf -fi;
|
||||
|
||||
%configure --enable-ipv6 --disable-static
|
||||
pushd gsoap/src/;
|
||||
make soapcpp2_yacc.c;
|
||||
popd;
|
||||
make %{?_smp_mflags};
|
||||
|
||||
%install
|
||||
b="%buildroot";
|
||||
make install DESTDIR="$b";
|
||||
find "$b" -type f -name "*.la" -delete;
|
||||
%fdupes %buildroot
|
||||
|
||||
%post -n libgsoap -p /sbin/ldconfig
|
||||
|
||||
%postun -n libgsoap -p /sbin/ldconfig
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%_bindir/*
|
||||
%_datadir/%name
|
||||
|
||||
%files -n libgsoap
|
||||
%defattr(-,root,root)
|
||||
%_libdir/*.so.*
|
||||
|
||||
%files -n libgsoap-devel
|
||||
%defattr(-,root,root)
|
||||
%_includedir/*
|
||||
%_libdir/*.so
|
||||
%_libdir/pkgconfig/*
|
||||
|
||||
%changelog
|
37
sanitize_source.sh
Normal file
37
sanitize_source.sh
Normal file
@ -0,0 +1,37 @@
|
||||
#!/bin/sh -x
|
||||
#
|
||||
# Shrink the gsoap archive from 11 MB -> 3 MB.
|
||||
#
|
||||
# Requires: fdupes hxtools
|
||||
|
||||
if ! which fdupes >/dev/null; then
|
||||
echo "fdupes not installed.";
|
||||
exit 1;
|
||||
fi;
|
||||
if ! which fduphl >/dev/null; then
|
||||
echo "hxtools:fduphl not installed.";
|
||||
exit 1;
|
||||
fi;
|
||||
|
||||
version="2.8.3";
|
||||
shortver="2.8"; # agh...
|
||||
|
||||
rm -Rf "gsoap-$shortver" "gsoap-$version";
|
||||
unzip "gsoap_$version.zip";
|
||||
|
||||
# Someone failed at sane version number tagging.
|
||||
mv "gsoap-$shortver" "gsoap-$version";
|
||||
|
||||
# Remove executables, backups.
|
||||
rm -Rf "gsoap-$version/gsoap/bin" \
|
||||
"gsoap-$version/samples/link++/xmas" \
|
||||
"gsoap-$version"/*.old \
|
||||
"gsoap-$version/autom4te.cache";
|
||||
find "gsoap-$version" -type f "(" \
|
||||
-iname "*.exe" -o -iname "*.dll" -o -name "*.o" -o \
|
||||
-name "*~" ")" -delete;
|
||||
fduphl "gsoap-$version";
|
||||
echo Now...
|
||||
find "gsoap-$version" -print0 | sort -z | \
|
||||
tar -T- --null --owner=root --group=root --no-recur --use=xz \
|
||||
-cvf "gsoap-$version.tar.xz";
|
Loading…
Reference in New Issue
Block a user