8b9bacacce88c403b21218d4acc0509e237daabc
[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
20 PKG_CONFIG_DEPENDS := \
21         CONFIG_PACKAGE_kmod-brcm-wl \
22         CONFIG_PACKAGE_kmod-brcm-wl-mini \
23         CONFIG_PACKAGE_kmod-brcm-wl-mimo \
24         CONFIG_PACKAGE_kmod-madwifi \
25         CONFIG_PACKAGE_kmod-cfg80211
26
27 include $(INCLUDE_DIR)/package.mk
28
29
30 define Package/libiwinfo
31   SECTION:=libs
32   CATEGORY:=Libraries
33   TITLE:=Generalized Wireless Information Library (iwinfo)
34   DEPENDS:=+PACKAGE_kmod-cfg80211:libnl-tiny +libuci
35   ABI_VERSION:=$(PKG_RELEASE)
36 endef
37
38 define Package/libiwinfo/description
39   Wireless information library with consistent interface for proprietary Broadcom,
40   madwifi, nl80211 and wext driver interfaces.
41 endef
42
43
44 define Package/libiwinfo-lua
45   SUBMENU:=Lua
46   SECTION:=lang
47   CATEGORY:=Languages
48   TITLE:=libiwinfo Lua binding
49   DEPENDS:=+libiwinfo +liblua
50 endef
51
52 define Package/libiwinfo-lua/description
53   This is the Lua binding for the iwinfo library. It provides access to all enabled
54   backends.
55 endef
56
57
58 define Package/iwinfo
59   SECTION:=utils
60   CATEGORY:=Utilities
61   TITLE:=Generalized Wireless Information utility
62   DEPENDS:=+libiwinfo
63 endef
64
65 define Package/iwinfo/description
66   Command line frontend for the wireless information library.
67 endef
68
69
70 define Build/Configure
71 endef
72
73 IWINFO_BACKENDS := \
74         $(if $(CONFIG_PACKAGE_kmod-brcm-wl),wl) \
75         $(if $(CONFIG_PACKAGE_kmod-brcm-wl-mini),wl) \
76         $(if $(CONFIG_PACKAGE_kmod-brcm-wl-mimo),wl) \
77         $(if $(CONFIG_PACKAGE_kmod-madwifi),madwifi) \
78         $(if $(CONFIG_PACKAGE_kmod-cfg80211),nl80211)
79
80 TARGET_CFLAGS += \
81         -I$(STAGING_DIR)/usr/include/libnl-tiny \
82         -I$(STAGING_DIR)/usr/include \
83         -D_GNU_SOURCE
84
85 MAKE_FLAGS += \
86         FPIC="$(FPIC)" \
87         CFLAGS="$(TARGET_CFLAGS)" \
88         LDFLAGS="$(TARGET_LDFLAGS)" \
89         BACKENDS="$(IWINFO_BACKENDS)"
90
91 define Build/InstallDev
92         $(INSTALL_DIR) $(1)/usr/include/iwinfo
93         $(CP) $(PKG_BUILD_DIR)/include/iwinfo.h $(1)/usr/include/
94         $(CP) $(PKG_BUILD_DIR)/include/iwinfo/* $(1)/usr/include/iwinfo/
95         $(INSTALL_DIR) $(1)/usr/lib
96         $(INSTALL_BIN) $(PKG_BUILD_DIR)/libiwinfo.so $(1)/usr/lib/libiwinfo.so
97         $(INSTALL_DIR) $(1)/usr/lib/lua
98         $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
99 endef
100
101 define Package/libiwinfo/install
102         $(INSTALL_DIR) $(1)/usr/lib
103         $(INSTALL_BIN) $(PKG_BUILD_DIR)/libiwinfo.so $(1)/usr/lib/libiwinfo.so
104         $(INSTALL_DIR) $(1)/usr/share/libiwinfo
105         $(INSTALL_DATA) $(PKG_BUILD_DIR)/hardware.txt $(1)/usr/share/libiwinfo/hardware.txt
106 endef
107
108 define Package/libiwinfo-lua/install
109         $(INSTALL_DIR) $(1)/usr/lib/lua
110         $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
111 endef
112
113 define Package/iwinfo/install
114         $(INSTALL_DIR) $(1)/usr/bin
115         $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo $(1)/usr/bin/iwinfo
116 endef
117
118 $(eval $(call BuildPackage,libiwinfo))
119 $(eval $(call BuildPackage,libiwinfo-lua))
120 $(eval $(call BuildPackage,iwinfo))