summaryrefslogtreecommitdiffstats
path: root/src/gsoap.mk
diff options
context:
space:
mode:
authorMark Brand <mabrand@mabrand.nl>2010-01-22 23:48:09 (GMT)
committerMark Brand <mabrand@mabrand.nl>2010-01-22 23:48:09 (GMT)
commitbf2e7cdfcef3007a5bde5f5d7df8e57896b5de09 (patch)
treed31092fc40e965bc66a1dfd2ad5d8a64674345c2 /src/gsoap.mk
parent604a7c50dc2232c6c6df6c70ccf73ffce78047e1 (diff)
downloadmxe-bf2e7cdfcef3007a5bde5f5d7df8e57896b5de09.zip
mxe-bf2e7cdfcef3007a5bde5f5d7df8e57896b5de09.tar.gz
mxe-bf2e7cdfcef3007a5bde5f5d7df8e57896b5de09.tar.bz2
new package: gsoap
Diffstat (limited to 'src/gsoap.mk')
-rw-r--r--src/gsoap.mk63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/gsoap.mk b/src/gsoap.mk
new file mode 100644
index 0000000..b37c6d6
--- /dev/null
+++ b/src/gsoap.mk
@@ -0,0 +1,63 @@
+# This file is part of mingw-cross-env.
+# See doc/index.html or doc/README for further information.
+
+# gSOAP
+PKG := gsoap
+$(PKG)_IGNORE :=
+$(PKG)_VERSION := 2.7.15
+$(PKG)_CHECKSUM := 9c93d71103ec70074fa8db43d0fe1d3a1fff8d55
+$(PKG)_SUBDIR := gsoap-2.7
+$(PKG)_FILE := gsoap_$($(PKG)_VERSION).tar.gz
+$(PKG)_WEBSITE := http://gsoap2.sourceforge.net/
+$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/gsoap2/gSOAP/2.7.15 stable/$($(PKG)_FILE)
+$(PKG)_DEPS := gcc openssl
+
+define $(PKG)_UPDATE
+# not implemented
+endef
+
+define $(PKG)_BUILD
+
+ # gsoap-1-link-dom.patch
+ # The code in dom.c(pp) is needed for some applications.
+ # Patch adds to the libs for easy linking in mingw-cross-env.
+ # Rename dom.cpp to dom_cpp.cpp to prevent collision between
+ # dom.c and dom.cpp at dom.o.
+
+ # gsoap-2-autogen.patch
+ # Need to process changes to Makefile.am.
+ # aclocal
+ # automake --add-missing
+ # autoconf
+
+ # Native build to get tools wsdl2h and soapcpp2
+ cd '$(1)' && ./configure
+
+ # Parallel bulds can fail
+ $(MAKE) -C '$(1)'/gsoap -j 1
+
+ # Install the native tools manually
+ $(INSTALL) -m755 '$(1)'/gsoap/wsdl/wsdl2h '$(PREFIX)/bin/$(TARGET)-wsdl2h'
+ $(INSTALL) -m755 '$(1)'/gsoap/src/soapcpp2 '$(PREFIX)/bin/$(TARGET)-soapcpp2'
+
+ $(MAKE) -C '$(1)' -j '$(JOBS)' clean
+
+ # Build for mingw. Static by default.
+ # Prevent undefined reference to _rpl_malloc.
+ # http://groups.google.com/group/ikarus-users/browse_thread/thread/fd1d101eac32633f
+ cd '$(1)' && export ac_cv_func_malloc_0_nonnull=yes && ./configure \
+ --prefix='$(PREFIX)/$(TARGET)' \
+ --host='$(TARGET)'
+
+ # Building for mingw requires native soapcpp2
+ ln -s '$(PREFIX)/bin/$(TARGET)-soapcpp2' '$(1)'/gsoap/src/soapcpp2
+
+ # Parallel bulds can fail
+ $(MAKE) -C '$(1)' -j 1
+
+ $(MAKE) -C '$(1)' -j 1 install
+ # Apparently there is a tradition of compiling gsoap source files into applications.
+ # Since we linked dom.cpp and dom.c into the libraries, this should not be necessary.
+ # But we bend to tradition and install these sources into mingw-cross-env.
+ $(INSTALL) -m644 '$(1)/gsoap/'*.c '$(1)/gsoap/'*.cpp '$(PREFIX)/$(TARGET)/share/gsoap'
+endef