summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Mukhin <alexander.i.mukhin@gmail.com>2017-12-30 18:57:34 +0300
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>2018-04-02 18:30:41 +0200
commit90d73e5f66ccae2f1571762bef1f5ab4bae8e775 (patch)
treefea91beaf47fece235296006b29b0b8680c27f5b
parent779fc8e6848e8195c2f6570a05d274514e48cf79 (diff)
downloadbuildroot-90d73e5f66ccae2f1571762bef1f5ab4bae8e775.tar.gz
buildroot-90d73e5f66ccae2f1571762bef1f5ab4bae8e775.zip
hostapd: select driver support
Add support for the wired driver. Add configuration options to select which drivers to build. Select DRIVER_NONE if no other drivers enabled (this may be the case when building hostapd as a standalone RADIUS server). Update makefile logic and apply wireless-specific options only if at least one wireless driver enabled. Otherwise, an attempt to build a wired-only or RADIUS-only hostapd will fail. Signed-off-by: Alexander Mukhin <alexander.i.mukhin@gmail.com> Reviewed-by: Sam Voss <sam.voss@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
-rw-r--r--package/hostapd/Config.in31
-rw-r--r--package/hostapd/hostapd.mk31
2 files changed, 57 insertions, 5 deletions
diff --git a/package/hostapd/Config.in b/package/hostapd/Config.in
index 84156e8f11..f6182a9268 100644
--- a/package/hostapd/Config.in
+++ b/package/hostapd/Config.in
@@ -14,11 +14,42 @@ config BR2_PACKAGE_HOSTAPD
if BR2_PACKAGE_HOSTAPD
+config BR2_PACKAGE_HOSTAPD_DRIVER_HOSTAP
+ bool "Enable hostap driver"
+ default y
+ select BR2_PACKAGE_HOSTAPD_HAS_WIFI_DRIVERS
+ help
+ Enable support for Host AP driver.
+
+config BR2_PACKAGE_HOSTAPD_DRIVER_NL80211
+ bool "Enable nl80211 driver"
+ default y
+ select BR2_PACKAGE_HOSTAPD_HAS_WIFI_DRIVERS
+ help
+ Enable support for drivers using the nl80211 kernel interface.
+
config BR2_PACKAGE_HOSTAPD_DRIVER_RTW
bool "Enable rtl871xdrv driver"
+ select BR2_PACKAGE_HOSTAPD_HAS_WIFI_DRIVERS
help
Enable support for Realtek wireless chips.
+config BR2_PACKAGE_HOSTAPD_DRIVER_WIRED
+ bool "Enable wired driver"
+ help
+ Enable support for wired authenticator.
+
+config BR2_PACKAGE_HOSTAPD_DRIVER_NONE
+ bool
+ default y
+ depends on !BR2_PACKAGE_HOSTAPD_DRIVER_HOSTAP
+ depends on !BR2_PACKAGE_HOSTAPD_DRIVER_NL80211
+ depends on !BR2_PACKAGE_HOSTAPD_DRIVER_RTW
+ depends on !BR2_PACKAGE_HOSTAPD_DRIVER_WIRED
+
+config BR2_PACKAGE_HOSTAPD_HAS_WIFI_DRIVERS
+ bool
+
config BR2_PACKAGE_HOSTAPD_ACS
bool "Enable ACS"
default y
diff --git a/package/hostapd/hostapd.mk b/package/hostapd/hostapd.mk
index 1696670383..f9072784eb 100644
--- a/package/hostapd/hostapd.mk
+++ b/package/hostapd/hostapd.mk
@@ -18,12 +18,7 @@ HOSTAPD_LICENSE_FILES = README
HOSTAPD_CONFIG_SET =
HOSTAPD_CONFIG_ENABLE = \
- CONFIG_HS20 \
- CONFIG_IEEE80211AC \
- CONFIG_IEEE80211N \
- CONFIG_IEEE80211R \
CONFIG_INTERNAL_LIBTOMMATH \
- CONFIG_INTERWORKING \
CONFIG_LIBNL32
HOSTAPD_CONFIG_DISABLE =
@@ -45,11 +40,37 @@ HOSTAPD_CONFIG_DISABLE += CONFIG_EAP_PWD
HOSTAPD_CONFIG_EDITS += 's/\#\(CONFIG_TLS=\).*/\1internal/'
endif
+ifeq ($(BR2_PACKAGE_HOSTAPD_DRIVER_HOSTAP),)
+HOSTAPD_CONFIG_DISABLE += CONFIG_DRIVER_HOSTAP
+endif
+
+ifeq ($(BR2_PACKAGE_HOSTAPD_DRIVER_NL80211),)
+HOSTAPD_CONFIG_DISABLE += CONFIG_DRIVER_NL80211
+endif
+
ifeq ($(BR2_PACKAGE_HOSTAPD_DRIVER_RTW),y)
HOSTAPD_PATCH += https://github.com/pritambaral/hostapd-rtl871xdrv/raw/master/rtlxdrv.patch
HOSTAPD_CONFIG_SET += CONFIG_DRIVER_RTW
endif
+ifeq ($(BR2_PACKAGE_HOSTAPD_DRIVER_WIRED),y)
+HOSTAPD_CONFIG_ENABLE += CONFIG_DRIVER_WIRED
+endif
+
+ifeq ($(BR2_PACKAGE_HOSTAPD_DRIVER_NONE),y)
+HOSTAPD_CONFIG_ENABLE += CONFIG_DRIVER_NONE
+endif
+
+# Add options for wireless drivers
+ifeq ($(BR2_PACKAGE_HOSTAPD_HAS_WIFI_DRIVERS),y)
+HOSTAPD_CONFIG_ENABLE += \
+ CONFIG_HS20 \
+ CONFIG_IEEE80211AC \
+ CONFIG_IEEE80211N \
+ CONFIG_IEEE80211R \
+ CONFIG_INTERWORKING
+endif
+
ifeq ($(BR2_PACKAGE_HOSTAPD_ACS),y)
HOSTAPD_CONFIG_ENABLE += CONFIG_ACS
endif
OpenPOWER on IntegriCloud