summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/Config.in1
-rw-r--r--package/wpa_supplicant/Config.in32
-rw-r--r--package/wpa_supplicant/wpa_supplicant.mk53
3 files changed, 86 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in
index 59d2a4397..07d72c050 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -218,6 +218,7 @@ if !BR2_PACKAGE_BUSYBOX_HIDE_OTHERS
source "package/wget/Config.in"
endif
source "package/wireless-tools/Config.in"
+source "package/wpa_supplicant/Config.in"
endmenu
diff --git a/package/wpa_supplicant/Config.in b/package/wpa_supplicant/Config.in
new file mode 100644
index 000000000..4b5023972
--- /dev/null
+++ b/package/wpa_supplicant/Config.in
@@ -0,0 +1,32 @@
+config BR2_PACKAGE_WPA_SUPPLICANT
+ bool "wpa_supplicant"
+ help
+ WPA supplicant for secure wireless networks
+
+ http://hostap.epitest.fi/wpa_supplicant/
+
+config BR2_PACKAGE_WPA_SUPPLICANT_EAP
+ bool "Enable WPA with EAP"
+ depends on BR2_PACKAGE_WPA_SUPPLICANT
+ help
+ Enable WPA with EAP (IEEE 802.1X)
+
+config BR2_PACKAGE_WPA_SUPPLICANT_OPENSSL
+ bool "Use openssl TLS (recommended)"
+ depends on BR2_PACKAGE_WPA_SUPPLICANT && BR2_PACKAGE_WPA_SUPPLICANT_EAP
+ select BR2_PACKAGE_OPENSSL
+ help
+ Use OpenSSL's TLS implementation instead of internal libtommath.
+
+config BR2_PACKAGE_WPA_SUPPLICANT_CLI
+ bool "Install wpa_cli binary"
+ depends on BR2_PACKAGE_WPA_SUPPLICANT
+ help
+ Install wpa_cli command line utility
+
+config BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE
+ bool "Install wpa_passphrase binary"
+ depends on BR2_PACKAGE_WPA_SUPPLICANT
+ help
+ Install wpa_passphrase command line utility
+
diff --git a/package/wpa_supplicant/wpa_supplicant.mk b/package/wpa_supplicant/wpa_supplicant.mk
new file mode 100644
index 000000000..10dfe3e74
--- /dev/null
+++ b/package/wpa_supplicant/wpa_supplicant.mk
@@ -0,0 +1,53 @@
+#############################################################
+#
+# wpa_supplicant
+#
+#############################################################
+
+WPA_SUPPLICANT_VERSION = 0.6.8
+WPA_SUPPLICANT_SOURCE = wpa_supplicant-$(WPA_SUPPLICANT_VERSION).tar.gz
+WPA_SUPPLICANT_SITE = http://hostap.epitest.fi/releases
+WPA_SUPPLICANT_LIBTOOL_PATCH = NO
+WPA_SUPPLICANT_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install
+WPA_SUPPLICANT_DEPENDENCIES = uclibc
+WPA_SUPPLICANT_CONFIG = $(WPA_SUPPLICANT_DIR)/wpa_supplicant/.config
+WPA_SUPPLICANT_SUBDIR = wpa_supplicant
+WPA_SUPPLICANT_TARGET_BINS = wpa_cli wpa_supplicant wpa_passphrase
+
+ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_OPENSSL),y)
+ WPA_SUPPLICANT_DEPENDENCIES += openssl
+endif
+
+$(eval $(call AUTOTARGETS,package,wpa_supplicant))
+
+$(WPA_SUPPLICANT_TARGET_CONFIGURE):
+ cp $(WPA_SUPPLICANT_DIR)/wpa_supplicant/defconfig $(WPA_SUPPLICANT_CONFIG)
+ echo "CFLAGS += $(TARGET_CFLAGS)" >>$(WPA_SUPPLICANT_CONFIG)
+ echo "CC = $(TARGET_CC)" >>$(WPA_SUPPLICANT_CONFIG)
+ $(SED) "s/\/local//" $(WPA_SUPPLICANT_DIR)/wpa_supplicant/Makefile
+ifneq ($(BR2_PACKAGE_WPA_SUPPLICANT_EAP),y)
+ $(SED) "s/^CONFIG_EAP_*/#CONFIG_EAP_/g" $(WPA_SUPPLICANT_CONFIG)
+ echo "CONFIG_TLS=none" >>$(WPA_SUPPLICANT_CONFIG)
+else
+ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_OPENSSL),y)
+ echo "CONFIG_TLS=openssl" >>$(WPA_SUPPLICANT_CONFIG)
+else
+ echo "CONFIG_TLS=internal" >>$(WPA_SUPPLICANT_CONFIG)
+ echo "CONFIG_INTERNAL_LIBTOMMATH=y" >>$(WPA_SUPPLICANT_CONFIG)
+endif
+endif
+ touch $@
+
+$(WPA_SUPPLICANT_HOOK_POST_INSTALL):
+ifneq ($(BR2_PACKAGE_WPA_SUPPLICANT_CLI),y)
+ rm -f $(TARGET_DIR)/usr/sbin/wpa_cli
+endif
+ifneq ($(BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE),y)
+ rm -f $(TARGET_DIR)/usr/sbin/wpa_passphrase
+endif
+
+$(WPA_SUPPLICANT_TARGET_UNINSTALL):
+ $(call MESSAGE,"Uninstalling")
+ rm -f $(addprefix $(TARGET_DIR)/usr/sbin/, $(WPA_SUPPLICANT_TARGET_BINS))
+ rm -f $(WPA_SUPPLICANT_TARGET_INSTALL_TARGET) $(WPA_SUPPLICANT_HOOK_POST_INSTALL)
+