packages/libs/libupnp/Makefile
florian cbc0dc66dd [package] update libupnp to 1.6.8
this patch updates libupnp to 1.6.8.

There are lots of fixes since 1.6.6, and 3 concerning embedded
devices:

- fix segfault when there is no services on embedded devices
- customize the stack size of the threads used by pupnp
- fix several memory leaks

And a security issue:
- fix denial-of-service

Signed-off-by: Raphael Huck <rhk@cksum.org>

git-svn-id: svn://svn.openwrt.org/openwrt/packages@24066 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-11-21 22:01:13 +00:00

95 lines
2.4 KiB
Makefile

#
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libupnp
PKG_VERSION:=1.6.8
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/pupnp
PKG_MD5SUM:=7e162895b9d0f9efcccd07973012cdff
PKG_FIXUP:=libtool
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libupnp/Default
SECTION:=libs
CATEGORY:=Libraries
URL:=http://pupnp.sourceforge.net/
endef
define Package/libupnp
$(call Package/libupnp/Default)
DEPENDS:=+libpthread
TITLE:=UPnP SDK library
MENU:=1
endef
define Package/libupnp/description
The portable SDK for UPnP Devices (libupnp) provides developers with an API and
open source code for building control points, devices, and bridges that are
compliant with Version 1.0 of the Universal Plug and Play Device Architecture
Specification.
endef
define Package/libupnp-sample
$(call Package/libupnp/Default)
DEPENDS:=libupnp
TITLE:=UPnP sample applications
endef
define Package/libupnp-sample/description
TVcontrolpoint & tvdevice sample applications run inside /etc/upnp-tvdevice/
endef
define Build/Configure
$(call Build/Configure/Default, \
--enable-shared \
--enable-static \
);
endef
TARGET_CFLAGS += $(FPIC)
define Build/Compile/libupnp-sample
$(MAKE) -C $(PKG_BUILD_DIR) \
DESTDIR="$(PKG_INSTALL_DIR)" \
check
$(MAKE) -C $(PKG_BUILD_DIR)/upnp/sample \
DESTDIR="$(PKG_INSTALL_DIR)" \
upnp_tv_device upnp_tv_ctrlpt
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/upnp $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{ixml,threadutil,upnp}.{a,so*,la} $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libupnp.pc $(1)/usr/lib/pkgconfig/
endef
define Package/libupnp/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{ixml,threadutil,upnp}.so.* $(1)/usr/lib/
endef
define Package/libupnp-sample/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/upnp/sample/upnp_tv_device $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/upnp/sample/upnp_tv_ctrlpt $(1)/usr/bin
$(INSTALL_DIR) $(1)/etc/upnp-tvdevice/web
$(CP) $(PKG_BUILD_DIR)/upnp/sample/web/* $(1)/etc/upnp-tvdevice
endef
$(eval $(call BuildPackage,libupnp))
$(eval $(call BuildPackage,libupnp-sample))