diff --git a/package/Config.in b/package/Config.in index 0febb41e2..921db87fb 100644 --- a/package/Config.in +++ b/package/Config.in @@ -153,6 +153,7 @@ source "package/speex/Config.in" # libspeex source "package/sqlite/Config.in" # libsqlite source "package/sqlite2/Config.in" # libsqlite2 source "package/libtasn1/Config.in" +source "package/libupnp/Config.in" source "package/libusb/Config.in" source "package/libxml2/Config.in" source "package/libxslt/Config.in" diff --git a/package/Makefile b/package/Makefile index d8372cdd5..d74547af3 100644 --- a/package/Makefile +++ b/package/Makefile @@ -77,6 +77,7 @@ package-$(BR2_PACKAGE_LIBPNG) += libpng package-$(BR2_PACKAGE_LIBPTHREAD) += libpthread package-$(BR2_PACKAGE_LIBTASN1) += libtasn1 package-$(BR2_PACKAGE_LIBTOOL) += libtool +package-$(BR2_PACKAGE_LIBUPNP) += libupnp package-$(BR2_PACKAGE_LIBUSB) += libusb package-$(BR2_PACKAGE_LIBXML2) += libxml2 package-$(BR2_PACKAGE_LIBXSLT) += libxslt diff --git a/package/libupnp/Config.in b/package/libupnp/Config.in new file mode 100644 index 000000000..4f025c76c --- /dev/null +++ b/package/libupnp/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_LIBUPNP + tristate "libupnp - Universal Plug and Play (UPnP) SDK library" +# default m if CONFIG_DEVEL + default n + help + The Universal Plug and Play (UPnP) SDK for Linux provides support + for building UPnP-compliant control points, devices, and bridges + on Linux. + + http://upnp.sourceforge.net/ + + Depends: libpthread + + diff --git a/package/libupnp/Makefile b/package/libupnp/Makefile new file mode 100644 index 000000000..88c48e751 --- /dev/null +++ b/package/libupnp/Makefile @@ -0,0 +1,58 @@ +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libupnp +PKG_VERSION:=1.2.1a +PKG_RELEASE:=1 +PKG_MD5SUM:=e72b3550bf064eedf080f16f09688891 + +PKG_SOURCE_URL:=@SF/upnp +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_CAT:=zcat + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(TOPDIR)/package/rules.mk + +$(eval $(call PKG_template,LIBUPNP,libupnp,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) + +$(PKG_BUILD_DIR)/.configured: + touch $@ + +$(PKG_BUILD_DIR)/.built: + $(MAKE) -C $(PKG_BUILD_DIR)/upnp \ + $(TARGET_CONFIGURE_OPTS) \ + OPT_FLAGS="$(TARGET_CFLAGS)" \ + STRIP=/bin/true + touch $@ + +$(IPKG_LIBUPNP): + install -m0755 -d $(IDIR_LIBUPNP)/usr/lib + cp -fpR $(PKG_BUILD_DIR)/upnp/bin/libixml.so $(IDIR_LIBUPNP)/usr/lib/ ; \ + cp -fpR $(PKG_BUILD_DIR)/upnp/bin/libthreadutil.so $(IDIR_LIBUPNP)/usr/lib/ ; \ + cp -fpR $(PKG_BUILD_DIR)/upnp/bin/libupnp.so $(IDIR_LIBUPNP)/usr/lib/ ; \ + $(RSTRIP) $(IDIR_LIBUPNP) + $(IPKG_BUILD) $(IDIR_LIBUPNP) $(PACKAGE_DIR) + +$(STAGING_DIR)/usr/lib/libupnp.so: $(PKG_BUILD_DIR)/.built + mkdir -p $(STAGING_DIR)/usr/include/upnp + cp -fpR $(PKG_BUILD_DIR)/upnp/inc/*.h $(STAGING_DIR)/usr/include/upnp/ + mkdir -p $(STAGING_DIR)/usr/lib + cp -fpR $(PKG_BUILD_DIR)/upnp/bin/libixml.so $(STAGING_DIR)/usr/lib/ ; \ + cp -fpR $(PKG_BUILD_DIR)/upnp/bin/libthreadutil.so $(STAGING_DIR)/usr/lib/ ; \ + cp -fpR $(PKG_BUILD_DIR)/upnp/bin/libupnp.so $(STAGING_DIR)/usr/lib/ ; \ + touch $@ + +install-dev: $(STAGING_DIR)/usr/lib/libupnp.so + +uninstall-dev: + rm -rf \ + $(STAGING_DIR)/usr/include/upnp \ + $(STAGING_DIR)/usr/lib/libixml.so \ + $(STAGING_DIR)/usr/lib/libthreadutil.so \ + $(STAGING_DIR)/usr/lib/libupnp.so \ + +compile: install-dev +clean: uninstall-dev diff --git a/package/libupnp/ipkg/libupnp.control b/package/libupnp/ipkg/libupnp.control new file mode 100644 index 000000000..ddcf670df --- /dev/null +++ b/package/libupnp/ipkg/libupnp.control @@ -0,0 +1,7 @@ +Package: libupnp +Priority: optional +Section: libs +Maintainer: OpenWrt Developers Team +Source: http://openwrt.org/cgi-bin/viewcvs.cgi/openwrt/package/libupnp/ +Depends: libpthread +Description: The Universal Plug and Play (UPnP) SDK library. diff --git a/package/libupnp/patches/opt-flags.patch b/package/libupnp/patches/opt-flags.patch new file mode 100644 index 000000000..c6a8ce599 --- /dev/null +++ b/package/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