#
-# Copyright (C) 2006-2012 OpenWrt.org
+# Copyright (C) 2006-2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=hostapd
-PKG_VERSION:=20131120
+PKG_VERSION:=2014-10-25
PKG_RELEASE:=1
-PKG_REV:=594516b4c28a94ca686b17f1e463dfd6712b75a7
+PKG_REV:=01e2231fdc4fbec61fbc382238e3606a1d2826e4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=git://w1.fi/srv/git/hostap.git
# PKG_MIRROR_MD5SUM:=4e7c1f97edd7514535056fce54ae053a
PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
+PKG_LICENSE:=BSD-3-Clause
PKG_BUILD_PARALLEL:=1
PKG_CONFIG_DEPENDS:= \
CONFIG_WPA_SUPPLICANT_NO_TIMESTAMP_CHECK \
CONFIG_PACKAGE_kmod-ath9k \
- CONFIG_PACKAGE_kmod-mac80211 \
+ CONFIG_PACKAGE_kmod-cfg80211 \
CONFIG_PACKAGE_kmod-madwifi \
CONFIG_PACKAGE_hostapd \
CONFIG_PACKAGE_hostapd-mini \
endif
DRIVER_MAKEOPTS= \
- CONFIG_DRIVER_NL80211=$(CONFIG_PACKAGE_kmod-mac80211) \
+ CONFIG_DRIVER_NL80211=$(CONFIG_PACKAGE_kmod-cfg80211) \
CONFIG_DRIVER_MADWIFI=$(CONFIG_PACKAGE_kmod-madwifi) \
CONFIG_DRIVER_HOSTAP=$(CONFIG_PACKAGE_kmod-hostap) \
CONFIG_IEEE80211N=$(HOSTAPD_IEEE80211N) \
CONFIG_IEEE80211W=$(CONFIG_PACKAGE_kmod-ath9k) \
CONFIG_DRIVER_WEXT=$(CONFIG_DRIVER_WEXT_SUPPORT) \
- $(if $(CONFIG_WPA_RFKILL_SUPPORT),NEED_RFKILL=y)
ifneq ($(LOCAL_TYPE),hostapd)
ifdef CONFIG_WPA_SUPPLICANT_OPENSSL
ifdef CONFIG_WPA_SUPPLICANT_NO_TIMESTAMP_CHECK
TARGET_CFLAGS += -DNO_TIMESTAMP_CHECK
endif
+ ifdef CONFIG_WPA_RFKILL_SUPPORT
+ DRIVER_MAKEOPTS += NEED_RFKILL=y
+ endif
DRIVER_MAKEOPTS += \
CONFIG_DRIVER_ROBOSWITCH=$(CONFIG_PACKAGE_kmod-switch)
endif
-ifdef CONFIG_USE_EGLIBC
+ifdef CONFIG_USE_GLIBC
TARGET_LDFLAGS += -lrt
+ TARGET_LDFLAGS_C += -lrt
endif
-DRV_DEPENDS:=+PACKAGE_kmod-mac80211:libnl-tiny @(!TARGET_avr32||BROKEN)
+DRV_DEPENDS:=+PACKAGE_kmod-cfg80211:libnl-tiny @(!TARGET_avr32||BROKEN)
define Package/hostapd/Default
SECTION:=net
$(call Package/hostapd/Default)
TITLE+= (full)
VARIANT:=full
+ CONFLICTS:=wpad wpad-mini
endef
define Package/hostapd/description
$(call Package/hostapd/Default)
TITLE+= (WPA-PSK only)
VARIANT:=mini
+ CONFLICTS:=wpad wpad-mini
endef
define Package/hostapd-mini/description
TITLE:=WPA Supplicant
URL:=http://hostap.epitest.fi/wpa_supplicant/
DEPENDS:=$(DRV_DEPENDS) +WPA_SUPPLICANT_OPENSSL:libopenssl
+ CONFLICTS:=wpad wpad-mini
VARIANT:=supplicant-full
endef
$(Package/wpa-supplicant)
TITLE:=WPA Supplicant (with Wi-Fi P2P support)
DEPENDS:=$(DRV_DEPENDS)
+ CONFLICTS:=wpad wpad-mini
VARIANT:=supplicant-p2p
endef
$(Package/wpa-supplicant)
TITLE:=WPA Supplicant (minimal version)
DEPENDS:=$(DRV_DEPENDS)
+ CONFLICTS:=wpad wpad-mini
VARIANT:=supplicant-mini
endef
CATEGORY:=Network
endef
+define Package/eapol-test
+ TITLE:=802.1x authentication test utility
+ SECTION:=net
+ CATEGORY:=Network
+ VARIANT:=supplicant-full
+ DEPENDS:=$(DRV_DEPENDS)
+endef
+
+
ifneq ($(wildcard $(PKG_BUILD_DIR)/.config_*),$(subst .configured_,.config_,$(STAMP_CONFIGURED)))
define Build/Configure/rebuild
$(FIND) $(PKG_BUILD_DIR) -name \*.o -or -name \*.a | $(XARGS) rm -f
TARGET_LDFLAGS += -lubox -lubus
endif
-ifdef CONFIG_PACKAGE_kmod-mac80211
+ifdef CONFIG_PACKAGE_kmod-cfg80211
TARGET_LDFLAGS += -lm -lnl-tiny
endif
$(TARGET_CONFIGURE_OPTS) \
$(DRIVER_MAKEOPTS) \
LIBS="$(TARGET_LDFLAGS)" \
- LIBS_c="" \
+ LIBS_c="$(TARGET_LDFLAGS_C)" \
BCHECK= \
$(2)
endef
echo ` \
$(call Build/RunMake,hostapd,-s MULTICALL=1 dump_cflags); \
$(call Build/RunMake,wpa_supplicant,-s MULTICALL=1 dump_cflags) | \
- sed -e 's,-n ,,g' -e 's,$(TARGET_CFLAGS),,' \
+ sed -e 's,-n ,,g' -e 's^$(TARGET_CFLAGS)^^' \
` > $(PKG_BUILD_DIR)/.cflags
+$(call Build/RunMake,hostapd, \
CFLAGS="$$$$(cat $(PKG_BUILD_DIR)/.cflags)" \
)
endef
+define Build/Compile/supplicant-full
+ $(call Build/RunMake,wpa_supplicant, \
+ eapol_test \
+ )
+endef
+
define Build/Compile
$(Build/Compile/$(LOCAL_TYPE))
+ $(Build/Compile/$(BUILD_VARIANT))
endef
define Install/hostapd
$(call Install/hostapd,$(1))
$(call Install/supplicant,$(1))
$(INSTALL_BIN) $(PKG_BUILD_DIR)/wpad $(1)/usr/sbin/
- ln -sf wpad $(1)/usr/sbin/hostapd
- ln -sf wpad $(1)/usr/sbin/wpa_supplicant
+ $(LN) wpad $(1)/usr/sbin/hostapd
+ $(LN) wpad $(1)/usr/sbin/wpa_supplicant
endef
Package/wpad-mini/install = $(Package/wpad/install)
endef
endif
+ifeq ($(BUILD_VARIANT),supplicant-full)
+ define Package/eapol-test/install
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(CP) $(PKG_BUILD_DIR)/wpa_supplicant/eapol_test $(1)/usr/sbin/
+ endef
+endif
+
$(eval $(call BuildPackage,hostapd))
$(eval $(call BuildPackage,hostapd-mini))
$(eval $(call BuildPackage,wpad))
$(eval $(call BuildPackage,hostapd-utils))
$(eval $(call BuildPackage,hostapd-common))
$(eval $(call BuildPackage,hostapd-common-old))
+$(eval $(call BuildPackage,eapol-test))