Browse Source

xmlrpc-c: Import from oldpackages, add myself as pkg maintainer, update license info.

- remove (marked BROKEN) abyss and libxml2 variants.
- build internal expat variant only.

Signed-off-by: Ted Hess <thess@kitschensync.net>
Ted Hess 10 years ago
parent
commit
6a1aed4e38

+ 226
- 0
libs/xmlrpc-c/Makefile View File

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

+ 11
- 0
libs/xmlrpc-c/patches/001-config.mk.in.patch View File

@@ -0,0 +1,11 @@
1
+--- a/config.mk.in
2
++++ b/config.mk.in
3
+@@ -175,7 +175,7 @@ ifeq ($(patsubst linux-gnu%,linux-gnu,$(
4
+   shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN))
5
+   shliblefn = $(1:%=%.$(SHLIB_SUFFIX))
6
+ #  SHLIB_CLIB = -lc
7
+-  LDFLAGS_SHLIB = -shared -Wl,-soname,$(SONAME) $(SHLIB_CLIB)
8
++  LDFLAGS_SHLIB = -shared -Wl,-soname,$(SONAME) $(SHLIB_CLIB) $(LDFLAGS)
9
+   CFLAGS_SHLIB=-fPIC
10
+ endif
11
+ 

+ 13
- 0
libs/xmlrpc-c/patches/002-automake-compat.patch View File

@@ -0,0 +1,13 @@
1
+--- a/configure.in
2
++++ b/configure.in
3
+@@ -224,9 +224,7 @@ dnl Checks for programs.
4
+ dnl =======================================================================
5
+ 
6
+ AC_PROG_CC
7
+-if test x"$enable_cplusplus" != xno; then
8
+-    AC_PROG_CXX
9
+-fi
10
++AC_PROG_CXX
11
+ 
12
+ 
13
+ dnl =======================================================================