- 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" \
- hostapd_cli
- touch $@
-
-$(IPKG_HOSTAPD_UTILS): $(PKG_BUILD_DIR)/.built
- install -m0755 -d $(IDIR_HOSTAPD_UTILS)/usr/sbin
- install -m0755 $(PKG_BUILD_DIR)/hostapd_cli $(IDIR_HOSTAPD_UTILS)/usr/sbin/
- $(RSTRIP) $(IDIR_HOSTAPD_UTILS)
- $(IPKG_BUILD) $(IDIR_HOSTAPD_UTILS) $(PACKAGE_DIR)
-
-mostlyclean:
- -$(MAKE) -C $(PKG_BUILD_DIR) clean
- rm -f $(PKG_BUILD_DIR)/.built
+ 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/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/hostapd.conf $$(1)/etc/hostapd.conf
+endef
+
+define Package/Template
+ ifneq ($(CONFIG_PACKAGE_$(1)),)
+ define Build/Configure/$(2)
+ $(call Build/ConfigureTarget,$(2))
+ endef
+ define Build/Compile/$(2)
+ $(call Build/CompileTarget,$(2))
+ endef
+ define Package/$(1)/install
+ $(call Package/InstallTemplate,$(1),$(2))
+ endef
+ endif
+endef
+
+define Build/Configure
+ rm -f $(PKG_BUILD_DIR)/.configured*
+ $(call Build/Configure/default)
+ $(call Build/Configure/mini)
+endef
+
+define Build/Compile
+ $(call Build/Compile/default)
+ $(call Build/Compile/mini)
+endef
+
+define Build/Clean
+ rm -rf $(PKG_BUILD_DIR)_default
+ rm -rf $(PKG_BUILD_DIR)_mini
+endef
+
+define Package/hostapd-utils/install
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/hostapd_cli $(1)/usr/sbin/
+endef
+
+$(eval $(call Package/Template,hostapd,default))
+$(eval $(call Package/Template,hostapd-mini,mini))