2013-06-06 01:53:30 +02:00
|
|
|
################################################################################
|
2009-03-09 21:28:40 +01:00
|
|
|
#
|
|
|
|
# wpa_supplicant
|
|
|
|
#
|
2013-06-06 01:53:30 +02:00
|
|
|
################################################################################
|
2009-03-09 21:28:40 +01:00
|
|
|
|
2015-09-29 09:24:57 +02:00
|
|
|
WPA_SUPPLICANT_VERSION = 2.5
|
2009-03-09 21:28:40 +01:00
|
|
|
WPA_SUPPLICANT_SITE = http://hostap.epitest.fi/releases
|
2012-09-12 02:32:30 +02:00
|
|
|
WPA_SUPPLICANT_LICENSE = GPLv2/BSD-3c
|
|
|
|
WPA_SUPPLICANT_LICENSE_FILES = README
|
2009-03-09 21:28:40 +01:00
|
|
|
WPA_SUPPLICANT_CONFIG = $(WPA_SUPPLICANT_DIR)/wpa_supplicant/.config
|
|
|
|
WPA_SUPPLICANT_SUBDIR = wpa_supplicant
|
2012-12-17 22:52:46 +01:00
|
|
|
WPA_SUPPLICANT_DBUS_OLD_SERVICE = fi.epitest.hostap.WPASupplicant
|
|
|
|
WPA_SUPPLICANT_DBUS_NEW_SERVICE = fi.w1.wpa_supplicant1
|
2012-05-14 11:46:21 +02:00
|
|
|
WPA_SUPPLICANT_CFLAGS = $(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/libnl3/
|
|
|
|
WPA_SUPPLICANT_LDFLAGS = $(TARGET_LDFLAGS)
|
2009-03-09 21:28:40 +01:00
|
|
|
|
2015-11-01 09:35:18 +01:00
|
|
|
# install the wpa_client library
|
|
|
|
WPA_SUPPLICANT_INSTALL_STAGING = YES
|
|
|
|
|
2014-02-04 15:39:19 +01:00
|
|
|
WPA_SUPPLICANT_CONFIG_EDITS =
|
|
|
|
|
|
|
|
WPA_SUPPLICANT_CONFIG_SET =
|
|
|
|
|
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE = \
|
2014-02-27 21:47:10 +01:00
|
|
|
CONFIG_IEEE80211AC \
|
2014-02-04 15:39:19 +01:00
|
|
|
CONFIG_IEEE80211N \
|
|
|
|
CONFIG_IEEE80211R \
|
2015-03-17 22:41:09 +01:00
|
|
|
CONFIG_INTERNAL_LIBTOMMATH \
|
|
|
|
CONFIG_DEBUG_FILE
|
2014-02-04 15:39:19 +01:00
|
|
|
|
|
|
|
WPA_SUPPLICANT_CONFIG_DISABLE = \
|
|
|
|
CONFIG_SMARTCARD
|
|
|
|
|
2014-03-04 14:35:12 +01:00
|
|
|
# libnl-3 needs -lm (for rint) and -lpthread if linking statically
|
|
|
|
# And library order matters hence stick -lnl-3 first since it's appended
|
|
|
|
# in the wpa_supplicant Makefiles as in LIBS+=-lnl-3 ... thus failing
|
wpa_supplicant: Add an explicit option to enable nl80211.
Currently, nl80211 support is conditionnal with libnl being enabled,
using implicit dependencies. This causes problems since it is not
obvious and wpa_supplicant without nl80211 isn't what most user expects.
If nl80211 isn't enabled, then buildroot only enables the wext driver,
which will only work if some deprecated kernel feature isn't left
disabled, or if using a outdated out-of-tree linux driver which doesn't
use the cfg80211 infrastructure.
This makes nl80211 support an explicit option, which
"select BR2_PACKAGE_LIBNL" accordingly. To handle upgrades nicely, it
would have been nice to have "default y if BR2_PACKAGE_LIBNL", but
Kconfig treats this as a circular dependency. So instead, this enables
the option by default, which is less worse than not enabling nl80211
when it was previously implicitely enabled.
[Thomas:
- rewrap Config.in help text
- add comment about thread dependency.]
Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
Reviewed-by: Gary Bisson <gary.bisson@boundarydevices.com>
Tested-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-07-17 09:59:09 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_NL80211),y)
|
2014-12-03 22:41:29 +01:00
|
|
|
ifeq ($(BR2_STATIC_LIBS),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_LIBS += -lnl-3 -lm -lpthread
|
2014-03-04 14:35:12 +01:00
|
|
|
endif
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_DEPENDENCIES += host-pkgconf libnl
|
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_LIBNL32
|
2012-05-16 02:07:58 +02:00
|
|
|
else
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_DRIVER_NL80211
|
2010-01-19 19:07:54 +01:00
|
|
|
endif
|
|
|
|
|
2014-02-27 21:47:10 +01:00
|
|
|
# Trailing underscore on purpose to not enable CONFIG_EAPOL_TEST
|
2012-05-23 04:06:01 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_EAP),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_EAP_
|
2015-10-27 14:42:29 +01:00
|
|
|
# uses dlopen()
|
|
|
|
ifeq ($(BR2_STATIC_LIBS),y)
|
|
|
|
WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP_TNC
|
|
|
|
endif
|
2012-05-23 04:06:01 +02:00
|
|
|
else
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP
|
2010-10-06 19:35:20 +02:00
|
|
|
endif
|
|
|
|
|
2014-06-05 14:34:09 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_HOTSPOT),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_HS20 \
|
|
|
|
CONFIG_INTERWORKING
|
2014-06-05 14:34:09 +02:00
|
|
|
endif
|
|
|
|
|
2011-12-05 13:33:18 +01:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += \
|
|
|
|
CONFIG_AP \
|
|
|
|
CONFIG_P2P
|
2011-12-05 13:33:18 +01:00
|
|
|
endif
|
|
|
|
|
2012-02-07 11:33:31 +01:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WPS),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_WPS
|
2012-02-07 11:33:31 +01:00
|
|
|
endif
|
|
|
|
|
2012-12-28 10:47:19 +01:00
|
|
|
# Try to use openssl if it's already available
|
2010-10-06 19:35:20 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_DEPENDENCIES += openssl
|
|
|
|
WPA_SUPPLICANT_LIBS += $(if $(BR2_STATIC_LIBS),-lcrypto -lz)
|
|
|
|
WPA_SUPPLICANT_CONFIG_EDITS += 's/\#\(CONFIG_TLS=openssl\)/\1/'
|
2010-09-01 23:07:55 +02:00
|
|
|
else
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP_PWD
|
|
|
|
WPA_SUPPLICANT_CONFIG_EDITS += 's/\#\(CONFIG_TLS=\).*/\1internal/'
|
2010-09-01 23:07:55 +02:00
|
|
|
endif
|
|
|
|
|
2009-07-20 22:11:42 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_DBUS),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_DEPENDENCIES += host-pkgconf dbus
|
|
|
|
WPA_SUPPLICANT_MAKE_ENV = \
|
|
|
|
PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
|
|
|
|
PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"
|
2012-12-17 22:52:46 +01:00
|
|
|
|
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_DBUS_OLD),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_CTRL_IFACE_DBUS=
|
2012-12-17 22:52:46 +01:00
|
|
|
define WPA_SUPPLICANT_INSTALL_DBUS_OLD
|
2014-12-31 23:50:54 +01:00
|
|
|
$(INSTALL) -m 0644 -D \
|
|
|
|
$(@D)/wpa_supplicant/dbus/$(WPA_SUPPLICANT_DBUS_OLD_SERVICE).service \
|
|
|
|
$(TARGET_DIR)/usr/share/dbus-1/system-services/$(WPA_SUPPLICANT_DBUS_OLD_SERVICE).service
|
2012-12-17 22:52:46 +01:00
|
|
|
endef
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_DBUS_NEW),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_CTRL_IFACE_DBUS_NEW
|
2012-12-17 22:52:46 +01:00
|
|
|
define WPA_SUPPLICANT_INSTALL_DBUS_NEW
|
2014-12-31 23:50:54 +01:00
|
|
|
$(INSTALL) -m 0644 -D \
|
|
|
|
$(@D)/wpa_supplicant/dbus/$(WPA_SUPPLICANT_DBUS_NEW_SERVICE).service \
|
|
|
|
$(TARGET_DIR)/usr/share/dbus-1/system-services/$(WPA_SUPPLICANT_DBUS_NEW_SERVICE).service
|
2012-12-17 22:52:46 +01:00
|
|
|
endef
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_DBUS_INTROSPECTION),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_CTRL_IFACE_DBUS_INTRO
|
2012-12-17 22:52:46 +01:00
|
|
|
endif
|
|
|
|
|
2009-07-20 22:11:42 +02:00
|
|
|
endif
|
2009-03-09 21:28:40 +01:00
|
|
|
|
2013-12-11 14:17:23 +01:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_DEBUG_SYSLOG
|
2013-12-11 14:17:23 +01:00
|
|
|
endif
|
|
|
|
|
2014-05-12 18:16:09 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_READLINE),y)
|
2015-03-31 09:21:57 +02:00
|
|
|
WPA_SUPPLICANT_DEPENDENCIES += readline
|
|
|
|
WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_READLINE
|
2014-05-12 18:16:09 +02:00
|
|
|
endif
|
|
|
|
|
2015-11-01 09:35:18 +01:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO),y)
|
|
|
|
WPA_SUPPLICANT_CONFIG_SET += CONFIG_BUILD_WPA_CLIENT_SO
|
|
|
|
define WPA_SUPPLICANT_INSTALL_WPA_CLIENT_SO
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/libwpa_client.so \
|
|
|
|
$(TARGET_DIR)/usr/lib/libwpa_client.so
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/src/common/wpa_ctrl.h \
|
|
|
|
$(TARGET_DIR)/usr/include/wpa_ctrl.h
|
|
|
|
endef
|
|
|
|
define WPA_SUPPLICANT_INSTALL_STAGING_WPA_CLIENT_SO
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/libwpa_client.so \
|
|
|
|
$(STAGING_DIR)/usr/lib/libwpa_client.so
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/src/common/wpa_ctrl.h \
|
|
|
|
$(STAGING_DIR)/usr/include/wpa_ctrl.h
|
|
|
|
endef
|
|
|
|
endif
|
|
|
|
|
2010-09-01 23:07:55 +02:00
|
|
|
define WPA_SUPPLICANT_CONFIGURE_CMDS
|
|
|
|
cp $(@D)/wpa_supplicant/defconfig $(WPA_SUPPLICANT_CONFIG)
|
2014-02-27 21:47:09 +01:00
|
|
|
sed -i $(patsubst %,-e 's/^#\(%\)/\1/',$(WPA_SUPPLICANT_CONFIG_ENABLE)) \
|
2014-12-31 23:50:54 +01:00
|
|
|
$(patsubst %,-e 's/^\(%\)/#\1/',$(WPA_SUPPLICANT_CONFIG_DISABLE)) \
|
|
|
|
$(patsubst %,-e '1i%=y',$(WPA_SUPPLICANT_CONFIG_SET)) \
|
|
|
|
$(patsubst %,-e %,$(WPA_SUPPLICANT_CONFIG_EDITS)) \
|
|
|
|
$(WPA_SUPPLICANT_CONFIG)
|
2010-09-01 23:07:55 +02:00
|
|
|
endef
|
2009-03-09 21:28:40 +01:00
|
|
|
|
2014-03-04 14:35:12 +01:00
|
|
|
# LIBS for wpa_supplicant, LIBS_c for wpa_cli, LIBS_p for wpa_passphrase
|
2012-05-14 11:46:21 +02:00
|
|
|
define WPA_SUPPLICANT_BUILD_CMDS
|
|
|
|
$(TARGET_MAKE_ENV) CFLAGS="$(WPA_SUPPLICANT_CFLAGS)" \
|
2013-11-28 18:39:00 +01:00
|
|
|
LDFLAGS="$(TARGET_LDFLAGS)" BINDIR=/usr/sbin \
|
2014-03-04 14:35:12 +01:00
|
|
|
LIBS="$(WPA_SUPPLICANT_LIBS)" LIBS_c="$(WPA_SUPPLICANT_LIBS)" \
|
|
|
|
LIBS_p="$(WPA_SUPPLICANT_LIBS)" \
|
2012-05-14 11:46:21 +02:00
|
|
|
$(MAKE) CC="$(TARGET_CC)" -C $(@D)/$(WPA_SUPPLICANT_SUBDIR)
|
2010-09-01 23:07:55 +02:00
|
|
|
endef
|
|
|
|
|
2012-05-14 11:46:21 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_CLI),y)
|
|
|
|
define WPA_SUPPLICANT_INSTALL_CLI
|
|
|
|
$(INSTALL) -m 0755 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/wpa_cli \
|
|
|
|
$(TARGET_DIR)/usr/sbin/wpa_cli
|
|
|
|
endef
|
2009-03-09 21:28:40 +01:00
|
|
|
endif
|
2010-09-01 23:07:55 +02:00
|
|
|
|
2012-05-14 11:46:21 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE),y)
|
|
|
|
define WPA_SUPPLICANT_INSTALL_PASSPHRASE
|
|
|
|
$(INSTALL) -m 0755 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/wpa_passphrase \
|
|
|
|
$(TARGET_DIR)/usr/sbin/wpa_passphrase
|
2010-09-01 23:07:55 +02:00
|
|
|
endef
|
2009-03-09 21:28:40 +01:00
|
|
|
endif
|
2010-09-01 23:07:55 +02:00
|
|
|
|
2012-05-14 11:46:21 +02:00
|
|
|
ifeq ($(BR2_PACKAGE_DBUS),y)
|
2010-09-01 23:07:55 +02:00
|
|
|
define WPA_SUPPLICANT_INSTALL_DBUS
|
2014-12-31 23:50:54 +01:00
|
|
|
$(INSTALL) -m 0644 -D \
|
|
|
|
$(@D)/wpa_supplicant/dbus/dbus-wpa_supplicant.conf \
|
|
|
|
$(TARGET_DIR)/etc/dbus-1/system.d/wpa_supplicant.conf
|
2012-12-17 22:52:46 +01:00
|
|
|
$(WPA_SUPPLICANT_INSTALL_DBUS_OLD)
|
|
|
|
$(WPA_SUPPLICANT_INSTALL_DBUS_NEW)
|
2010-09-01 23:07:55 +02:00
|
|
|
endef
|
2009-07-20 22:11:42 +02:00
|
|
|
endif
|
2009-03-09 21:28:40 +01:00
|
|
|
|
2015-11-01 09:35:18 +01:00
|
|
|
define WPA_SUPPLICANT_INSTALL_STAGING_CMDS
|
|
|
|
$(WPA_SUPPLICANT_INSTALL_STAGING_WPA_CLIENT_SO)
|
|
|
|
endef
|
|
|
|
|
2012-05-14 11:46:21 +02:00
|
|
|
define WPA_SUPPLICANT_INSTALL_TARGET_CMDS
|
|
|
|
$(INSTALL) -m 0755 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/wpa_supplicant \
|
|
|
|
$(TARGET_DIR)/usr/sbin/wpa_supplicant
|
|
|
|
$(INSTALL) -m 644 -D package/wpa_supplicant/wpa_supplicant.conf \
|
|
|
|
$(TARGET_DIR)/etc/wpa_supplicant.conf
|
|
|
|
$(WPA_SUPPLICANT_INSTALL_CLI)
|
|
|
|
$(WPA_SUPPLICANT_INSTALL_PASSPHRASE)
|
|
|
|
$(WPA_SUPPLICANT_INSTALL_DBUS)
|
2015-11-01 09:35:18 +01:00
|
|
|
$(WPA_SUPPLICANT_INSTALL_WPA_CLIENT_SO)
|
2010-09-01 23:07:55 +02:00
|
|
|
endef
|
2009-03-09 21:28:40 +01:00
|
|
|
|
2015-03-20 20:14:15 +01:00
|
|
|
define WPA_SUPPLICANT_INSTALL_INIT_SYSTEMD
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant.service \
|
|
|
|
$(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant.service
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant@.service \
|
|
|
|
$(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant@.service
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant-nl80211@.service \
|
|
|
|
$(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant-nl80211@.service
|
|
|
|
$(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant-wired@.service \
|
|
|
|
$(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant-wired@.service
|
|
|
|
endef
|
|
|
|
|
2012-07-03 00:07:32 +02:00
|
|
|
$(eval $(generic-package))
|