From c558d65793487886a31441c61c196cba25878582 Mon Sep 17 00:00:00 2001 From: Filip Matusiak Date: Thu, 4 Mar 2021 08:18:40 +0000 Subject: [PATCH] libwpa: Add new package --- libwpa/Makefile | 78 ++++++++++++++++++++++ libwpa/files/libwpa_client.config | 103 ++++++++++++++++++++++++++++++ 2 files changed, 181 insertions(+) create mode 100644 libwpa/Makefile create mode 100644 libwpa/files/libwpa_client.config diff --git a/libwpa/Makefile b/libwpa/Makefile new file mode 100644 index 000000000..ae1b1f8bb --- /dev/null +++ b/libwpa/Makefile @@ -0,0 +1,78 @@ +# +# Copyright (C) 2020 Iopsys +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libwpa +PKG_VERSION:=1.0.0 +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=http://w1.fi/hostap.git +PKG_SOURCE_VERSION:=5a8b366233f5585e68a4ffbb604fbb4a848eb325 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +PKG_CONFIG_DEPENDS:= \ + CONFIG_PACKAGE_libwpa_client + +ifdef CONFIG_USE_GLIBC + TARGET_LDFLAGS += -lrt + TARGET_LDFLAGS_C += -lrt +endif + +define Package/libwpa_client/Default + PROVIDES:=libwpa_client + SECTION:=net + CATEGORY:=Network + SUBMENU:=WirelessAPD + TITLE:=WPA Client + URL:=http://hostap.epitest.fi/wpa_supplicant/ +endef + +define Package/libwpa_client +$(call Package/libwpa_client/Default,$(1)) + TITLE:= (SO library) + VARIANT:=libwpa_client +endef + +define Package/libwpa_client/description + This package contains wpa_ctrl client library +endef + +define Build/Configure/rebuild + $(FIND) $(PKG_BUILD_DIR) -name \*.o -or -name \*.a -or -name \*.so | $(XARGS) rm -f + rm -f $(PKG_BUILD_DIR)/wpa_supplicant/libwpa_client.so + rm -f $(PKG_BUILD_DIR)/.config_* +endef + +define Build/Configure + $(Build/Configure/rebuild) + $(if $(wildcard ./files/libwpa_client.config), \ + $(CP) ./files/libwpa_client.config $(PKG_BUILD_DIR)/wpa_supplicant/.config + ) +endef + +TARGET_CFLAGS += \ + -I$(STAGING_DIR)/usr/include \ + -D_GNU_SOURCE + +MAKE_PATH:=wpa_supplicant + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/libwpa + $(CP) $(PKG_BUILD_DIR)/src/common/wpa_ctrl.h $(1)/usr/include/libwpa/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/wpa_supplicant/*.so* $(1)/usr/lib/ +endef + +define Package/libwpa_client/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/wpa_supplicant/*.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libwpa_client)) diff --git a/libwpa/files/libwpa_client.config b/libwpa/files/libwpa_client.config new file mode 100644 index 000000000..2319522ec --- /dev/null +++ b/libwpa/files/libwpa_client.config @@ -0,0 +1,103 @@ +# Example wpa_supplicant build time configuration +# +# This file lists the configuration options that are used when building the +# wpa_supplicant binary. All lines starting with # are ignored. Configuration +# option lines must be commented out complete, if they are not to be included, +# i.e., just setting VARIABLE=n is not disabling that variable. +# +# This file is included in Makefile, so variables like CFLAGS and LIBS can also +# be modified from here. In most cases, these lines should use += in order not +# to override previous values of the variables. + +# Driver interface for Windows NDIS +#CONFIG_DRIVER_NDIS=y +#CFLAGS += -I/usr/include/w32api/ddk +#LIBS += -L/usr/local/lib +# For native build using mingw +#CONFIG_NATIVE_WINDOWS=y +# Additional directories for cross-compilation on Linux host for mingw target +#CFLAGS += -I/opt/mingw/mingw32/include/ddk +#LIBS += -L/opt/mingw/mingw32/lib +#CC=mingw32-gcc + +# Solaris libraries +#LIBS += -lsocket -ldlpi -lnsl +#LIBS_c += -lsocket + +# Development testing +#CONFIG_filmat EAPOL_TEST=y + +# Select control interface backend for external programs, e.g, wpa_cli: +# unix = UNIX domain sockets (default for Linux/*BSD) +# udp = UDP sockets using localhost (127.0.0.1) +# udp6 = UDP IPv6 sockets using localhost (::1) +# named_pipe = Windows Named Pipe (default for Windows) +# udp-remote = UDP sockets with remote access (only for tests systems/purpose) +# udp6-remote = UDP IPv6 sockets with remote access (only for tests purpose) +# y = use default (backwards compatibility) +# If this option is commented out, control interface is not included in the +# build. +CONFIG_CTRL_IFACE=y + +# Remove debugging code that is printing out debug message to stdout. +# This can be used to reduce the size of the wpa_supplicant considerably +# if debugging code is not needed. The size reduction can be around 35% +# (e.g., 90 kB). +#CONFIG_NO_STDOUT_DEBUG=y + +# Select wrapper for operating system and C library specific functions +# unix = UNIX/POSIX like systems (default) +# win32 = Windows systems +# none = Empty template +#CONFIG_OS=unix + +# Add support for new DBus control interface +# (fi.w1.hostap.wpa_supplicant1) +#CONFIG_CTRL_IFACE_DBUS_NEW=y + +# Add introspection support for new DBus control interface +#CONFIG_CTRL_IFACE_DBUS_INTRO=y + +# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt) +#CONFIG_DEBUG_FILE=y + +# Send debug messages to syslog instead of stdout +CONFIG_DEBUG_SYSLOG=y +# Set syslog facility for debug messages +CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON + +# Add support for sending all debug messages (regardless of debug verbosity) +# to the Linux kernel tracing facility. This helps debug the entire stack by +# making it easy to record everything happening from the driver up into the +# same file, e.g., using trace-cmd. +#CONFIG_DEBUG_LINUX_TRACING=y + +# Add support for writing debug log to Android logcat instead of standard +# output +#CONFIG_ANDROID_LOG=y + +# Enable tracing code for developer debugging +# This tracks use of memory allocations and other registrations and reports +# incorrect use with a backtrace of call (or allocation) location. +#CONFIG_WPA_TRACE=y +# For BSD, uncomment these. +#LIBS += -lexecinfo +#LIBS_p += -lexecinfo +#LIBS_c += -lexecinfo + +# Use libbfd to get more details for developer debugging +# This enables use of libbfd to get more detailed symbols for the backtraces +# generated by CONFIG_WPA_TRACE=y. +#CONFIG_WPA_TRACE_BFD=y +# For BSD, uncomment these. +#LIBS += -lbfd -liberty -lz +#LIBS_p += -lbfd -liberty -lz +#LIBS_c += -lbfd -liberty -lz + +# OpenWrt patch 380-disable-ctrl-iface-mib.patch +# leads to the MIB only being compiled in if +# CONFIG_CTRL_IFACE_MIB is enabled. +CONFIG_CTRL_IFACE_MIB=y + +# Build shared object +CONFIG_BUILD_WPA_CLIENT_SO=y