summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-11-17 14:14:16 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-11-17 14:14:16 +0000
commitd4125cfaa4817d6dfd8cd024c6aee8ea855bda7c (patch)
tree9ff92832b34ba74ec376d6ed86c022185508895f
parent5b001bbf09fd17dc84a3a0162bd932e73d76d429 (diff)
fix hostapd rebuild check, isolate the common src/ directory for hostapd variants as well to fix compile errors when both variants are selected (#2722)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9575 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/hostapd/Makefile20
-rw-r--r--rules.mk10
2 files changed, 16 insertions, 14 deletions
diff --git a/package/hostapd/Makefile b/package/hostapd/Makefile
index af215f6fff..f92a5754fa 100644
--- a/package/hostapd/Makefile
+++ b/package/hostapd/Makefile
@@ -20,7 +20,7 @@ PKG_SOURCE_VERSION:=$(PKG_REV)
PKG_BUILD_DEPENDS:=madwifi mac80211 libnl openssl
include $(INCLUDE_DIR)/package.mk
-$(eval $(call confvar,STAMP_CONFIGURED,CONFIG_PACKAGE_kmod-mac80211 CONFIG_PACKAGE_kmod-madwifi))
+STAMP_CONFIGURED:=$(STAMP_CONFIGURED)_$(call confvar,CONFIG_PACKAGE_kmod-mac80211 CONFIG_PACKAGE_kmod-madwifi CONFIG_PACKAGE_hostapd CONFIG_PACKAGE_hostapd-mini)
define Package/hostapd/Default
SECTION:=net
@@ -72,31 +72,35 @@ endef
define Build/ConfigureTarget
rm -rf $(PKG_BUILD_DIR)/hostapd.$(1)
- $(CP) $(PKG_BUILD_DIR)/hostapd $(PKG_BUILD_DIR)/hostapd.$(1)
- $(CP) ./files/$(1).config $(PKG_BUILD_DIR)/hostapd.$(1)/.config
+ mkdir -p $(PKG_BUILD_DIR)/hostapd.$(1)
+ $(CP) \
+ $(PKG_BUILD_DIR)/hostapd \
+ $(PKG_BUILD_DIR)/src \
+ $(PKG_BUILD_DIR)/hostapd.$(1)/
+ $(CP) ./files/$(1).config $(PKG_BUILD_DIR)/hostapd.$(1)/hostapd/.config
$(if $(CONFIG_PACKAGE_kmod-mac80211),,$(SED) 's,^CONFIG_DRIVER_DEVICESCAPE,#CONFIG_DRIVER_DEVICESCAPE,g' $(PKG_BUILD_DIR)/hostapd.$(1)/.config)
$(if $(CONFIG_PACKAGE_kmod-madwifi),,$(SED) 's,^CONFIG_DRIVER_MADWIFI,#CONFIG_DRIVER_MADWIFI,g' $(PKG_BUILD_DIR)/hostapd.$(1)/.config)
endef
define Build/CompileTarget
CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/madwifi -I$(STAGING_DIR)/usr/include/mac80211 -I$(STAGING_DIR)/usr/include" \
- $(MAKE) -C $(PKG_BUILD_DIR)/hostapd.$(1) \
+ $(MAKE) -C $(PKG_BUILD_DIR)/hostapd.$(1)/hostapd \
$(TARGET_CONFIGURE_OPTS) \
LIBS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib \
$(if $(CONFIG_PACKAGE_kmod-mac80211),-lm $(STAGING_DIR)/usr/lib/libnl.a) \
$(if $(findstring default,$(1)),-lssl -lcrypto)" \
hostapd hostapd_cli
- $(CP) $(PKG_BUILD_DIR)/hostapd.$(1)/hostapd_cli $(PKG_BUILD_DIR)/
+ $(CP) $(PKG_BUILD_DIR)/hostapd.$(1)/hostapd/hostapd_cli $(PKG_BUILD_DIR)/
endef
define Package/InstallTemplate
$(INSTALL_DIR) $$(1)/lib/wifi
$(INSTALL_DATA) ./files/hostapd.sh $$(1)/lib/wifi/hostapd.sh
+ $(INSTALL_DIR) $$(1)/usr/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/hostapd.$(2)/hostapd/hostapd $$(1)/usr/sbin/
# config is managed through uci
# $(INSTALL_DIR) $$(1)/etc
-# $(INSTALL_CONF) $(PKG_BUILD_DIR)/hostapd.$(2)/hostapd.conf $$(1)/etc/hostapd.conf
- $(INSTALL_DIR) $$(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/hostapd.$(2)/hostapd $$(1)/usr/sbin/
+# $(INSTALL_CONF) $(PKG_BUILD_DIR)/hostapd.$(2)/hostapd/hostapd.conf $$(1)/etc/hostapd.conf
endef
define Package/Template
diff --git a/rules.mk b/rules.mk
index 14ff5acdf2..d36c994953 100644
--- a/rules.mk
+++ b/rules.mk
@@ -138,12 +138,10 @@ $(call shvar,$(1))=$$(call $(1))
export $(call shvar,$(1))
endef
-define confvar
-$(1):=$$(strip $$($(1)))_
-$(foreach v,$(2),
- $(1):=$$(strip $$($(1)))$(if $($(v)),y,n)
-)
-endef
+empty:=
+space:= $(empty) $(empty)
+merge=$(subst $(space),,$(1))
+confvar=$(call merge,$(foreach v,$(1),$(if $($(v)),y,n)))
# file extension
ext=$(word $(words $(subst ., ,$(1))),$(subst ., ,$(1)))