662
|
1 # This file is part of mingw-cross-env. |
|
2 # See doc/index.html or doc/README for further information. |
|
3 |
|
4 # gSOAP |
|
5 PKG := gsoap |
|
6 $(PKG)_IGNORE := |
|
7 $(PKG)_VERSION := 2.7.15 |
|
8 $(PKG)_CHECKSUM := 9c93d71103ec70074fa8db43d0fe1d3a1fff8d55 |
|
9 $(PKG)_SUBDIR := gsoap-2.7 |
|
10 $(PKG)_FILE := gsoap_$($(PKG)_VERSION).tar.gz |
|
11 $(PKG)_WEBSITE := http://gsoap2.sourceforge.net/ |
|
12 $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/gsoap2/gSOAP/2.7.15 stable/$($(PKG)_FILE) |
|
13 $(PKG)_DEPS := gcc openssl |
|
14 |
|
15 define $(PKG)_UPDATE |
|
16 # not implemented |
|
17 endef |
|
18 |
|
19 define $(PKG)_BUILD |
|
20 |
|
21 # gsoap-1-link-dom.patch |
|
22 # The code in dom.c(pp) is needed for some applications. |
|
23 # Patch adds to the libs for easy linking in mingw-cross-env. |
|
24 # Rename dom.cpp to dom_cpp.cpp to prevent collision between |
|
25 # dom.c and dom.cpp at dom.o. |
|
26 |
|
27 # gsoap-2-autogen.patch |
|
28 # Need to process changes to Makefile.am. |
|
29 # aclocal |
|
30 # automake --add-missing |
|
31 # autoconf |
|
32 |
|
33 # Native build to get tools wsdl2h and soapcpp2 |
|
34 cd '$(1)' && ./configure |
|
35 |
|
36 # Parallel bulds can fail |
|
37 $(MAKE) -C '$(1)'/gsoap -j 1 |
|
38 |
|
39 # Install the native tools manually |
|
40 $(INSTALL) -m755 '$(1)'/gsoap/wsdl/wsdl2h '$(PREFIX)/bin/$(TARGET)-wsdl2h' |
|
41 $(INSTALL) -m755 '$(1)'/gsoap/src/soapcpp2 '$(PREFIX)/bin/$(TARGET)-soapcpp2' |
|
42 |
|
43 $(MAKE) -C '$(1)' -j '$(JOBS)' clean |
|
44 |
|
45 # Build for mingw. Static by default. |
|
46 # Prevent undefined reference to _rpl_malloc. |
|
47 # http://groups.google.com/group/ikarus-users/browse_thread/thread/fd1d101eac32633f |
|
48 cd '$(1)' && export ac_cv_func_malloc_0_nonnull=yes && ./configure \ |
|
49 --prefix='$(PREFIX)/$(TARGET)' \ |
|
50 --host='$(TARGET)' |
|
51 |
|
52 # Building for mingw requires native soapcpp2 |
|
53 ln -s '$(PREFIX)/bin/$(TARGET)-soapcpp2' '$(1)'/gsoap/src/soapcpp2 |
|
54 |
|
55 # Parallel bulds can fail |
|
56 $(MAKE) -C '$(1)' -j 1 |
|
57 |
|
58 $(MAKE) -C '$(1)' -j 1 install |
|
59 # Apparently there is a tradition of compiling gsoap source files into applications. |
|
60 # Since we linked dom.cpp and dom.c into the libraries, this should not be necessary. |
|
61 # But we bend to tradition and install these sources into mingw-cross-env. |
|
62 $(INSTALL) -m644 '$(1)/gsoap/'*.c '$(1)/gsoap/'*.cpp '$(PREFIX)/$(TARGET)/share/gsoap' |
|
63 endef |