openwrt/package/network/utils/iwinfo/Makefile
James Haggerty caf34a17df iwinfo: (APP-4786, APP-4846, PR #457) update for morse countrylist change
iwinfo will now ask the driver (i.e. BCF/OTP) for the countrylist,
and use the 1.16 morse driver channel list.

Approved-by: Sophronia Koilpillai
Approved-by: Andrew Dodd
2025-10-05 00:37:43 +10:00

125 lines
3.2 KiB
Makefile

#
# Copyright (C) 2010-2016 Jo-Philipp Wich <jo@mein.io>
#
# This is free software, licensed under the GPL 2 license.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libiwinfo
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
# For now, use Morse repository to include HaLow support.
PKG_SOURCE_URL:=https://github.com/MorseMicro/iwinfo.git
PKG_SOURCE_DATE:=2025-06-10
PKG_SOURCE_VERSION:=6161ce596735e9b93847c871f971d4fef2c59ac6
PKG_MIRROR_HASH:=8b88b00361a21f4c211a55d4d56c7524b1e88283d7adcadfa8903a1e55f6ccb9
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
PKG_LICENSE:=GPL-2.0
PKG_BUILD_FLAGS:=no-lto
IWINFO_ABI_VERSION:=20250326
include $(INCLUDE_DIR)/package.mk
define Package/libiwinfo
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Generalized Wireless Information Library (iwinfo)
# Don't select morsecli explicitly to avoid strange circular dep.
# If morsecli isn't present, some things won't work
# (as of writing, only noise stats).
DEPENDS:=+libnl-tiny +libuci +libubus +libiwinfo-data
ABI_VERSION:=$(IWINFO_ABI_VERSION)
endef
define Package/libiwinfo/description
Wireless information library with simplified API for nl80211
and wext driver interfaces.
endef
define Package/libiwinfo-lua
SUBMENU:=Lua
SECTION:=lang
CATEGORY:=Languages
TITLE:=libiwinfo Lua binding
DEPENDS:=+libiwinfo +liblua
endef
define Package/libiwinfo-lua/description
This is the Lua binding for the iwinfo library. It provides access to all enabled
backends.
endef
define Package/libiwinfo-data
TITLE:=libiwinfo Lua binding
HIDDEN:=1
endef
define Package/iwinfo
SECTION:=utils
CATEGORY:=Utilities
TITLE:=Generalized Wireless Information utility
DEPENDS:=+libiwinfo
endef
define Package/iwinfo/description
Command line frontend for the wireless information library.
endef
define Build/Configure
endef
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include/libnl-tiny \
-I$(STAGING_DIR)/usr/include \
-D_GNU_SOURCE
MAKE_FLAGS += \
FPIC="$(FPIC)" \
CFLAGS="$(TARGET_CFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
BACKENDS="nl80211" \
SOVERSION="$(IWINFO_ABI_VERSION)"
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/iwinfo
$(CP) $(PKG_BUILD_DIR)/include/iwinfo.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/include/iwinfo/* $(1)/usr/include/iwinfo/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libiwinfo.so* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/lua
$(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
endef
define Package/libiwinfo/install
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_BIN) $(PKG_BUILD_DIR)/libiwinfo.so.$(IWINFO_ABI_VERSION) $(1)/usr/lib/libiwinfo.so.$(IWINFO_ABI_VERSION)
endef
define Package/libiwinfo-lua/install
$(INSTALL_DIR) $(1)/usr/lib/lua
$(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo.so $(1)/usr/lib/lua/iwinfo.so
endef
define Package/libiwinfo-data/install
$(INSTALL_DIR) $(1)/usr/share/libiwinfo
$(INSTALL_DATA) $(PKG_BUILD_DIR)/devices.txt $(1)/usr/share/libiwinfo/devices.txt
endef
define Package/iwinfo/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/iwinfo $(1)/usr/bin/iwinfo
endef
$(eval $(call BuildPackage,libiwinfo))
$(eval $(call BuildPackage,libiwinfo-lua))
$(eval $(call BuildPackage,libiwinfo-data))
$(eval $(call BuildPackage,iwinfo))