major target cleanup. it is now possible to have subtargets that can override many...
[openwrt.git] / package / hostapd / Makefile
index 068a04b1e9af34c43b92789eb7e978b644fe0f68..2e506201d1eccc338d18226f45f451da14aa777f 100644 (file)
@@ -9,17 +9,21 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=hostapd
-PKG_VERSION:=0.5.5
+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:=92288aeb2b90c0c81ae3f50beff9b890
-PKG_CAT:=zcat
+PKG_MD5SUM:=40416b48cae9c78e5a2452caf214aff3
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_BUILD_DEPENDS:=
 
-PKG_BUILDDEP:=madwifi
+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
 
@@ -31,50 +35,63 @@ define Package/hostapd/Default
 endef
 
 define Package/hostapd
-  $(call Package/hostapd/Default)
-  DEPENDS:=+libopenssl
+$(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)
+$(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="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include -I$(STAGING_DIR)/usr/include/madwifi" \
-               LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
+               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)/
 endef
@@ -84,8 +101,14 @@ define Package/InstallTemplate
                rm -f $(PKG_BUILD_DIR)/.built; \
                $(MAKE) $(PKG_BUILD_DIR)/.built; \
        fi
+       $(INSTALL_DIR) $$(1)/lib/wifi
+       $(INSTALL_DATA) ./files/hostapd.sh $$(1)/lib/wifi/hostapd.sh
        $(INSTALL_DIR) $$(1)/etc
-       $(INSTALL_CONF $(PKG_BUILD_DIR)_$(2)/madwifi.conf $$(1)/etc/hostapd.conf
+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