1# 2# Copyright (C) 2006-2013 OpenWrt.org 3# 4# This is free software, licensed under the GNU General Public License v2. 5# See /LICENSE for more information. 6# 7 8include $(TOPDIR)/rules.mk 9 10PKG_NAME:=libnl 11PKG_VERSION:=3.2.21 12PKG_RELEASE:=1 13 14PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz 15PKG_SOURCE_URL:=http://www.infradead.org/~tgr/libnl/files/ 16PKG_MD5SUM:=6fe7136558a9071e70673dcda38545b3 17PKG_LICENSE:=LGPL-2.1 18 19include $(INCLUDE_DIR)/package.mk 20 21define Package/libnl/default 22 SECTION:=libs 23 CATEGORY:=Libraries 24 URL:=http://www.infradead.org/~tgr/libnl/ 25endef 26 27define Package/libnl-core 28$(call Package/libnl/default) 29 TITLE:=Core Netlink Library 30 DEPENDS:=+libpthread 31endef 32 33define Package/libnl-genl 34$(call Package/libnl/default) 35 TITLE:=Generic Netlink Library 36 DEPENDS:=+libnl-core 37endef 38 39define Package/libnl-route 40$(call Package/libnl/default) 41 TITLE:=Routing Netlink Library 42 DEPENDS:=+libnl-core 43endef 44 45define Package/libnl-nf 46$(call Package/libnl/default) 47 TITLE:=Netfilter Netlink Library 48 DEPENDS:=+libnl-route 49endef 50 51define Package/libnl 52$(call Package/libnl/default) 53 TITLE:=Full Netlink Library 54 DEPENDS:=+libnl-genl +libnl-route +libnl-nf 55endef 56 57define Package/libnl-core/description 58 Common code for all netlink libraries 59endef 60 61define Package/libnl-genl/description 62 Generic Netlink Library Functions 63endef 64 65define Package/libnl-route/description 66 Routing Netlink Library Functions 67endef 68 69define Package/libnl-nf/description 70 Netfilter Netlink Library Functions 71endef 72 73define Package/libnl/description 74 Socket handling, connection management, sending and receiving of data, 75 message construction and parsing, object caching system, etc. 76endef 77 78TARGET_CFLAGS += -ffunction-sections $(FPIC) 79 80define Build/Compile 81 $(call Build/Compile/Default) 82 make -C $(PKG_BUILD_DIR) \ 83 DESTDIR="$(PKG_INSTALL_DIR)" \ 84 install 85endef 86 87define Build/InstallDev 88 $(INSTALL_DIR) $(1)/usr/include/libnl3 $(1)/usr/lib/pkgconfig 89 $(CP) $(PKG_INSTALL_DIR)/usr/include/libnl3/* $(1)/usr/include/libnl3/ 90 $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib 91 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc $(1)/usr/lib/pkgconfig 92 93 # Copy symlinks 94 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-3.so $(1)/usr/lib/libnl.so 95 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-genl-3.so $(1)/usr/lib/libnl-genl.so 96 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-nf-3.so $(1)/usr/lib/libnl-nf.so 97 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route-3.so $(1)/usr/lib/libnl-route.so 98endef 99 100define Package/libnl-core/install 101 $(INSTALL_DIR) $(1)/usr/lib 102 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-3.so* $(1)/usr/lib/ 103 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-3.so $(1)/usr/lib/libnl.so 104endef 105 106define Package/libnl-genl/install 107 $(INSTALL_DIR) $(1)/usr/lib 108 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-genl-3.so* $(1)/usr/lib/ 109 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-genl-3.so $(1)/usr/lib/libnl-genl.so 110endef 111 112define Package/libnl-route/install 113 $(INSTALL_DIR) $(1)/usr/lib 114 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route-3.so* $(1)/usr/lib/ 115 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route-3.so $(1)/usr/lib/libnl-route.so 116endef 117 118define Package/libnl-nf/install 119 $(INSTALL_DIR) $(1)/usr/lib 120 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-nf-3.so* $(1)/usr/lib/ 121 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-nf-3.so $(1)/usr/lib/libnl-nf.so 122endef 123 124define Package/libnl/install 125 : 126endef 127 128$(eval $(call BuildPackage,libnl-core)) 129$(eval $(call BuildPackage,libnl-genl)) 130$(eval $(call BuildPackage,libnl-route)) 131$(eval $(call BuildPackage,libnl-nf)) 132$(eval $(call BuildPackage,libnl)) 133