Merge pull request #4948 from ldir-EDB0/remwireguard
[feed/packages.git] / libs / xmlrpc-c / Makefile
1 #
2 # Copyright (C) 2007-2014 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=xmlrpc-c
11 PKG_VERSION:=1.39.12
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
15 PKG_SOURCE_URL:=@SF/xmlrpc-c/Xmlrpc-c%20Super%20Stable/$(PKG_VERSION)
16 PKG_HASH:=d830f3264a832dfe09f629cc64036acfd08121692526d0fabe090f7ff881ce08
17
18 PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
19 PKG_LICENSE:=VARIOUS
20 PKG_LICENSE_FILES:=doc/COPYING
21
22 PKG_FIXUP:=autoreconf
23 PKG_INSTALL:=1
24 PKG_BUILD_PARALLEL:=0
25
26 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
27
28 include $(INCLUDE_DIR)/package.mk
29
30 define Package/xmlrpc-c/Default
31 SECTION:=libs
32 CATEGORY:=Libraries
33 TITLE:=XML-RPC library
34 URL:=http://xmlrpc-c.sourceforge.net/
35 endef
36
37 define Package/xmlrpc-c-common
38 $(call Package/xmlrpc-c/Default)
39 TITLE+= - common
40 DEPENDS+= +libpthread
41 HIDDEN:=1
42 endef
43
44 define Package/xmlrpc-c-internal
45 $(call Package/xmlrpc-c/Default)
46 TITLE+= (uses internal expat variant)
47 DEPENDS:=+xmlrpc-c-common
48 # PROVIDES:=xmlrpc-c
49 VARIANT:=internal
50 HIDDEN:=1
51 endef
52
53 define Package/xmlrpc-c
54 $(call Package/xmlrpc-c/Default)
55 TITLE+= (uses internal expat variant)
56 DEPENDS:=+xmlrpc-c-internal
57 endef
58
59 define Package/xmlrpc-c-libxml2
60 $(call Package/xmlrpc-c/Default)
61 TITLE+= (uses libxml2)
62 DEPENDS:=+xmlrpc-c-common +libxml2 @BROKEN
63 # PROVIDES:=xmlrpc-c
64 VARIANT:=libxml2
65 endef
66
67 define Package/xmlrpc-c-client
68 $(call Package/xmlrpc-c/Default)
69 TITLE+= - client
70 DEPENDS:=+xmlrpc-c +libcurl
71 endef
72
73 define Package/xmlrpc-c-server
74 $(call Package/xmlrpc-c/Default)
75 TITLE+= - server
76 DEPENDS:=+xmlrpc-c
77 endef
78
79 define Package/xmlrpc-c-abyss
80 $(call Package/xmlrpc-c/Default)
81 TITLE+= - abyss
82 DEPENDS:=+xmlrpc-c-common @BROKEN
83 endef
84
85 define Package/xmlrpc-c-server-abyss
86 $(call Package/xmlrpc-c/Default)
87 TITLE+= - abyss server
88 DEPENDS:=+xmlrpc-c-server +xmlrpc-c-abyss
89 endef
90
91 define Package/xmlrpc-c/description/Default
92 Programming library for writing an XML-RPC server or client in C or C++.
93 XML-RPC is a standard network protocol to allow a client program to make
94 a simple remote procedure call (RPC) type request of a server.
95 endef
96
97 Package/xmlrpc-c-common/description = $(Package/xmlrpc-c/description/Default)
98 Package/xmlrpc-c-libxml2/description = $(Package/xmlrpc-c/description/Default)
99 Package/xmlrpc-c-internal/description = $(Package/xmlrpc-c/description/Default)
100
101 Package/xmlrpc-c-libxml2/description += Uses external libxml2 library (quite big)
102 Package/xmlrpc-c-internal/description += Uses internal expat variant (stripped down)
103
104 CONFIGURE_ARGS+= \
105 --disable-wininet-client \
106 --disable-libwww-client \
107 --disable-abyss-server \
108 --disable-cplusplus \
109 --disable-abyss-threads \
110 --disable-cgi-server
111
112 ifeq ($(BUILD_VARIANT),libxml2)
113 CONFIGURE_ARGS += \
114 --enable-libxml2-backend
115 endif
116
117 ifeq ($(BUILD_VARIANT),internal)
118 CONFIGURE_ARGS += \
119 --disable-libxml2-backend
120 endif
121
122 define Build/Compile
123 ( cd $(PKG_BUILD_DIR)/lib/expat/gennmtab && cc -I$(PKG_BUILD_DIR) -c gennmtab.c -o gennmtab.o && cc -o gennmtab gennmtab.o )
124 $(call Build/Compile/Default)
125 endef
126
127 define Build/InstallDev
128 $(INSTALL_DIR) \
129 $(1)/usr/include \
130 $(1)/usr/lib \
131 $(1)/usr/bin \
132 $(2)/bin
133 $(CP) \
134 $(PKG_INSTALL_DIR)/usr/include/* \
135 $(1)/usr/include/
136 $(CP) \
137 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc*.{a,so*} \
138 $(1)/usr/lib/
139 $(INSTALL_BIN) \
140 $(PKG_INSTALL_DIR)/usr/bin/xmlrpc-c-config \
141 $(2)/bin/
142 $(SED) \
143 's,HEADERINST_DIR="/usr/include",HEADERINST_DIR="$(STAGING_DIR)/usr/include",g' \
144 $(2)/bin/xmlrpc-c-config
145 $(SED) \
146 's,LIBINST_DIR="/usr/lib",LIBINST_DIR="$(STAGING_DIR)/usr/lib",g' \
147 $(2)/bin/xmlrpc-c-config
148 endef
149
150 define Package/xmlrpc-c-libxml2/install
151 $(INSTALL_DIR) \
152 $(1)/usr/lib
153 $(CP) \
154 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc.so* \
155 $(1)/usr/lib/
156 endef
157
158 define Package/xmlrpc-c-internal/install
159 $(INSTALL_DIR) \
160 $(1)/usr/lib
161 $(CP) \
162 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc.so* \
163 $(1)/usr/lib/
164 $(CP) \
165 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_xmltok.so* \
166 $(1)/usr/lib/
167 $(CP) \
168 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_xmlparse.so* \
169 $(1)/usr/lib/
170 endef
171
172 define Package/xmlrpc-c-server/install
173 $(INSTALL_DIR) \
174 $(1)/usr/lib
175 $(CP) \
176 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_server.so* \
177 $(1)/usr/lib/
178 endef
179
180 define Package/xmlrpc-c-abyss/install
181 $(INSTALL_DIR) \
182 $(1)/usr/lib
183 $(CP) \
184 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_abyss.so* \
185 $(1)/usr/lib/
186 endef
187
188 define Package/xmlrpc-c-server-abyss/install
189 $(INSTALL_DIR) \
190 $(1)/usr/lib
191 $(CP) \
192 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_server_abyss.so* \
193 $(1)/usr/lib/
194 endef
195
196 define Package/xmlrpc-c-client/install
197 $(INSTALL_DIR) \
198 $(1)/usr/lib
199 $(CP) \
200 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_client* \
201 $(1)/usr/lib/
202 endef
203
204 define Package/xmlrpc-c-common/install
205 $(INSTALL_DIR) \
206 $(1)/usr/lib
207 $(CP) \
208 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_util.so* \
209 $(1)/usr/lib/
210 endef
211
212 define Package/xmlrpc-c/install
213 true
214 endef
215
216 $(eval $(call BuildPackage,xmlrpc-c))
217 $(eval $(call BuildPackage,xmlrpc-c-common))
218 #$(eval $(call BuildPackage,xmlrpc-c-libxml2))
219 $(eval $(call BuildPackage,xmlrpc-c-internal))
220 $(eval $(call BuildPackage,xmlrpc-c-server))
221 #$(eval $(call BuildPackage,xmlrpc-c-abyss))
222 #$(eval $(call BuildPackage,xmlrpc-c-server-abyss))
223 $(eval $(call BuildPackage,xmlrpc-c-client))