[packages] libnatpmp: add the libnatpmp library

git-svn-id: svn://svn.openwrt.org/openwrt/packages@27260 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
swalker 2011-06-23 00:38:53 +00:00
parent eeeaeca6b2
commit 13198093fe
2 changed files with 102 additions and 0 deletions

82
libs/libnatpmp/Makefile Normal file
View File

@ -0,0 +1,82 @@
#
# Copyright (C) 2011 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:=libnatpmp
PKG_VERSION:=20110618
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://miniupnp.free.fr/files
PKG_MD5SUM:=6a5fdc8aa6c8602ea96567dabe51d6d3
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libnatpmp/Default
TITLE:=NAT Port Mapping Protocol (NAT-PMP)
URL:=http://miniupnp.free.fr/libnatpmp.html
endef
define Package/libnatpmp/Default/description
libnatpmp is an attempt to make a portable and fully compliant implementation
of the protocol for the client side. It is based on non blocking sockets and
all calls of the API are asynchronous. It is therefore very easy to integrate
the NAT-PMP code to any event driven code.
endef
define Package/libnatpmp
$(call Package/libnatpmp/Default)
SECTION:=libs
CATEGORY:=Libraries
TITLE+= library
endef
define Package/libnatpmp/description
$(call Package/libnatpmp/Default/description)
This package contains the shared library.
endef
define Package/natpmpc
$(call Package/libnatpmp/Default)
SECTION:=net
CATEGORY:=Network
SUBMENU:=Firewall
TITLE+= client
DEPENDS:=+libnatpmp
endef
define Package/natpmpc/description
$(call Package/libnatpmp/Default/description)
This package contains the natpmp client.
endef
MAKE_FLAGS += \
COPTS="$(TARGET_CFLAGS)" \
PREFIX="$(PKG_INSTALL_DIR)"
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/natpmp.h $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libnatpmp*.{so*,a} $(1)/usr/lib/
endef
define Package/libnatpmp/install
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libnatpmp.so.* $(1)/usr/lib/
endef
define Package/natpmpc/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/natpmpc $(1)/usr/bin/
endef
$(eval $(call BuildPackage,libnatpmp))
$(eval $(call BuildPackage,natpmpc))

View File

@ -0,0 +1,20 @@
--- a/Makefile
+++ b/Makefile
@@ -4,14 +4,15 @@
# (c) 2007-2011 Thomas Bernard
# http://miniupnp.free.fr/libnatpmp.html
-OS = $(shell uname -s)
+OS = Linux
CC = gcc
INSTALL = install
# APIVERSION is used in soname
APIVERSION = 1
LDFLAGS = -Wl,--no-undefined
-CFLAGS = -O -fPIC -Wall -DENABLE_STRNATPMPERR
+COPTS = -O
+CFLAGS = $(COPTS) -fPIC -Wall -DENABLE_STRNATPMPERR
LIBOBJS = natpmp.o getgateway.o