From: Nicolas Thill Date: Sat, 22 Jul 2006 22:45:14 +0000 (+0000) Subject: port libupnp to buildroot-ng X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=d8a39cf98ba539eca23e263bbde71040055a45e1 port libupnp to buildroot-ng SVN-Revision: 4222 --- diff --git a/libs/libupnp/Makefile b/libs/libupnp/Makefile new file mode 100644 index 0000000000..7480fab687 --- /dev/null +++ b/libs/libupnp/Makefile @@ -0,0 +1,65 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libupnp +PKG_VERSION:=1.2.1a +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@SF/upnp +PKG_MD5SUM:=e72b3550bf064eedf080f16f09688891 +PKG_CAT:=zcat + +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(INCLUDE_DIR)/package.mk + +define Package/libupnp + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+libpthread + TITLE:=UPnP SDK library + DESCRIPTION:=UPnP (Universal Plug and Play) SDK library.\\\ + The Universal Plug and Play (UPnP) SDK for Linux provides support \\\ + for building UPnP-compliant control points, devices, and bridges \\\ + on Linux. + URL:=http://upnp.sourceforge.net/ +endef + +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR)/upnp \ + $(TARGET_CONFIGURE_OPTS) \ + OPT_FLAGS="$(TARGET_CFLAGS)" \ + STRIP=/bin/true +endef + +define Package/libupnp/install + install -m0755 -d $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/upnp/bin/lib{ixml,threadutil,upnp}.so $(1)/usr/lib/ +endef + +define Build/InstallDev + mkdir -p $(STAGING_DIR)/usr/include/upnp + $(CP) $(PKG_BUILD_DIR)/upnp/inc/*.h $(STAGING_DIR)/usr/include/upnp/ + mkdir -p $(STAGING_DIR)/usr/lib + $(CP) $(PKG_BUILD_DIR)/upnp/bin/lib{ixml,threadutil,upnp}.so $(STAGING_DIR)/usr/lib/ +endef + +define Build/UninstallDev + rm -rf \ + $(STAGING_DIR)/usr/include/upnp \ + $(STAGING_DIR)/usr/lib/lib{ixml,threadutil,upnp}.so +endef + +$(eval $(call BuildPackage,libupnp)) diff --git a/libs/libupnp/patches/libupnp-1.2.1a-gcc4.patch b/libs/libupnp/patches/libupnp-1.2.1a-gcc4.patch new file mode 100644 index 0000000000..2ea3f88052 --- /dev/null +++ b/libs/libupnp/patches/libupnp-1.2.1a-gcc4.patch @@ -0,0 +1,17 @@ +Index: libupnp-1.2.1a/ixml/src/element.c +=================================================================== +--- libupnp-1.2.1a.orig/ixml/src/element.c ++++ libupnp-1.2.1a/ixml/src/element.c +@@ -454,9 +454,9 @@ ixmlElement_removeAttributeNode( IN IXML + element->n.firstAttr = nextSib; + } + +- ( IXML_Attr * ) attrNode->parentNode = NULL; +- ( IXML_Attr * ) attrNode->prevSibling = NULL; +- ( IXML_Attr * ) attrNode->nextSibling = NULL; ++ attrNode->parentNode = NULL; ++ attrNode->prevSibling = NULL; ++ attrNode->nextSibling = NULL; + *rtAttr = ( IXML_Attr * ) attrNode; + return IXML_SUCCESS; + diff --git a/libs/libupnp/patches/opt-flags.patch b/libs/libupnp/patches/opt-flags.patch new file mode 100644 index 0000000000..c6a8ce5996 --- /dev/null +++ b/libs/libupnp/patches/opt-flags.patch @@ -0,0 +1,315 @@ +diff -ruN libupnp-1.2.1-orig/ixml/src/Makefile libupnp-1.2.1-1/ixml/src/Makefile +--- libupnp-1.2.1-orig/ixml/src/Makefile 2003-01-14 23:06:12.000000000 +0100 ++++ libupnp-1.2.1-1/ixml/src/Makefile 2005-05-15 19:32:46.000000000 +0200 +@@ -47,6 +47,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE), 1) + CC = insure + endif +@@ -71,7 +73,7 @@ + ifeq ($(DEBUG),1) + DEBUG_FLAGS = -O -g -DDEBUG + else +- DEBUG_FLAGS = -Os -DNDEBUG ++ DEBUG_FLAGS = $(OPT_FLAGS) -DNDEBUG + STRIPU = $(STRIP) $(OBJ_DIR)/$(TARGET_OUTPUT) + endif + +diff -ruN libupnp-1.2.1-orig/threadutil/src/Makefile libupnp-1.2.1-1/threadutil/src/Makefile +--- libupnp-1.2.1-orig/threadutil/src/Makefile 2003-01-14 23:06:12.000000000 +0100 ++++ libupnp-1.2.1-1/threadutil/src/Makefile 2005-05-15 19:32:33.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + DEPDIR = .deps + df = $(DEPDIR)/$(*F) + +@@ -74,7 +76,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + CLEAN_PATH=debug/$(DIR_PATH) + else +-DEBUG_FLAGS += -Os -DNO_DEBUG -DNDEBUG ++DEBUG_FLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + LOCALDIR +=../bin/$(DIR_PATH) + TARGET_OUTPUT = libthreadutil.so + OBJ_DIR = obj/$(DIR_PATH) +diff -ruN libupnp-1.2.1-orig/upnp/src/api/makefile libupnp-1.2.1-1/upnp/src/api/makefile +--- libupnp-1.2.1-orig/upnp/src/api/makefile 2003-01-14 23:06:13.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/api/makefile 2005-05-15 19:33:04.000000000 +0200 +@@ -43,6 +43,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE), 1) + CC = insure + endif +@@ -64,7 +66,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = ../lib/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = ../lib/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/gena/Makefile libupnp-1.2.1-1/upnp/src/gena/Makefile +--- libupnp-1.2.1-orig/upnp/src/gena/Makefile 2003-01-14 23:06:13.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/gena/Makefile 2005-05-15 19:33:32.000000000 +0200 +@@ -43,6 +43,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC=insure + endif +@@ -60,7 +62,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/genlib/client_table/Makefile libupnp-1.2.1-1/upnp/src/genlib/client_table/Makefile +--- libupnp-1.2.1-orig/upnp/src/genlib/client_table/Makefile 2003-01-14 23:06:13.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/genlib/client_table/Makefile 2005-05-15 19:33:41.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC=insure + endif +@@ -73,7 +75,7 @@ + else + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = ../../lib/$(DIR_PATH) +-CFLAGS += -Os -D_REENTRANT -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -D_REENTRANT -DNO_DEBUG -DNDEBUG + endif + + TARGET_OUTPUT = $(UPNP_LIB_DIR)client_table.o +diff -ruN libupnp-1.2.1-orig/upnp/src/genlib/miniserver/Makefile libupnp-1.2.1-1/upnp/src/genlib/miniserver/Makefile +--- libupnp-1.2.1-orig/upnp/src/genlib/miniserver/Makefile 2003-01-14 23:06:13.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/genlib/miniserver/Makefile 2005-05-15 19:33:56.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC=insure + endif +@@ -60,7 +62,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = ../../lib/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = ../../lib/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/genlib/net/Makefile libupnp-1.2.1-1/upnp/src/genlib/net/Makefile +--- libupnp-1.2.1-orig/upnp/src/genlib/net/Makefile 2003-01-14 23:06:13.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/genlib/net/Makefile 2005-05-15 19:34:07.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + LIBS=../../lib + UPNP_INC_DIR = -I../../inc -I../../../inc -I ../../../../threadutil/src/win32 \ + -I ../../../../threadutil/src -I ../../../../ixml/inc +@@ -59,7 +61,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/genlib/net/http/Makefile libupnp-1.2.1-1/upnp/src/genlib/net/http/Makefile +--- libupnp-1.2.1-orig/upnp/src/genlib/net/http/Makefile 2003-01-14 23:06:13.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/genlib/net/http/Makefile 2005-05-15 19:34:18.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + UPNP_INC_DIR = -I ../../../../inc -I ../../../inc \ + -I ../../../../../threadutil/src/win32 \ + -I ../../../../../threadutil/src -I ../../../../../ixml/inc +@@ -57,7 +59,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/genlib/net/uri/makefile libupnp-1.2.1-1/upnp/src/genlib/net/uri/makefile +--- libupnp-1.2.1-orig/upnp/src/genlib/net/uri/makefile 2003-01-14 23:06:13.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/genlib/net/uri/makefile 2005-05-15 19:35:22.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + LIBS = ../../../lib + + +@@ -59,7 +61,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/genlib/service_table/Makefile libupnp-1.2.1-1/upnp/src/genlib/service_table/Makefile +--- libupnp-1.2.1-orig/upnp/src/genlib/service_table/Makefile 2003-01-14 23:06:14.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/genlib/service_table/Makefile 2005-05-15 19:35:33.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC=insure + endif +@@ -61,7 +63,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/genlib/util/Makefile libupnp-1.2.1-1/upnp/src/genlib/util/Makefile +--- libupnp-1.2.1-orig/upnp/src/genlib/util/Makefile 2003-01-14 23:06:14.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/genlib/util/Makefile 2005-05-15 19:35:44.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC=insure + endif +@@ -62,7 +64,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/soap/makefile libupnp-1.2.1-1/upnp/src/soap/makefile +--- libupnp-1.2.1-orig/upnp/src/soap/makefile 2003-01-14 23:06:14.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/soap/makefile 2005-05-15 19:35:55.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC = insure + endif +@@ -61,7 +63,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/ssdp/makefile libupnp-1.2.1-1/upnp/src/ssdp/makefile +--- libupnp-1.2.1-orig/upnp/src/ssdp/makefile 2003-01-14 23:06:14.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/ssdp/makefile 2005-05-15 19:36:04.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC = insure + endif +@@ -61,7 +63,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/urlconfig/Makefile libupnp-1.2.1-1/upnp/src/urlconfig/Makefile +--- libupnp-1.2.1-orig/upnp/src/urlconfig/Makefile 2003-01-14 23:06:14.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/urlconfig/Makefile 2005-05-15 19:36:30.000000000 +0200 +@@ -43,6 +43,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC = insure + endif +@@ -60,7 +62,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif +diff -ruN libupnp-1.2.1-orig/upnp/src/uuid/Makefile libupnp-1.2.1-1/upnp/src/uuid/Makefile +--- libupnp-1.2.1-orig/upnp/src/uuid/Makefile 2003-01-14 23:06:14.000000000 +0100 ++++ libupnp-1.2.1-1/upnp/src/uuid/Makefile 2005-05-15 19:36:53.000000000 +0200 +@@ -44,6 +44,8 @@ + STRIP = strip + endif + ++OPT_FLAGS = -Os ++ + ifeq ($(INSURE),1) + CC = insure + endif +@@ -61,7 +63,7 @@ + OBJ_DIR = obj/debug/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/debug/$(DIR_PATH) + else +-CFLAGS += -Os -DNO_DEBUG -DNDEBUG ++CFLAGS += $(OPT_FLAGS) -DNO_DEBUG -DNDEBUG + OBJ_DIR = obj/$(DIR_PATH) + UPNP_LIB_DIR = $(LIBS)/$(DIR_PATH) + endif