blob: 590ee05f393cb057e517ae25c9db70436fc4019b [file] [log] [blame]
developerfd751832022-12-16 12:48:34 +08001#
2# Copyright (C) 2010-2016 Jo-Philipp Wich <jo@mein.io>
3#
4# This is free software, licensed under the GPL 2 license.
5#
6
7include $(TOPDIR)/rules.mk
8
9PKG_NAME:=libiwinfo
10PKG_RELEASE:=1
11
12PKG_SOURCE_PROTO:=git
13PKG_SOURCE_URL=$(PROJECT_GIT)/project/iwinfo.git
14PKG_SOURCE_DATE:=2022-11-01
15PKG_SOURCE_VERSION:=00aab871c50d944fd83269e460e69124cb11adb7
16PKG_MIRROR_HASH:=e915d53da916db333d62c396154612ed7557fbb27ed8884e70c19c321c08b12c
17PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
18PKG_LICENSE:=GPL-2.0
19
20IWINFO_ABI_VERSION:=20210430
21
22include $(INCLUDE_DIR)/package.mk
23
24
25define Package/libiwinfo
26 SECTION:=libs
27 CATEGORY:=Libraries
28 TITLE:=Generalized Wireless Information Library (iwinfo)
29 DEPENDS:=+libnl-tiny +libuci +libubus +libiwinfo-data
30 ABI_VERSION:=$(IWINFO_ABI_VERSION)
31endef
32
33define Package/libiwinfo/description
34 Wireless information library with simplified API for nl80211
35 and wext driver interfaces.
36endef
37
38
39define Package/libiwinfo-lua
40 SUBMENU:=Lua
41 SECTION:=lang
42 CATEGORY:=Languages
43 TITLE:=libiwinfo Lua binding
44 DEPENDS:=+libiwinfo +liblua
45endef
46
47define Package/libiwinfo-lua/description
48 This is the Lua binding for the iwinfo library. It provides access to all enabled
49 backends.
50endef
51
52
53define Package/libiwinfo-data
54 TITLE:=libiwinfo Lua binding
55 HIDDEN:=1
56endef
57
58
59define Package/iwinfo
60 SECTION:=utils
61 CATEGORY:=Utilities
62 TITLE:=Generalized Wireless Information utility
63 DEPENDS:=+libiwinfo
64endef
65
66define Package/iwinfo/description
67 Command line frontend for the wireless information library.
68endef
69
70
71define Build/Configure
72endef
73
74TARGET_CFLAGS += \
75 -I$(STAGING_DIR)/usr/include/libnl-tiny \
76 -I$(STAGING_DIR)/usr/include \
77 -D_GNU_SOURCE
78
79MAKE_FLAGS += \
80 FPIC="$(FPIC)" \
81 CFLAGS="$(TARGET_CFLAGS)" \
82 LDFLAGS="$(TARGET_LDFLAGS)" \
83 BACKENDS="nl80211" \
84 SOVERSION="$(IWINFO_ABI_VERSION)"
85
86define Build/InstallDev
87 $(INSTALL_DIR) $(1)/usr/include/iwinfo
88 $(CP) $(PKG_BUILD_DIR)/include/iwinfo.h $(1)/usr/include/
89 $(CP) $(PKG_BUILD_DIR)/include/iwinfo/* $(1)/usr/include/iwinfo/
90 $(INSTALL_DIR) $(1)/usr/lib
91 $(CP) $(PKG_BUILD_DIR)/libiwinfo.so* $(1)/usr/lib/
92 $(INSTALL_DIR) $(1)/usr/lib/lua
93 $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
94endef
95
96define Package/libiwinfo/install
97 $(INSTALL_DIR) $(1)/usr/lib
98 $(INSTALL_BIN) $(PKG_BUILD_DIR)/libiwinfo.so.$(IWINFO_ABI_VERSION) $(1)/usr/lib/libiwinfo.so.$(IWINFO_ABI_VERSION)
99endef
100
101define Package/libiwinfo-lua/install
102 $(INSTALL_DIR) $(1)/usr/lib/lua
103 $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
104endef
105
106define Package/libiwinfo-data/install
107 $(INSTALL_DIR) $(1)/usr/share/libiwinfo
108 $(INSTALL_DATA) $(PKG_BUILD_DIR)/devices.txt $(1)/usr/share/libiwinfo/devices.txt
109endef
110
111define Package/iwinfo/install
112 $(INSTALL_DIR) $(1)/usr/bin
113 $(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo $(1)/usr/bin/iwinfo
114endef
115
116$(eval $(call BuildPackage,libiwinfo))
117$(eval $(call BuildPackage,libiwinfo-lua))
118$(eval $(call BuildPackage,libiwinfo-data))
119$(eval $(call BuildPackage,iwinfo))