--- /dev/null
+#
+# 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))
--- /dev/null
+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