libs/xmlrpc-c: restore support for xmlrpc-c-libxml2 package
authorYegor Yefremov <redacted>
Thu, 30 Nov 2023 07:49:19 +0000 (08:49 +0100)
committerRosen Penev <redacted>
Fri, 1 Dec 2023 19:19:39 +0000 (11:19 -0800)
Remove xmlrpc-c Package definition and let both xmlrpc-c-internal
and xmlrpc-c-libxml2 provide xmlrpc-c.

Also add a patch removing the unnecessary linking.

Signed-off-by: Yegor Yefremov <redacted>
libs/xmlrpc-c/Makefile
libs/xmlrpc-c/patches/002-remove-unnecessary-linking.patch [new file with mode: 0644]

index 13e77fc7eb7855a44f15fef3888e7b9b5998c073..0ea2071d56a09296f025d02e2643d6066b9e7b28 100644 (file)
@@ -42,22 +42,15 @@ define Package/xmlrpc-c-internal
   $(call Package/xmlrpc-c/Default)
   TITLE+= (uses internal expat variant)
   DEPENDS:=+xmlrpc-c-common
-#  PROVIDES:=xmlrpc-c
+  PROVIDES:=xmlrpc-c
   VARIANT:=internal
-  HIDDEN:=1
-endef
-
-define Package/xmlrpc-c
-  $(call Package/xmlrpc-c/Default)
-  TITLE+= (uses internal expat variant)
-  DEPENDS:=+xmlrpc-c-internal
 endef
 
 define Package/xmlrpc-c-libxml2
   $(call Package/xmlrpc-c/Default)
   TITLE+= (uses libxml2)
-  DEPENDS:=+xmlrpc-c-common +libxml2 @BROKEN
-#  PROVIDES:=xmlrpc-c
+  DEPENDS:=+xmlrpc-c-common +libxml2
+  PROVIDES:=xmlrpc-c
   VARIANT:=libxml2
 endef
 
@@ -117,7 +110,7 @@ ifeq ($(BUILD_VARIANT),internal)
 endif
 
 define Build/Compile
-       ( cd $(PKG_BUILD_DIR)/lib/expat/gennmtab && cc -I$(PKG_BUILD_DIR) -c gennmtab.c -o gennmtab.o && cc -o gennmtab  gennmtab.o )
+       ( cd $(PKG_BUILD_DIR)/lib/expat/gennmtab && cc -I$(PKG_BUILD_DIR) -c gennmtab.c -o gennmtab.o && cc -o gennmtab gennmtab.o )
        $(call Build/Compile/Default)
 endef
 
@@ -207,13 +200,8 @@ define Package/xmlrpc-c-common/install
                $(1)/usr/lib/
 endef
 
-define Package/xmlrpc-c/install
-       true
-endef
-
-$(eval $(call BuildPackage,xmlrpc-c))
 $(eval $(call BuildPackage,xmlrpc-c-common))
-#$(eval $(call BuildPackage,xmlrpc-c-libxml2))
+$(eval $(call BuildPackage,xmlrpc-c-libxml2))
 $(eval $(call BuildPackage,xmlrpc-c-internal))
 $(eval $(call BuildPackage,xmlrpc-c-server))
 $(eval $(call BuildPackage,xmlrpc-c-abyss))
diff --git a/libs/xmlrpc-c/patches/002-remove-unnecessary-linking.patch b/libs/xmlrpc-c/patches/002-remove-unnecessary-linking.patch
new file mode 100644 (file)
index 0000000..0e21dcf
--- /dev/null
@@ -0,0 +1,37 @@
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -183,7 +183,7 @@ $(LIBXMLRPC_SERVER): \
+   $(call shliblefn, libxmlrpc)
+ $(LIBXMLRPC_SERVER): LIBOBJECTS = $(LIBXMLRPC_SERVER_MODS:%=%.osh)
+ $(LIBXMLRPC_SERVER): LIBDEP = \
+-   -L. -lxmlrpc $(XML_PARSER_LIBDEP) $(LIBXMLRPC_UTIL_LIBDEP)
++   -L. -lxmlrpc $(LIBXMLRPC_UTIL_LIBDEP)
+ LIBXMLRPC_SERVER_ABYSS = $(call shlibfn, libxmlrpc_server_abyss)
+@@ -197,7 +197,7 @@ $(LIBXMLRPC_SERVER_ABYSS): LIBOBJECTS =
+ $(LIBXMLRPC_SERVER_ABYSS): LIBDEP = \
+   -L. -lxmlrpc_server \
+   -L$(LIBXMLRPC_ABYSS_DIR) -lxmlrpc_abyss \
+-  -L. -lxmlrpc $(XML_PARSER_LIBDEP) $(LIBXMLRPC_UTIL_LIBDEP)
++  -L. -lxmlrpc $(LIBXMLRPC_UTIL_LIBDEP)
+ ifeq ($(MSVCRT),yes)
+   $(LIBXMLRPC_SERVER_ABYSS):  LIBDEP += -lws2_32 -lwsock32
+ endif
+@@ -212,7 +212,7 @@ $(LIBXMLRPC_SERVER_CGI): \
+ $(LIBXMLRPC_SERVER_CGI): LIBOBJECTS = $(LIBXMLRPC_SERVER_CGI_MODS:%=%.osh)
+ $(LIBXMLRPC_SERVER_CGI): LIBDEP = \
+   -L. -lxmlrpc_server \
+-  -L. -lxmlrpc $(XML_PARSER_LIBDEP) $(LIBXMLRPC_UTIL_LIBDEP)
++  -L. -lxmlrpc $(LIBXMLRPC_UTIL_LIBDEP)
+ LIBXMLRPC_CLIENT = $(call shlibfn, libxmlrpc_client)
+@@ -237,7 +237,6 @@ $(LIBXMLRPC_CLIENT): LIBOBJECTS = \
+ LIBXMLRPC_CLIENT_LIBDEP = \
+   -Lblddir/src -Lblddir/lib/libutil \
+   -lxmlrpc -lxmlrpc_util \
+-  $(XML_PARSER_LIBDEP) \
+   $(TRANSPORT_LIBDEP) \
+ $(LIBXMLRPC_CLIENT): LIBDEP = \
git clone https://git.99rst.org/PROJECT