[v2] packages/fff: Merge meta packages for variants into config packages

Submitted by Adrian Schmutzler on Sept. 30, 2019, 4:17 p.m.

Details

Message ID 20190930161733.18007-1-freifunk@adrianschmutzler.de
State Superseded
Headers show

Commit Message

Adrian Schmutzler Sept. 30, 2019, 4:17 p.m.
So far, we have meta packages and config packages for the variants
in parallel, e.g. fff-node and fff-variant-node.

Since the sole purpose of the meta packages is to define
dependencies, one can just merge them into the corresponding config
packages to reduce overhead.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>

---

Changes in v2:
- base package: fff/base rename to fff-base
- add eval so fff-base is found
---
 src/packages/fff/fff-gateway/Makefile  | 28 +++++++++++--
 src/packages/fff/fff-node/Makefile     | 11 +++++-
 src/packages/fff/fff/Makefile          | 55 ++------------------------
 src/packages/fff/fff/variant-layer3.mk |  2 +-
 src/packages/fff/fff/variant-node.mk   |  2 +-
 5 files changed, 40 insertions(+), 58 deletions(-)

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-gateway/Makefile b/src/packages/fff/fff-gateway/Makefile
index 7a10544c..957760ed 100644
--- a/src/packages/fff/fff-gateway/Makefile
+++ b/src/packages/fff/fff-gateway/Makefile
@@ -1,7 +1,7 @@ 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff-gateway
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/fff-gateway
 
@@ -10,9 +10,31 @@  include $(INCLUDE_DIR)/package.mk
 define Package/fff-gateway
 	SECTION:=base
 	CATEGORY:=Freifunk
-	TITLE:= Freifunk-Franken gateway configuration
+	TITLE:=Freifunk-Franken gateway configuration
+	VARIANT:=layer3
 	URL:=https://www.freifunk-franken.de
-	DEPENDS:=+fff-boardname +fff-network
+	DEPENDS:=+fff-base \
+	         +fff-alfred-monitoring-proxy \
+	         +fff-babeld \
+	         +fff-boardname \
+	         +fff-dhcp \
+	         +fff-network \
+	         +fff-ra \
+	         +fff-wireguard \
+	         +arptables \
+	         +ebtables \
+	         +ebtables-utils \
+	         +kmod-ebtables-ipv4 \
+	         +kmod-ebtables-ipv6 \
+	         +gre \
+	         +@PACKAGE_grev4 \
+	         +@PACKAGE_grev6 \
+	         +iperf3 \
+	         +ip-full \
+	         +iptables-mod-filter \
+	         +iptables-mod-ipopt \
+	         +iptables-mod-conntrack-extra \
+	         +tcpdump
 endef
 
 define Package/fff-gateway/description
diff --git a/src/packages/fff/fff-node/Makefile b/src/packages/fff/fff-node/Makefile
index 5fb76793..7d1b9985 100644
--- a/src/packages/fff/fff-node/Makefile
+++ b/src/packages/fff/fff-node/Makefile
@@ -1,7 +1,7 @@ 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff-node
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/fff-node
 
@@ -10,8 +10,15 @@  include $(INCLUDE_DIR)/package.mk
 define Package/fff-node
 	SECTION:=base
 	CATEGORY:=Freifunk
-	TITLE:= Freifunk-Franken node configuration
+	TITLE:=Freifunk-Franken node configuration
+	VARIANT:=homenode
 	URL:=https://www.freifunk-franken.de
+	DEPENDS:=+fff-base \
+	         +fff-batman-adv \
+	         +fff-fastd \
+	         +fff-firewall \
+	         +fff-hoods \
+	         +fff-uradvd
 endef
 
 define Package/fff-node/description
diff --git a/src/packages/fff/fff/Makefile b/src/packages/fff/fff/Makefile
index c94df8e3..4439ecfc 100644
--- a/src/packages/fff/fff/Makefile
+++ b/src/packages/fff/fff/Makefile
@@ -1,13 +1,13 @@ 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff
-PKG_RELEASE:=6
+PKG_RELEASE:=7
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/fff
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/fff/base
+define Package/fff-base
 	SECTION:=base
 	CATEGORY:=Freifunk
 	TITLE:=Freifunk-Franken Base
@@ -27,57 +27,10 @@  define Package/fff/base
 			 +simple-tc
 endef
 
-define Package/fff/base/description
+define Package/fff-base/description
 	This is the Freifunk Franken Firmware Base package
 endef
 
-define Package/fff-variant-node
-	$(call Package/fff/base)
-	TITLE+=(Home node)
-	DEPENDS+=+fff-node \
-			 +fff-fastd \
-			 +fff-firewall \
-			 +fff-uradvd \
-			 +fff-batman-adv \
-			 +fff-hoods
-	VARIANT:=homenode
-endef
-
-define Package/fff-variant-node/description
-	$(call Package/fff/base/description)
-endef
-
-define Package/fff-variant-layer3
-	$(call Package/fff/base)
-	TITLE+=(Layer 3 Gateway)
-	DEPENDS+=+fff-gateway \
-			 +fff-dhcp \
-			 +fff-babeld \
-			 +fff-ra \
-			 +fff-wireguard \
-			 +iperf3 \
-			 +ip-full \
-			 +tcpdump \
-			 +arptables \
-			 +ebtables \
-			 +ebtables-utils \
-			 +kmod-ebtables-ipv4 \
-			 +kmod-ebtables-ipv6 \
-			 +iptables-mod-filter \
-			 +iptables-mod-ipopt \
-			 +iptables-mod-conntrack-extra \
-			 +gre \
-			 +@PACKAGE_grev4 \
-			 +@PACKAGE_grev6 \
-			 +fff-alfred-monitoring-proxy
-	VARIANT:=layer3
-endef
-
-define Package/fff-variant-layer3/description
-	$(call Package/fff/base/description)
-endef
-
-$(eval $(call BuildPackage,fff-variant-node))
-$(eval $(call BuildPackage,fff-variant-layer3))
+$(eval $(call BuildPackage,fff-base))
 
 include $(TOPDIR)/variant.mk
diff --git a/src/packages/fff/fff/variant-layer3.mk b/src/packages/fff/fff/variant-layer3.mk
index 80293ce1..6355d0ed 100644
--- a/src/packages/fff/fff/variant-layer3.mk
+++ b/src/packages/fff/fff/variant-layer3.mk
@@ -4,7 +4,7 @@  define Package/fff-default
 	DEFAULT:=y
 	TITLE:=Freifunk-Franken Base default switcher
 	URL:=http://www.freifunk-franken.de
-	DEPENDS:=+fff-variant-layer3
+	DEPENDS:=+fff-gateway
 endef
 
 define Package/fff-default/description
diff --git a/src/packages/fff/fff/variant-node.mk b/src/packages/fff/fff/variant-node.mk
index 3abbd069..5738f7d9 100644
--- a/src/packages/fff/fff/variant-node.mk
+++ b/src/packages/fff/fff/variant-node.mk
@@ -4,7 +4,7 @@  define Package/fff-default
 	DEFAULT:=y
 	TITLE:=Freifunk-Franken Base default switcher
 	URL:=http://www.freifunk-franken.de
-	DEPENDS:=+fff-variant-node
+	DEPENDS:=+fff-node
 endef
 
 define Package/fff-default/description

Comments

Fabian Blaese Sept. 30, 2019, 8:31 p.m.
Hey Adrian,

danke dafür. Ich hatte das damals auch überlegt, hatte dann aber keine Motivation das umzusetzen.

Kleinigkeiten unten, ansonsten
Reviewed-by: Fabian Bläse <fabian@blaese.de>

On 30.09.19 18:17, Adrian Schmutzler wrote:
> diff --git a/src/packages/fff/fff-gateway/Makefile b/src/packages/fff/fff-gateway/Makefile
> index 7a10544c..957760ed 100644
> --- a/src/packages/fff/fff-gateway/Makefile
> +++ b/src/packages/fff/fff-gateway/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-gateway
> -PKG_RELEASE:=2
> +PKG_RELEASE:=3
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/fff-gateway
>  
> @@ -10,9 +10,31 @@ include $(INCLUDE_DIR)/package.mk
>  define Package/fff-gateway
>  	SECTION:=base
>  	CATEGORY:=Freifunk
> -	TITLE:= Freifunk-Franken gateway configuration
> +	TITLE:=Freifunk-Franken gateway configuration
> +	VARIANT:=layer3
>  	URL:=https://www.freifunk-franken.de
> -	DEPENDS:=+fff-boardname +fff-network
> +	DEPENDS:=+fff-base \
Dass fff-node und fff-gateway von fff-base abhängen gefällt mir nur so eingeschränkt gut.
Können wir das mit in die DEPENDS vom fff-default rein nehmen?

> diff --git a/src/packages/fff/fff-node/Makefile b/src/packages/fff/fff-node/Makefile
> index 5fb76793..7d1b9985 100644
> --- a/src/packages/fff/fff-node/Makefile
> +++ b/src/packages/fff/fff-node/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-node
> -PKG_RELEASE:=1
> +PKG_RELEASE:=2
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/fff-node
>  
> @@ -10,8 +10,15 @@ include $(INCLUDE_DIR)/package.mk
>  define Package/fff-node
>  	SECTION:=base
>  	CATEGORY:=Freifunk
> -	TITLE:= Freifunk-Franken node configuration
> +	TITLE:=Freifunk-Franken node configuration
> +	VARIANT:=homenode
Dafür kannst du nichts, aber ich finde es etwas unglücklich, dass die Variante hier anders heißt, als im selectvariant.
Ich hatte eh schon mal überlegt, ob man die Varianten in "node" und "gateway" umbenennen möchte.
Kommt aber in einen eigenen Patch.

Gruß
Fabian
Adrian Schmutzler Sept. 30, 2019, 8:50 p.m.
Hallo Fabian,

im Moment ist es auch noch kaputt.

Ich bastel noch ein bisschen rum und schicke dann ne v3 mit den Änderungen.

Grüße

Adrian