fix madwifi build on atheros
[openwrt.git] / package / hostapd / Makefile
index 7e0f0877f68320b9449615c74de4a82ed94ad82f..2e506201d1eccc338d18226f45f451da14aa777f 100644 (file)
@@ -9,14 +9,21 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=hostapd
-PKG_VERSION:=0.5.7
+PKG_VERSION:=0.5.8
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://hostap.epitest.fi/releases/
-PKG_MD5SUM:=d5113247dc6ee17106e6bc7cb89aa507
+PKG_MD5SUM:=40416b48cae9c78e5a2452caf214aff3
 
-PKG_BUILD_DEPENDS:=madwifi
+PKG_BUILD_DEPENDS:=
+
+ifeq ($(shell grep "CONFIG_PACKAGE_kmod-madwifi is not set" $(TOPDIR)/.config),)
+  PKG_BUILD_DEPENDS+=madwifi
+endif
+ifeq ($(shell grep "CONFIG_PACKAGE_kmod-mac80211 is not set" $(TOPDIR)/.config),)
+  PKG_BUILD_DEPENDS+=mac80211
+endif
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -28,50 +35,62 @@ define Package/hostapd/Default
 endef
 
 define Package/hostapd
-  $(call Package/hostapd/Default)
-  DEPENDS:=+libopenssl @!LINUX_2_6_AVR32
+$(call Package/hostapd/Default)
+  DEPENDS:=+libopenssl @!TARGET_avr32 @!TARGET_etrax
   TITLE+= (full)
-  DESCRIPTION:=\
-       This package contains a full featured IEEE 802.1x/WPA/EAP/RADIUS \\\
-       Authenticator.
 endef
 
 define Package/hostapd/conffiles
 /etc/hostapd.conf
 endef
 
+define Package/hostapd/description
+ This package contains a full featured IEEE 802.1x/WPA/EAP/RADIUS 
+ Authenticator.
+endef
+
 define Package/hostapd-mini
-  $(call Package/hostapd/Default)
-  DEPENDS:=@!LINUX_2_6_AVR32
+$(call Package/hostapd/Default)
+  DEPENDS:=@!TARGET_AVR32 @!TARGET_ETRAX
   TITLE+= (WPA-PSK only)
-  DESCRIPTION:=\
-       This package contains a minimal IEEE 802.1x/WPA/EAP/RADIUS Authenticator \\\
-       (WPA-PSK only).
 endef
 
 define Package/hostapd-mini/conffiles
 /etc/hostapd.conf
 endef
 
+define Package/hostapd-mini/description
+ This package contains a minimal IEEE 802.1x/WPA/EAP/RADIUS Authenticator 
+ (WPA-PSK only).
+endef
+
 define Package/hostapd-utils
   $(call Package/hostapd/Default)
   DEPENDS:=@PACKAGE_hostapd||PACKAGE_hostapd-mini
   TITLE+= (utils)
-  DESCRIPTION:=\
-       This package contains a command line utility to control the \\\
-       IEEE 802.1x/WPA/EAP/RADIUS Authenticator.
+endef
+
+define Package/hostapd-utils/description
+ This package contains a command line utility to control the 
+ IEEE 802.1x/WPA/EAP/RADIUS Authenticator.
 endef
 
 define Build/ConfigureTarget
        $(CP) $(PKG_BUILD_DIR) $(PKG_BUILD_DIR)_$(1)
        $(CP) ./files/$(1).config $(PKG_BUILD_DIR)_$(1)/.config
+ifneq ($(CONFIG_PACKAGE_kmod-madwifi),)
+       echo "CONFIG_DRIVER_MADWIFI=y" >> $(PKG_BUILD_DIR)_$(1)/.config
+endif
+ifneq ($(CONFIG_PACKAGE_kmod-mac80211),)
+       echo "CONFIG_DRIVER_DEVICESCAPE=y" >> $(PKG_BUILD_DIR)_$(1)/.config
+endif
 endef
 
 define Build/CompileTarget
        $(MAKE) -C $(PKG_BUILD_DIR)_$(1) \
                $(TARGET_CONFIGURE_OPTS) \
                OPTFLAGS="$(TARGET_CFLAGS)" \
-               CPPFLAGS="$(TARGET_CPPFLAGS) -I$(STAGING_DIR)/usr/include/madwifi" \
+               CPPFLAGS="$(TARGET_CPPFLAGS) -I$(STAGING_DIR)/usr/include/madwifi -I$(STAGING_DIR)/usr/include/mac80211" \
                LDFLAGS="$(TARGET_LDFLAGS)" \
                hostapd hostapd_cli
        $(CP) $(PKG_BUILD_DIR)_$(1)/hostapd_cli $(PKG_BUILD_DIR)/
@@ -85,7 +104,11 @@ define Package/InstallTemplate
        $(INSTALL_DIR) $$(1)/lib/wifi
        $(INSTALL_DATA) ./files/hostapd.sh $$(1)/lib/wifi/hostapd.sh
        $(INSTALL_DIR) $$(1)/etc
+ifneq ($(CONFIG_PACKAGE_kmod-madwifi),)
        $(INSTALL_CONF) $(PKG_BUILD_DIR)_$(2)/madwifi.conf $$(1)/etc/hostapd.conf
+else
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)_$(2)/hostapd.conf $$(1)/etc/hostapd.conf
+endif
        $(INSTALL_DIR) $$(1)/usr/sbin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)_$(2)/hostapd $$(1)/usr/sbin/
 endef