e7f90b404ace4f5915ca01190a4041c29d35688c
[openwrt.git] / package / network / utils / iwinfo / Makefile
1 #
2 # Copyright (C) 2010-2014 Jo-Philipp Wich <jow@openwrt.org>
3 #
4 # This is free software, licensed under the GPL 2 license.
5 #
6
7 include $(TOPDIR)/rules.mk
8
9 PKG_NAME:=libiwinfo
10 PKG_VERSION:=2014-10-27.1
11 PKG_RELEASE=$(PKG_SOURCE_VERSION)
12
13 PKG_SOURCE_PROTO:=git
14 PKG_SOURCE_URL:=http://git.openwrt.org/project/iwinfo.git
15 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
16 PKG_SOURCE_VERSION:=d5dc3d0605f76fbbbad005d998497e53a236aeda
17 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
18 PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
19 PKG_LICENSE:=GPL-2.0
20
21 PKG_CONFIG_DEPENDS := \
22         CONFIG_PACKAGE_kmod-brcm-wl \
23         CONFIG_PACKAGE_kmod-brcm-wl-mini \
24         CONFIG_PACKAGE_kmod-brcm-wl-mimo \
25         CONFIG_PACKAGE_kmod-madwifi \
26         CONFIG_PACKAGE_kmod-cfg80211
27
28 PKG_LICENSE:=GPL-2.0
29 PKG_LICENSE_FILES:=COPYING
30
31 include $(INCLUDE_DIR)/package.mk
32
33
34 define Package/libiwinfo
35   SECTION:=libs
36   CATEGORY:=Libraries
37   TITLE:=Generalized Wireless Information Library (iwinfo)
38   DEPENDS:=+PACKAGE_kmod-cfg80211:libnl-tiny +libuci
39   ABI_VERSION:=$(PKG_RELEASE)
40 endef
41
42 define Package/libiwinfo/description
43   Wireless information library with consistent interface for proprietary Broadcom,
44   madwifi, nl80211 and wext driver interfaces.
45 endef
46
47
48 define Package/libiwinfo-lua
49   SUBMENU:=Lua
50   SECTION:=lang
51   CATEGORY:=Languages
52   TITLE:=libiwinfo Lua binding
53   DEPENDS:=+libiwinfo +liblua
54 endef
55
56 define Package/libiwinfo-lua/description
57   This is the Lua binding for the iwinfo library. It provides access to all enabled
58   backends.
59 endef
60
61
62 define Package/iwinfo
63   SECTION:=utils
64   CATEGORY:=Utilities
65   TITLE:=Generalized Wireless Information utility
66   DEPENDS:=+libiwinfo
67 endef
68
69 define Package/iwinfo/description
70   Command line frontend for the wireless information library.
71 endef
72
73
74 define Build/Configure
75 endef
76
77 IWINFO_BACKENDS := \
78         $(if $(CONFIG_PACKAGE_kmod-brcm-wl),wl) \
79         $(if $(CONFIG_PACKAGE_kmod-brcm-wl-mini),wl) \
80         $(if $(CONFIG_PACKAGE_kmod-brcm-wl-mimo),wl) \
81         $(if $(CONFIG_PACKAGE_kmod-madwifi),madwifi) \
82         $(if $(CONFIG_PACKAGE_kmod-cfg80211),nl80211)
83
84 TARGET_CFLAGS += \
85         -I$(STAGING_DIR)/usr/include/libnl-tiny \
86         -I$(STAGING_DIR)/usr/include \
87         -D_GNU_SOURCE
88
89 MAKE_FLAGS += \
90         FPIC="$(FPIC)" \
91         CFLAGS="$(TARGET_CFLAGS)" \
92         LDFLAGS="$(TARGET_LDFLAGS)" \
93         BACKENDS="$(IWINFO_BACKENDS)"
94
95 define Build/InstallDev
96         $(INSTALL_DIR) $(1)/usr/include/iwinfo
97         $(CP) $(PKG_BUILD_DIR)/include/iwinfo.h $(1)/usr/include/
98         $(CP) $(PKG_BUILD_DIR)/include/iwinfo/* $(1)/usr/include/iwinfo/
99         $(INSTALL_DIR) $(1)/usr/lib
100         $(INSTALL_BIN) $(PKG_BUILD_DIR)/libiwinfo.so $(1)/usr/lib/libiwinfo.so
101         $(INSTALL_DIR) $(1)/usr/lib/lua
102         $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
103 endef
104
105 define Package/libiwinfo/install
106         $(INSTALL_DIR) $(1)/usr/lib
107         $(INSTALL_BIN) $(PKG_BUILD_DIR)/libiwinfo.so $(1)/usr/lib/libiwinfo.so
108         $(INSTALL_DIR) $(1)/usr/share/libiwinfo
109         $(INSTALL_DATA) $(PKG_BUILD_DIR)/hardware.txt $(1)/usr/share/libiwinfo/hardware.txt
110 endef
111
112 define Package/libiwinfo-lua/install
113         $(INSTALL_DIR) $(1)/usr/lib/lua
114         $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
115 endef
116
117 define Package/iwinfo/install
118         $(INSTALL_DIR) $(1)/usr/bin
119         $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo $(1)/usr/bin/iwinfo
120 endef
121
122 $(eval $(call BuildPackage,libiwinfo))
123 $(eval $(call BuildPackage,libiwinfo-lua))
124 $(eval $(call BuildPackage,iwinfo))