2 # Copyright (C) 2007-2010 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR)/rules.mk
12 PKG_VERSION:=1.24.4_r$(PKG_REV)
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=http://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced
17 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
18 PKG_SOURCE_VERSION:=$(PKG_REV)
24 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
26 include $(INCLUDE_DIR)/package.mk
28 define Package/xmlrpc-c_common
31 TITLE:=XML-RPC library - common
32 URL:=http://xmlrpc-c.sourceforge.net/
35 define Package/xmlrpc-c_internal
38 TITLE:=XML-RPC library - (ueses internal expat variant)
39 URL:=http://xmlrpc-c.sourceforge.net/
40 DEPENDS:=+xmlrpc-c_common
45 define Package/xmlrpc-c
48 TITLE:=XML-RPC library
49 URL:=http://xmlrpc-c.sourceforge.net/
50 DEPENDS:=+xmlrpc-c_internal
53 define Package/xmlrpc-c_libxml2
56 TITLE:=XML-RPC library - (uses libxml2)
57 URL:=http://xmlrpc-c.sourceforge.net/
58 DEPENDS:=+xmlrpc-c_common +libxml2 @BROKEN
63 define Package/xmlrpc-c_client
66 TITLE:=XML-RPC library - client
67 URL:=http://xmlrpc-c.sourceforge.net/
68 DEPENDS:=+xmlrpc-c +libcurl
71 define Package/xmlrpc-c_server
74 TITLE:=XML-RPC library - server
75 URL:=http://xmlrpc-c.sourceforge.net/
79 define Package/xmlrpc-c_abyss
82 TITLE:=XML-RPC library - abyss
83 URL:=http://xmlrpc-c.sourceforge.net/
84 DEPENDS:=+xmlrpc-c_common
87 define Package/xmlrpc-c_server-abyss
90 TITLE:=XML-RPC library - abyss server
91 URL:=http://xmlrpc-c.sourceforge.net/
92 DEPENDS:=+xmlrpc-c_server +xmlrpc-c_abyss
95 define Package/xmlrpc-c/description/Default
96 Programming library for writing an XML-RPC server or client in C or C++.
97 XML-RPC is a standard network protocol to allow a client program to make
98 a simple remote procedure call (RPC) type request of a server.
101 Package/xmlrpc-c_common/description = $(Package/xmlrpc-c/description/Default)
102 Package/xmlrpc-c_libxml2/description = $(Package/xmlrpc-c/description/Default)
103 Package/xmlrpc-c_internal/description = $(Package/xmlrpc-c/description/Default)
105 Package/xmlrpc-c_libxml2/description += Uses external libxml2 library (quite big)
106 Package/xmlrpc-c_internal/description += Uses internal expat variant (stripped down)
109 --disable-wininet-client \
110 --disable-libwww-client \
111 --enable-abyss-server \
112 --disable-cplusplus \
114 --disable-abyss-threads \
117 ifeq ($(BUILD_VARIANT),libxml2)
119 --enable-libxml2-backend
122 ifeq ($(BUILD_VARIANT),internal)
124 --disable-libxml2-backend
128 ( cd $(PKG_BUILD_DIR)/lib/expat/gennmtab && cc -I$(PKG_BUILD_DIR) -c gennmtab.c -o gennmtab.o && cc -o gennmtab gennmtab.o )
129 $(call Build/Compile/Default)
132 define Build/InstallDev
140 $(PKG_INSTALL_DIR)/usr/include/* \
144 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc*.{a,so*} \
148 $(PKG_INSTALL_DIR)/usr/bin/xmlrpc-c-config \
152 's,HEADERINST_DIR="/usr/include",HEADERINST_DIR="$(STAGING_DIR)/usr/include",g' \
153 $(2)/bin/xmlrpc-c-config
156 's,LIBINST_DIR="/usr/lib",LIBINST_DIR="$(STAGING_DIR)/usr/lib",g' \
157 $(2)/bin/xmlrpc-c-config
160 define Package/xmlrpc-c_libxml2/install
165 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc.so* \
169 define Package/xmlrpc-c_internal/install
174 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc.so* \
178 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_xmltok.so* \
182 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_xmlparse.so* \
186 define Package/xmlrpc-c_server/install
191 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_server.so* \
195 define Package/xmlrpc-c_abyss/install
200 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_abyss.so* \
204 define Package/xmlrpc-c_server-abyss/install
209 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_server_abyss.so* \
213 define Package/xmlrpc-c_client/install
218 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_client* \
222 define Package/xmlrpc-c_common/install
227 $(PKG_INSTALL_DIR)/usr/lib/libxmlrpc_util.so* \
232 $(eval $(call BuildPackage,xmlrpc-c))
233 $(eval $(call BuildPackage,xmlrpc-c_common))
234 $(eval $(call BuildPackage,xmlrpc-c_libxml2))
235 $(eval $(call BuildPackage,xmlrpc-c_internal))
236 $(eval $(call BuildPackage,xmlrpc-c_server))
237 $(eval $(call BuildPackage,xmlrpc-c_abyss))
238 $(eval $(call BuildPackage,xmlrpc-c_server-abyss))
239 $(eval $(call BuildPackage,xmlrpc-c_client))