[OpenWrt-Devel,1/2] hostapd: cleanup package definition

Message ID 1531416828-29071-1-git-send-email-dev@kresin.me
State New
Delegated to: Mathias Kresin
Headers show
Series
  • [OpenWrt-Devel,1/2] hostapd: cleanup package definition
Related show

Commit Message

Mathias Kresin July 12, 2018, 5:33 p.m.
Move common variables and/or values to the package (variant) default.
Add additional values in variant packages if necessary. Remove further
duplicates by introducing new templates.

Remove the ANY_[HOSTAPD|SUPPLICANT_PROVIDERS]_PROVIDERS. The are the
same as the variables without the any prefix. No need to maintain both
variables.

Signed-off-by: Mathias Kresin <dev@kresin.me>
---
 package/network/services/hostapd/Makefile | 88 ++++++++++++++++---------------
 1 file changed, 45 insertions(+), 43 deletions(-)

Patch

diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile
index cf0b005..5d53cb0 100644
--- a/package/network/services/hostapd/Makefile
+++ b/package/network/services/hostapd/Makefile
@@ -45,8 +45,6 @@  EAPOL_TEST_PROVIDERS:=eapol-test eapol-test-openssl eapol-test-wolfssl
 
 SUPPLICANT_PROVIDERS:=$(WPAD_PROVIDERS) $(SUPPLICANT_ONLY_PROVIDERS)
 HOSTAPD_PROVIDERS:=$(WPAD_PROVIDERS) $(HOSTAPD_ONLY_PROVIDERS)
-ANY_SUPPLICANT_PROVIDERS:=$(WPAD_PROVIDERS) $(SUPPLICANT_ONLY_PROVIDERS)
-ANY_HOSTAPD_PROVIDERS:=$(WPAD_PROVIDERS) $(HOSTAPD_ONLY_PROVIDERS)
 ANY_PROVIDERS:=$(WPAD_PROVIDERS) $(SUPPLICANT_ONLY_PROVIDERS) $(HOSTAPD_ONLY_PROVIDERS)
 
 LOCAL_TYPE=$(strip \
@@ -147,12 +145,14 @@  endif
 
 DRV_DEPENDS:=+PACKAGE_kmod-cfg80211:libnl-tiny
 
+
 define Package/hostapd/Default
   SECTION:=net
   CATEGORY:=Network
   TITLE:=IEEE 802.1x Authenticator
   URL:=http://hostap.epitest.fi/
   DEPENDS:=$(DRV_DEPENDS) +hostapd-common +libubus
+  PROVIDES:=hostapd
 endef
 
 define Package/hostapd
@@ -161,30 +161,29 @@  $(call Package/hostapd/Default)
   VARIANT:=full-internal
 endef
 
+define Package/hostapd/description
+ This package contains a full featured IEEE 802.1x/WPA/EAP/RADIUS
+ Authenticator.
+endef
+
 define Package/hostapd-openssl
 $(call Package/hostapd/Default)
   TITLE+= (full)
   VARIANT:=full-openssl
   DEPENDS+=+libopenssl
   CONFLICTS:=$(filter-out hostapd-openssl ,$(HOSTAPD_ONLY_PROVIDERS))
-  PROVIDES:=hostapd
 endef
 
+Package/hostapd-openssl/description = $(Package/hostapd/description)
+
 define Package/hostapd-wolfssl
 $(call Package/hostapd/Default)
   TITLE+= (full)
   VARIANT:=full-wolfssl
   DEPENDS+=+libwolfssl
   CONFLICTS:=$(filter-out hostapd-openssl ,$(filter-out hostapd-wolfssl ,$(HOSTAPD_ONLY_PROVIDERS)))
-  PROVIDES:=hostapd
-endef
-
-define Package/hostapd/description
- This package contains a full featured IEEE 802.1x/WPA/EAP/RADIUS
- Authenticator.
 endef
 
-Package/hostapd-openssl/description = $(Package/hostapd/description)
 Package/hostapd-wolfssl/description = $(Package/hostapd/description)
 
 define Package/hostapd-mini
@@ -192,18 +191,18 @@  $(call Package/hostapd/Default)
   TITLE+= (WPA-PSK only)
   VARIANT:=mini
   CONFLICTS:=$(filter-out hostapd-wolfssl ,$(filter-out hostapd-openssl ,$(filter-out hostapd-mini ,$(HOSTAPD_ONLY_PROVIDERS))))
-  PROVIDES:=hostapd
 endef
 
 define Package/hostapd-mini/description
  This package contains a minimal IEEE 802.1x/WPA Authenticator (WPA-PSK only).
 endef
 
-
 define Package/hostapd-utils
-  $(call Package/hostapd/Default)
-  TITLE+= (utils)
-  DEPENDS:=@$(subst $(space),||,$(foreach pkg,$(ANY_HOSTAPD_PROVIDERS),PACKAGE_$(pkg)))
+  SECTION:=net
+  CATEGORY:=Network
+  TITLE:=IEEE 802.1x Authenticator (utils)
+  URL:=http://hostap.epitest.fi/
+  DEPENDS:=@$(subst $(space),||,$(foreach pkg,$(HOSTAPD_PROVIDERS),PACKAGE_$(pkg)))
 endef
 
 define Package/hostapd-utils/description
@@ -211,6 +210,7 @@  define Package/hostapd-utils/description
  IEEE 802.1x/WPA/EAP/RADIUS Authenticator.
 endef
 
+
 define Package/wpad/Default
   SECTION:=net
   CATEGORY:=Network
@@ -234,6 +234,11 @@  $(call Package/wpad/Default)
              ))))))
 endef
 
+define Package/wpad/description
+ This package contains a full featured IEEE 802.1x/WPA/EAP/RADIUS
+ Authenticator and Supplicant
+endef
+
 define Package/wpad-openssl
 $(call Package/wpad/Default)
   TITLE+= (full)
@@ -245,6 +250,8 @@  $(call Package/wpad/Default)
              $(ANY_PROVIDERS))))
 endef
 
+Package/wpad-openssl/description = $(Package/wpad/description)
+
 define Package/wpad-wolfssl
 $(call Package/wpad/Default)
   TITLE+= (full)
@@ -257,12 +264,6 @@  $(call Package/wpad/Default)
              $(ANY_PROVIDERS)))))
 endef
 
-define Package/wpad/description
- This package contains a full featured IEEE 802.1x/WPA/EAP/RADIUS
- Authenticator and Supplicant
-endef
-
-Package/wpad-openssl/description = $(Package/wpad/description)
 Package/wpad-wolfssl/description = $(Package/wpad/description)
 
 define Package/wpad-mini
@@ -276,37 +277,43 @@  define Package/wpad-mini/description
  This package contains a minimal IEEE 802.1x/WPA Authenticator and Supplicant (WPA-PSK only).
 endef
 
-define Package/wpad-mesh-openssl
+define Package/wpad-mesh
 $(call Package/wpad/Default)
   TITLE+= (with 802.11s mesh and SAE support)
-  DEPENDS+=@PACKAGE_kmod-cfg80211 @(!TARGET_uml||BROKEN) +libopenssl
+  DEPENDS+=@PACKAGE_kmod-cfg80211 @(!TARGET_uml||BROKEN)
+  PROVIDES+=wpa-supplicant-mesh wpad-mesh
+endef
+
+define Package/wpad-mesh/description
+ This package contains a minimal IEEE 802.1x/WPA Authenticator and Supplicant (with 802.11s mesh and SAE support).
+endef
+
+define Package/wpad-mesh-openssl
+$(call Package/wpad-mesh)
+  DEPENDS+=+libopenssl
   VARIANT:=wpad-mesh-openssl
   CONFLICTS:=$(filter-out wpad-mesh-openssl ,$(ANY_PROVIDERS))
-  PROVIDES+=wpa-supplicant-mesh wpad-mesh
 endef
 
+Package/wpad-mesh-openssl/description = $(Package/wpad-mesh/description)
+
 define Package/wpad-mesh-wolfssl
-$(call Package/wpad/Default)
-  TITLE+= (with 802.11s mesh and SAE support)
-  DEPENDS+=@PACKAGE_kmod-cfg80211 @(!TARGET_uml||BROKEN) +libwolfssl 
+$(call Package/wpad-mesh)
+  DEPENDS+=+libwolfssl
   VARIANT:=wpad-mesh-wolfssl
   CONFLICTS:=$(filter-out wpad-mesh-openssl ,$(filter-out wpad-mesh-wolfssl ,$(ANY_PROVIDERS)))
-  PROVIDES+=wpa-supplicant-mesh wpad-mesh
-endef
-
-define Package/wpad-mesh/description
- This package contains a minimal IEEE 802.1x/WPA Authenticator and Supplicant (with 802.11s mesh and SAE support).
 endef
 
-Package/wpad-mesh-openssl/description = $(Package/wpad-mesh/description)
 Package/wpad-mesh-wolfssl/description = $(Package/wpad-mesh/description)
 
+
 define Package/wpa-supplicant/Default
   SECTION:=net
   CATEGORY:=Network
   TITLE:=WPA Supplicant
   URL:=http://hostap.epitest.fi/wpa_supplicant/
   DEPENDS:=$(DRV_DEPENDS)
+  PROVIDES:=wpa-supplicant
 endef
 
 define Package/wpa-supplicant
@@ -325,7 +332,6 @@  define Package/wpa-supplicant-openssl
 	     ))))
   VARIANT:=supplicant-full-openssl
   DEPENDS+=+libopenssl
-  PROVIDES:=wpa-supplicant
 endef
 
 define Package/wpa-supplicant-wolfssl
@@ -338,7 +344,6 @@  define Package/wpa-supplicant-wolfssl
 	     ))))
   VARIANT:=supplicant-full-wolfssl
   DEPENDS+=+libwolfssl
-  PROVIDES:=wpa-supplicant
 endef
 
 define Package/wpa-supplicant/config
@@ -346,9 +351,9 @@  define Package/wpa-supplicant/config
 endef
 
 define Package/wpa-supplicant-p2p
-  $(Package/wpa-supplicant)
+  $(Package/wpa-supplicant/Default)
   TITLE:=WPA Supplicant (with Wi-Fi P2P support)
-  DEPENDS:=$(DRV_DEPENDS) @PACKAGE_kmod-cfg80211
+  DEPENDS+=@PACKAGE_kmod-cfg80211
   CONFLICTS:=$(filter-out wpa-supplicant-openssl ,\
 	     $(filter-out wpa-supplicant-wolfssl ,\
 	     $(filter-out wpa-supplicant-p2p ,\
@@ -357,14 +362,13 @@  define Package/wpa-supplicant-p2p
 	     $(SUPPLICANT_ONLY_PROVIDERS)\
 	     )))))
   VARIANT:=supplicant-p2p-internal
-  PROVIDES:=wpa-supplicant
 endef
 
 define Package/wpa-supplicant-mesh/Default
   $(Package/wpa-supplicant/Default)
   TITLE:=WPA Supplicant (with 802.11s and SAE)
-  DEPENDS:=$(DRV_DEPENDS) @PACKAGE_kmod-cfg80211 @(!TARGET_uml||BROKEN)
-  PROVIDES:=wpa-supplicant wpa-supplicant-mesh
+  DEPENDS+=@PACKAGE_kmod-cfg80211 @(!TARGET_uml||BROKEN)
+  PROVIDES+=wpa-supplicant-mesh
 endef
 
 define Package/wpa-supplicant-mesh-openssl
@@ -384,15 +388,13 @@  endef
 define Package/wpa-supplicant-mini
   $(Package/wpa-supplicant/Default)
   TITLE:=WPA Supplicant (minimal version)
-  DEPENDS:=$(DRV_DEPENDS)
   VARIANT:=supplicant-mini
-  PROVIDES:=wpa-supplicant
 endef
 
 define Package/wpa-cli
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=@$(subst $(space),||,$(foreach pkg,$(ANY_SUPPLICANT_PROVIDERS),PACKAGE_$(pkg)))
+  DEPENDS:=@$(subst $(space),||,$(foreach pkg,$(SUPPLICANT_PROVIDERS),PACKAGE_$(pkg)))
   TITLE:=WPA Supplicant command line control utility
 endef