From: Joris Dobbelsteen <joris.dobbelsteen@sioux.eu>
To: ptxdist <ptxdist@pengutronix.de>
Subject: [ptxdist] [PATCH v2] Add gSOAP 2.8.12, C/C++ SOAP library
Date: Wed, 22 May 2013 13:44:48 +0200 [thread overview]
Message-ID: <1369223088.16896.18.camel@fqgym4j> (raw)
Add gSOAP 2.8.12, C/C++ SOAP library.
- Includes patch to support cross-compile, using host code generators instead of just compiled ones.
- soapccp2/wsdl2h code generators as host tools
Updated dependencies as well. This creates a few header files and static libraries, plus a code generator, so there is no package for the target system.
Signed-off-by: Joris Dobbelsteen <joris.dobbelsteen@sioux.eu>
---
...Add-cross-compile-support-for-gsoap-tools.patch | 72 ++++++++++++++++++++
patches/gsoap-2.8/autogen.sh | 18 +++++
patches/gsoap-2.8/series | 4 ++
rules/gsoap.in | 20 ++++++
rules/gsoap.make | 51 ++++++++++++++
rules/host-gsoap.in | 7 ++
rules/host-gsoap.make | 31 +++++++++
7 files changed, 203 insertions(+)
create mode 100644 patches/gsoap-2.8/0001-Add-cross-compile-support-for-gsoap-tools.patch
create mode 100755 patches/gsoap-2.8/autogen.sh
create mode 100644 patches/gsoap-2.8/series
create mode 100644 rules/gsoap.in
create mode 100644 rules/gsoap.make
create mode 100644 rules/host-gsoap.in
create mode 100644 rules/host-gsoap.make
diff --git a/patches/gsoap-2.8/0001-Add-cross-compile-support-for-gsoap-tools.patch b/patches/gsoap-2.8/0001-Add-cross-compile-support-for-gsoap-tools.patch
new file mode 100644
index 0000000..3642321
--- /dev/null
+++ b/patches/gsoap-2.8/0001-Add-cross-compile-support-for-gsoap-tools.patch
@@ -0,0 +1,72 @@
+From: unknown author <unknown.author@example.com>
+Date: Wed, 22 May 2013 11:20:35 +0200
+Subject: [PATCH] Add cross-compile support for gsoap tools
+
+---
+ configure.in | 12 ++++++++++++
+ gsoap/samples/autotest/Makefile.am | 2 --
+ gsoap/samples/databinding/Makefile.am | 2 --
+ gsoap/wsdl/Makefile.am | 1 -
+ 4 files changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 60a6eb2..602c3fd 100644
+--- a/configure.in
++++ b/configure.in
+@@ -86,6 +86,18 @@ case "${host}" in
+ *) platform=UNKNOWN ;;
+ esac
+
++if test "$cross_compiling" = yes; then
++ # cross-compiling
++ AC_PATH_PROG([SOAP],[soapcpp2])
++ AC_PATH_PROG([WSDL],[wsdl2h])
++else
++ # regular compile
++ SOAP="\$(top_srcdir)/gsoap/src/soapcpp2"
++ WSDL="\$(top_srcdir)/gsoap/wsdl/wsdl2h"
++fi
++AC_SUBST(SOAP)
++AC_SUBST(WSDL)
++
+ AC_SUBST(SAMPLE_EXTRA_LIBS)
+ AC_SUBST(platform)
+
+diff --git a/gsoap/samples/autotest/Makefile.am b/gsoap/samples/autotest/Makefile.am
+index 35641a2..0d3e85e 100644
+--- a/gsoap/samples/autotest/Makefile.am
++++ b/gsoap/samples/autotest/Makefile.am
+@@ -7,8 +7,6 @@ AUTOMAKE_OPTIONS = foreign 1.4
+
+ INCLUDES=-I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
+ AM_LDFLAGS=$(INCLUDES) -I$(srcdir) -L$(srcdir)
+-SOAP=$(top_srcdir)/gsoap/src/soapcpp2
+-WSDL=$(top_srcdir)/gsoap/wsdl/wsdl2h
+ WSDL_FLAGS=-P -t $(srcdir)/typemap.dat
+ SOAP_FLAGS=-SL -T -I$(top_srcdir)/gsoap/import
+ WSDLINPUT=$(srcdir)/examples.wsdl
+diff --git a/gsoap/samples/databinding/Makefile.am b/gsoap/samples/databinding/Makefile.am
+index beac10a..68ed194 100644
+--- a/gsoap/samples/databinding/Makefile.am
++++ b/gsoap/samples/databinding/Makefile.am
+@@ -7,8 +7,6 @@ AUTOMAKE_OPTIONS = foreign 1.4
+
+ INCLUDES=-I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
+ AM_LDFLAGS=$(INCLUDES) -I$(srcdir) -L$(srcdir)
+-SOAP=$(top_srcdir)/gsoap/src/soapcpp2
+-WSDL=$(top_srcdir)/gsoap/wsdl/wsdl2h
+ WSDL_FLAGS=-g -t $(srcdir)/addresstypemap.dat
+ SOAP_FLAGS=-0 -CS -p address -I$(top_srcdir)/gsoap/import
+ WSDLINPUT=$(srcdir)/address.xsd
+diff --git a/gsoap/wsdl/Makefile.am b/gsoap/wsdl/Makefile.am
+index d431760..2ec66f9 100644
+--- a/gsoap/wsdl/Makefile.am
++++ b/gsoap/wsdl/Makefile.am
+@@ -9,7 +9,6 @@ AUTOMAKE_OPTIONS = foreign 1.4
+ # AM_LDFLAGS=$(INCLUDES) -I$(srcdir) -L$(srcdir)
+ AM_LDFLAGS=-L$(srcdir)
+ AM_CPPFLAGS=-I$(top_srcdir)/gsoap
+-SOAP=$(top_builddir)/gsoap/src/soapcpp2
+ SOAP_CPP_LIB=$(top_builddir)/gsoap/$(WSDL2H_SOAP_CPP_LIB)
+ SOAP_CPP_SRC=wsdlC.cpp
+ SOAPHEADER=$(srcdir)/wsdl.h
diff --git a/patches/gsoap-2.8/autogen.sh b/patches/gsoap-2.8/autogen.sh
new file mode 100755
index 0000000..df78c38
--- /dev/null
+++ b/patches/gsoap-2.8/autogen.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+set -e
+
+aclocal $ACLOCAL_FLAGS
+
+libtoolize \
+ --force \
+ --copy
+
+autoreconf \
+ --force \
+ --install \
+ --warnings=cross \
+ --warnings=syntax \
+ --warnings=obsolete \
+ --warnings=unsupported
+
diff --git a/patches/gsoap-2.8/series b/patches/gsoap-2.8/series
new file mode 100644
index 0000000..0301695
--- /dev/null
+++ b/patches/gsoap-2.8/series
@@ -0,0 +1,4 @@
+# generated by git-ptx-patches
+#tag:base --start-number 1
+0001-Add-cross-compile-support-for-gsoap-tools.patch
+# f175a30fe1b80a8548826b0c0f6d5684 - git-ptx-patches magic
diff --git a/rules/gsoap.in b/rules/gsoap.in
new file mode 100644
index 0000000..ccec2fb
--- /dev/null
+++ b/rules/gsoap.in
@@ -0,0 +1,20 @@
+## SECTION=system_libraries
+
+menuconfig GSOAP
+ tristate
+ select HOST_GSOAP
+ select OPENSSL if GSOAP_SSL
+ select ZLIB
+ prompt "gsoap"
+ help
+ High-performance C/C++ SOAP library.
+if GSOAP
+
+config GSOAP_SSL
+ bool
+ default n
+ prompt "Enable SSL support"
+ help
+ High-performance C/C++ SOAP library.
+
+endif
diff --git a/rules/gsoap.make b/rules/gsoap.make
new file mode 100644
index 0000000..61b7e11
--- /dev/null
+++ b/rules/gsoap.make
@@ -0,0 +1,51 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2013 by Joris Dobbelsteen <joris.dobbelsteen@sioux.eu>
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_GSOAP) += gsoap
+
+#
+# Paths and names
+#
+GSOAP_VERSION := 2.8.12
+GSOAP_MD5 := 5700d26fc6fe3073d038349e19c3640d
+GSOAP := gsoap-2.8
+GSOAP_SUFFIX := zip
+GSOAP_URL := $(PTXCONF_SETUP_SFMIRROR)/gsoap2/gsoap_${GSOAP_VERSION}.$(GSOAP_SUFFIX)
+GSOAP_SOURCE := $(SRCDIR)/gsoap_${GSOAP_VERSION}.$(GSOAP_SUFFIX)
+GSOAP_DIR := $(BUILDDIR)/${GSOAP}
+GSOAP_LICENSE := GPLv2/propriatary
+GSOAP_MAKE_PAR := NO
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+#
+# autoconf
+#
+GSOAP_CONF_TOOL := autoconf
+GSOAP_CONF_OPT := $(CROSS_AUTOCONF_USR) \
+ --$(call ptx/endis, PTXCONF_GSOAP_SSL)-ssl \
+ $(GLOBAL_IPV6_OPTION) \
+ --disable-samples
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/gsoap.targetinstall:
+ @$(call targetinfo)
+# It only contains code generator, static libraries and headers. Nothing for the target.
+ @$(call touch)
+
+# vim: syntax=make
diff --git a/rules/host-gsoap.in b/rules/host-gsoap.in
new file mode 100644
index 0000000..277937d
--- /dev/null
+++ b/rules/host-gsoap.in
@@ -0,0 +1,7 @@
+## SECTION=hosttools_noprompt
+
+config HOST_GSOAP
+ tristate
+ select HOST_ZLIB
+ select HOST_OPENSSL if GSOAP_SSL
+
diff --git a/rules/host-gsoap.make b/rules/host-gsoap.make
new file mode 100644
index 0000000..18cbabd
--- /dev/null
+++ b/rules/host-gsoap.make
@@ -0,0 +1,31 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2011 by Joris Dobbelsteen <joris.dobbelsteen@sioux.eu>
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+HOST_PACKAGES-$(PTXCONF_HOST_GSOAP) += host-gsoap
+
+HOST_GSOAP_MAKE_PAR := NO
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+#
+# autoconf
+#
+HOST_GSOAP_CONF_TOOL := autoconf
+HOST_GSOAP_CONF_OPT := $(HOST_AUTOCONF) \
+ --$(call ptx/endis, PTXCONF_GSOAP_SSL)-ssl \
+ $(GLOBAL_IPV6_OPTION) \
+ --disable-samples
+
+# vim: syntax=make
--
1.7.10.4
--
ptxdist mailing list
ptxdist@pengutronix.de
next reply other threads:[~2013-05-22 11:44 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-22 11:44 Joris Dobbelsteen [this message]
2013-05-31 10:29 ` Michael Olbrich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1369223088.16896.18.camel@fqgym4j \
--to=joris.dobbelsteen@sioux.eu \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox