commit | author | age
|
b551f6
|
1 |
# |
MN |
2 |
# This file and its contents are supplied under the terms of the |
|
3 |
# Common Development and Distribution License ("CDDL"). You may |
|
4 |
# only use this file in accordance with the terms of the CDDL. |
|
5 |
# |
|
6 |
# A full copy of the text of the CDDL should have accompanied this |
|
7 |
# source. A copy of the CDDL is also available via the Internet at |
|
8 |
# http://www.illumos.org/license/CDDL. |
|
9 |
# |
|
10 |
|
|
11 |
# |
|
12 |
# Copyright 2019 Michal Nowak |
|
13 |
# |
|
14 |
|
f4f0e4
|
15 |
OPENSSL_VERSION= 3.1 |
e5cdf1
|
16 |
USE_PARALLEL_BUILD= yes |
b551f6
|
17 |
include ../../../make-rules/shared-macros.mk |
MN |
18 |
|
14c7f2
|
19 |
COMPONENT_NAME= gsoap |
a8e168
|
20 |
COMPONENT_MAJOR_VERSION= 2.8 |
e5cdf1
|
21 |
COMPONENT_VERSION= $(COMPONENT_MAJOR_VERSION).133 |
14c7f2
|
22 |
COMPONENT_SUMMARY= Toolkit for SOAP/REST-based C/C++ server and client web service applications |
AW |
23 |
COMPONENT_PROJECT_URL= https://www.genivia.com/products.html |
a8e168
|
24 |
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_MAJOR_VERSION) |
14c7f2
|
25 |
COMPONENT_ARCHIVE= $(COMPONENT_NAME)_$(COMPONENT_VERSION).zip |
4a40a3
|
26 |
COMPONENT_ARCHIVE_URL= https://downloads.sourceforge.net/project/gsoap2/$(COMPONENT_ARCHIVE) |
e5cdf1
|
27 |
COMPONENT_ARCHIVE_HASH= sha256:93e124302c5775e115e661af2bf4e1f07fa05aef14f58ce65b5c27c833afe279 |
dc28fa
|
28 |
COMPONENT_FMRI= library/gsoap |
AW |
29 |
COMPONENT_CLASSIFICATION=System/Libraries |
14c7f2
|
30 |
COMPONENT_LICENSE= GPLv2+ with exceptions |
dc28fa
|
31 |
COMPONENT_LICENSE_FILE= LICENSE.txt |
b551f6
|
32 |
|
14c7f2
|
33 |
include $(WS_MAKE_RULES)/common.mk |
f4f0e4
|
34 |
|
AW |
35 |
CXXFLAGS += -I$(OPENSSL_INCDIR) |
|
36 |
CFLAGS += -I$(OPENSSL_INCDIR) |
b551f6
|
37 |
|
MN |
38 |
# Some samples need extra libraries, which are not autodetected |
|
39 |
LDFLAGS += -lsocket -lxnet -lnsl |
14c7f2
|
40 |
# Incite to use the provided openssl |
dc28fa
|
41 |
LDFLAGS += -L$(OPENSSL_LIBDIR) -R$(OPENSSL_LIBDIR) |
b551f6
|
42 |
|
MN |
43 |
# gsoap zip file contain a lot of enexpected files (binaries, non-GPL-licensed |
|
44 |
# files, etc), files we don't want, don't need, or perhaps can't even ship. |
|
45 |
# |
|
46 |
# What follows is a list of files to be removed according to Fedora gsoap.spec |
|
47 |
# (openSUSE does a simmilar thing): |
|
48 |
# |
|
49 |
# * XML files non-executable |
|
50 |
# * Documentation fonts non-executable |
|
51 |
# * we want all txt files to have unix end-of-line encoding |
|
52 |
# * remove stuff with gsoap license only - not GPL |
|
53 |
# * remove pre-compiled binaries |
|
54 |
# * Remove .DS_Store files |
|
55 |
COMPONENT_PRE_CONFIGURE_ACTION += \ |
|
56 |
cd $(SOURCE_DIR) ; \ |
|
57 |
find gsoap/samples/autotest/databinding/examples -name '*.xml' -exec chmod a-x {} ';' ; \ |
|
58 |
chmod a-x gsoap/doc/fonts/* ; \ |
|
59 |
for txt in `find . -name '*.txt'`; do \ |
|
60 |
dos2unix $$txt $$txt ; \ |
|
61 |
done ; \ |
|
62 |
rm -rf gsoap/extras gsoap/mod_gsoap gsoap/Symbian ; \ |
|
63 |
sed 's!$$(top_srcdir)/gsoap/extras/\*!!' -i gsoap/Makefile.am ; \ |
|
64 |
rm -rf gsoap/bin rm gsoap/samples/calc_vs2005/calc_vs2005/soapcpp2.exe \ |
|
65 |
gsoap/samples/rest/person gsoap/samples/wcf/Basic/TransportSecurity/calculator \ |
|
66 |
rm gsoap/VisualStudio2005/wsdl2h/wsdl2h/soapcpp2.exe ; \ |
|
67 |
find . -name .DS_Store -exec rm {} ';' ; \ |
|
68 |
autoreconf --install --force ; \ |
|
69 |
cp -a $(SOURCE_DIR)/* $(@D) ; |
|
70 |
|
|
71 |
CONFIGURE_SCRIPT = $(@D)/configure |
|
72 |
|
e5cdf1
|
73 |
CONFIGURE_OPTIONS += --disable-dependency-tracking |
dc28fa
|
74 |
CONFIGURE_OPTIONS += --enable-ipv6 |
b551f6
|
75 |
# Build and runs tests |
dc28fa
|
76 |
CONFIGURE_OPTIONS += --enable-samples |
AW |
77 |
CONFIGURE_OPTIONS += LT_SYS_LIBRARY_PATH="$(OPENSSL_LIBDIR)" |
|
78 |
CONFIGURE_OPTIONS += --with-openssl-incdir=$(OPENSSL_INCDIR) |
b551f6
|
79 |
|
MN |
80 |
# Parallel build fails. We either disable it, or build soapcpp2_yacc.c first. |
|
81 |
# We opt for the former. |
|
82 |
COMPONENT_BUILD_ARGS= |
|
83 |
|
|
84 |
# dos2unix |
|
85 |
REQUIRED_PACKAGES += system/extended-system-utilities |
dc28fa
|
86 |
|
b551f6
|
87 |
# Auto-generated dependencies |
MN |
88 |
REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG) |
14c7f2
|
89 |
REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG) |
f4f0e4
|
90 |
REQUIRED_PACKAGES += library/security/openssl-31 |
b551f6
|
91 |
REQUIRED_PACKAGES += library/zlib |
MN |
92 |
REQUIRED_PACKAGES += system/library |