[1/3] bsp: Move package selection to Makefile

Submitted by Adrian Schmutzler on May 23, 2019, 1:10 p.m.

Details

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

Commit Message

Adrian Schmutzler May 23, 2019, 1:10 p.m.
Some packages and kernel modules are just selected with "y" in
.config files. Move this to the fff Makefile, so we have package
selection in a common place and do not have redundancy for multiple
target configs.

While at it, increase .config readability by introducing blocks
of CONFIG lines.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 bsp/ar71xx/.config            | 13 +++++--------
 bsp/wdr4900/.config           |  8 ++------
 src/packages/fff/fff/Makefile | 10 ++++++++--
 3 files changed, 15 insertions(+), 16 deletions(-)

Patch hide | download patch | download mbox

diff --git a/bsp/ar71xx/.config b/bsp/ar71xx/.config
index 85987e34..e6be18c8 100644
--- a/bsp/ar71xx/.config
+++ b/bsp/ar71xx/.config
@@ -4,6 +4,8 @@ 
 CONFIG_TARGET_ar71xx=y
 CONFIG_TARGET_ar71xx_tiny=y
 CONFIG_TARGET_MULTI_PROFILE=y
+CONFIG_TARGET_PER_DEVICE_ROOTFS=y
+
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c25-v1=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1="-kmod-ath10k kmod-ath10k-ct"
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v1=y
@@ -76,8 +78,8 @@  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifi=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifi=""
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite="-kmod-ath10k kmod-ath10k-ct"
+
 CONFIG_BUSYBOX_CUSTOM=y
-CONFIG_TARGET_PER_DEVICE_ROOTFS=y
 # CONFIG_BUSYBOX_CONFIG_BRCTL is not set
 # CONFIG_BUSYBOX_CONFIG_CROND is not set
 # CONFIG_BUSYBOX_CONFIG_CRONTAB is not set
@@ -95,17 +97,12 @@  CONFIG_CLEAN_IPKG=y
 # CONFIG_KERNEL_DEBUG_INFO is not set
 # CONFIG_KERNEL_DEBUG_KERNEL is not set
 # CONFIG_PACKAGE_ALFRED_VIS is not set
+
 CONFIG_PACKAGE_ath10k-firmware-qca9887-ct=m
 CONFIG_PACKAGE_ath10k-firmware-qca988x-ct=m
 CONFIG_PACKAGE_kmod-ath10k-ct=m
+
 CONFIG_PACKAGE_kmod-hwmon-core=m
-CONFIG_PACKAGE_kmod-ifb=y
-CONFIG_PACKAGE_kmod-ledtrig-heartbeat=y
-CONFIG_PACKAGE_kmod-ledtrig-netdev=y
-CONFIG_PACKAGE_kmod-nls-base=y
-CONFIG_PACKAGE_kmod-sched-connmark=y
 CONFIG_PACKAGE_opkg=m
-CONFIG_PACKAGE_qos-scripts=y
-CONFIG_PACKAGE_tc=y
 CONFIG_STRIP_KERNEL_EXPORTS=y
 CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=512
diff --git a/bsp/wdr4900/.config b/bsp/wdr4900/.config
index 5f7cf9b8..c887fcd4 100644
--- a/bsp/wdr4900/.config
+++ b/bsp/wdr4900/.config
@@ -4,6 +4,7 @@ 
 CONFIG_TARGET_mpc85xx=y
 CONFIG_TARGET_mpc85xx_generic=y
 CONFIG_TARGET_mpc85xx_generic_Default=y
+
 CONFIG_BUSYBOX_CUSTOM=y
 # CONFIG_BUSYBOX_CONFIG_BRCTL is not set
 # CONFIG_BUSYBOX_CONFIG_CROND is not set
@@ -22,12 +23,7 @@  CONFIG_CLEAN_IPKG=y
 # CONFIG_KERNEL_DEBUG_INFO is not set
 # CONFIG_KERNEL_DEBUG_KERNEL is not set
 # CONFIG_PACKAGE_ALFRED_VIS is not set
-CONFIG_PACKAGE_kmod-ifb=y
-CONFIG_PACKAGE_kmod-ledtrig-heartbeat=y
-CONFIG_PACKAGE_kmod-ledtrig-netdev=y
-CONFIG_PACKAGE_kmod-sched-connmark=y
+
 # CONFIG_PACKAGE_opkg is not set
-CONFIG_PACKAGE_qos-scripts=y
-CONFIG_PACKAGE_tc=y
 CONFIG_STRIP_KERNEL_EXPORTS=y
 CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=512
diff --git a/src/packages/fff/fff/Makefile b/src/packages/fff/fff/Makefile
index 4fec4d39..bbd89a45 100644
--- a/src/packages/fff/fff/Makefile
+++ b/src/packages/fff/fff/Makefile
@@ -1,8 +1,7 @@ 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff
-PKG_VERSION:=0.0.2
-PKG_RELEASE:=5
+PKG_RELEASE:=6
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/fff
 
@@ -17,6 +16,13 @@  define Package/fff/base
 			 +ip6tables \
 			 +odhcp6c \
 			 +micrond \
+			 +kmod-ifb \
+			 +kmod-ledtrig-heartbeat \
+			 +kmod-ledtrig-netdev \
+			 +kmod-nls-base \
+			 +kmod-sched-connmark \
+			 +qos-scripts \
+			 +tc \
 			 +fff-config \
 			 +fff-nodewatcher \
 			 +fff-web \

Comments

Fabian Blaese May 25, 2019, 5:12 p.m.
Hallo Adrian,

On 23.05.19 15:10, Adrian Schmutzler wrote:
> While at it, increase .config readability by introducing blocks
> of CONFIG lines.
Mir gefällt das eigentlich gar nicht, das mit in diesen commit rein zu mischen.
Das macht es schwieriger, Änderungen nachzuvollziehen.

> diff --git a/src/packages/fff/fff/Makefile b/src/packages/fff/fff/Makefile
> index 4fec4d39..bbd89a45 100644
> --- a/src/packages/fff/fff/Makefile
> +++ b/src/packages/fff/fff/Makefile
> @@ -1,8 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff
> -PKG_VERSION:=0.0.2
> -PKG_RELEASE:=5
> +PKG_RELEASE:=6
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/fff
>  
> @@ -17,6 +16,13 @@ define Package/fff/base
>  			 +ip6tables \
>  			 +odhcp6c \
>  			 +micrond \
> +			 +kmod-ifb \
> +			 +kmod-ledtrig-heartbeat \
> +			 +kmod-ledtrig-netdev \
> +			 +kmod-nls-base \
> +			 +kmod-sched-connmark \
> +			 +qos-scripts \
> +			 +tc \

Ich bin mir relativ sicher, dass ifb, sched-connmark und tc wenn überhaupt nur für das Traffic Shaping und den macnocker drin sind.
Entweder sollten die zu dem Paket, dass die Sachen braucht, oder wir werfen das ganze Traffic Shaping gleich raus...

Soweit ich das richtig verstehe, verwenden wir eh simple-tc aus den gluon packages für das Shaping. Das sollte alles was es braucht selbst selektieren.
Der macnocker tut das scheinbar nicht, der braucht auf jeden Fall tc.

Gruß
Fabian
Adrian Schmutzler May 25, 2019, 5:21 p.m.
Hallo Fabian,

 

wie soll das dann werden? Vielleicht so:

 

Patch 1:

nls-base in fff/Makefile schieben (würde ich vorsichtshalber behalten).

 

Patch 2:

LED-Zeug weg (direkt aus dem .config)

 

Patch 3:

Traffic-Shaping weg (incl. qos, direct aus dem .config)

 

Patch 4:

Leerzeilen einfügen

 

Wenn wir dann feststellen, dass wir das Traffic-Shaping brauchen, dann fügen wir es da wieder ein, wo was kaputt geht.

 

Einverstanden? Wenn ja, schicke ich das ganze so nochmal neu.

 

Grüße

 

Adrian

 

 

 

From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of Fabian Bläse
Sent: Samstag, 25. Mai 2019 19:12
To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; franken-dev@freifunk.net
Subject: Re: [PATCH 1/3] bsp: Move package selection to Makefile

 

Hallo Adrian, 

On 23.05.19 15:10, Adrian Schmutzler wrote: 
> While at it, increase .config readability by introducing blocks 
> of CONFIG lines. 
Mir gefällt das eigentlich gar nicht, das mit in diesen commit rein zu mischen. 
Das macht es schwieriger, Änderungen nachzuvollziehen. 

> diff --git a/src/packages/fff/fff/Makefile b/src/packages/fff/fff/Makefile 
> index 4fec4d39..bbd89a45 100644 
> --- a/src/packages/fff/fff/Makefile 
> +++ b/src/packages/fff/fff/Makefile 
> @@ -1,8 +1,7 @@ 
>  include $(TOPDIR)/rules.mk 
>  
>  PKG_NAME:=fff 
> -PKG_VERSION:=0.0.2 
> -PKG_RELEASE:=5 
> +PKG_RELEASE:=6 
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/fff 
>  
> @@ -17,6 +16,13 @@ define Package/fff/base 
>                        +ip6tables \ 
>                        +odhcp6c \ 
>                        +micrond \ 
> +                      +kmod-ifb \ 
> +                      +kmod-ledtrig-heartbeat \ 
> +                      +kmod-ledtrig-netdev \ 
> +                      +kmod-nls-base \ 
> +                      +kmod-sched-connmark \ 
> +                      +qos-scripts \ 
> +                      +tc \ 

Ich bin mir relativ sicher, dass ifb, sched-connmark und tc wenn überhaupt nur für das Traffic Shaping und den macnocker drin sind.

Entweder sollten die zu dem Paket, dass die Sachen braucht, oder wir werfen das ganze Traffic Shaping gleich raus... 

Soweit ich das richtig verstehe, verwenden wir eh simple-tc aus den gluon packages für das Shaping. Das sollte alles was es braucht selbst selektieren.

Der macnocker tut das scheinbar nicht, der braucht auf jeden Fall tc. 

Gruß 
Fabian
Fabian Blaese May 25, 2019, 5:36 p.m.
Hallo Adrian,

On 25.05.19 19:21, mail@adrianschmutzler.de wrote:
> Patch 1:
> 
> nls-base in fff/Makefile schieben (würde ich vorsichtshalber behalten).
Ich glaube nicht, dass wir das irgendwo explizit brauchen. Aber ja.

> Patch 2:
> LED-Zeug weg (direkt aus dem .config)
> 
> Patch 3:
> Traffic-Shaping weg (incl. qos, direct aus dem .config)
Kann denke ich beides in einen Patch.

> Wenn wir dann feststellen, dass wir das Traffic-Shaping brauchen, dann fügen wir es da wieder ein, wo was kaputt geht.
Ok.

Eine Sache bleibt noch: Der Macnocker braucht auf jeden Fall tc, hat das aber aktuell nicht Abhängigkeit...
Ich würde das grade erst mal testen, bevor du eine v2 machst..

Gruß
Fabian
Adrian Schmutzler May 25, 2019, 5:40 p.m.
Okay, kuck mal. Im Zweifel lieber dann das tc beim macnocker noch mit hinkleben.

 

simple-tc:

DEPENDS:=+!KERNEL_NET_SCH_TBF:kmod-sched-core +!KERNEL_NET_SCH_INGRESS:kmod-sched-core +!KERNEL_NET_CLS_BASIC:kmod-sched +libnl-tiny

PKG_CONFIG_DEPENDS := CONFIG_KERNEL_NET_SCH_TBF CONFIG_KERNEL_NET_SCH_INGRESS CONFIG_KERNEL_NET_CLS_BASIC

https://github.com/freifunk-gluon/packages/blob/master/net/simple-tc/Makefile

 

Grüße

 

Adrian

 

 

From: Fabian Bläse [mailto:fabian@blaese.de] 
Sent: Samstag, 25. Mai 2019 19:36
To: mail@adrianschmutzler.de; franken-dev@freifunk.net
Subject: Re: [PATCH 1/3] bsp: Move package selection to Makefile

 

Hallo Adrian, 

On 25.05.19 19:21, mail@adrianschmutzler.de <mailto:mail@adrianschmutzler.de>  wrote: 
> Patch 1: 
> 
> nls-base in fff/Makefile schieben (würde ich vorsichtshalber behalten). 
Ich glaube nicht, dass wir das irgendwo explizit brauchen. Aber ja. 

> Patch 2: 
> LED-Zeug weg (direkt aus dem .config) 
> 
> Patch 3: 
> Traffic-Shaping weg (incl. qos, direct aus dem .config) 
Kann denke ich beides in einen Patch. 

> Wenn wir dann feststellen, dass wir das Traffic-Shaping brauchen, dann fügen wir es da wieder ein, wo was kaputt geht.

Ok. 

Eine Sache bleibt noch: Der Macnocker braucht auf jeden Fall tc, hat das aber aktuell nicht Abhängigkeit... 
Ich würde das grade erst mal testen, bevor du eine v2 machst.. 

Gruß 
Fabian
Robert Langhammer May 31, 2019, 10:04 a.m.
Hi Adrian,

ich fände es schöner, wenn in fff/base nur Packages stehen. Und dort
dann, was die brauchen. Man merkt es an der Diskussion schon, irgend
wann weiß niemand mehr, warum das drin ist oder wozu es gehört.

Da das so und so irgendwann mal aufgeräumt werden muss:

Reviewed-by: Robert Langhammer <rlanghammer@web.de>


Am 23.05.19 um 15:10 schrieb Adrian Schmutzler:
> Some packages and kernel modules are just selected with "y" in
> .config files. Move this to the fff Makefile, so we have package
> selection in a common place and do not have redundancy for multiple
> target configs.
>
> While at it, increase .config readability by introducing blocks
> of CONFIG lines.
>
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> ---
>  bsp/ar71xx/.config            | 13 +++++--------
>  bsp/wdr4900/.config           |  8 ++------
>  src/packages/fff/fff/Makefile | 10 ++++++++--
>  3 files changed, 15 insertions(+), 16 deletions(-)
>
> diff --git a/bsp/ar71xx/.config b/bsp/ar71xx/.config
> index 85987e34..e6be18c8 100644
> --- a/bsp/ar71xx/.config
> +++ b/bsp/ar71xx/.config
> @@ -4,6 +4,8 @@
>  CONFIG_TARGET_ar71xx=y
>  CONFIG_TARGET_ar71xx_tiny=y
>  CONFIG_TARGET_MULTI_PROFILE=y
> +CONFIG_TARGET_PER_DEVICE_ROOTFS=y
> +
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c25-v1=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1="-kmod-ath10k kmod-ath10k-ct"
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v1=y
> @@ -76,8 +78,8 @@ CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifi=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifi=""
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite="-kmod-ath10k kmod-ath10k-ct"
> +
>  CONFIG_BUSYBOX_CUSTOM=y
> -CONFIG_TARGET_PER_DEVICE_ROOTFS=y
>  # CONFIG_BUSYBOX_CONFIG_BRCTL is not set
>  # CONFIG_BUSYBOX_CONFIG_CROND is not set
>  # CONFIG_BUSYBOX_CONFIG_CRONTAB is not set
> @@ -95,17 +97,12 @@ CONFIG_CLEAN_IPKG=y
>  # CONFIG_KERNEL_DEBUG_INFO is not set
>  # CONFIG_KERNEL_DEBUG_KERNEL is not set
>  # CONFIG_PACKAGE_ALFRED_VIS is not set
> +
>  CONFIG_PACKAGE_ath10k-firmware-qca9887-ct=m
>  CONFIG_PACKAGE_ath10k-firmware-qca988x-ct=m
>  CONFIG_PACKAGE_kmod-ath10k-ct=m
> +
>  CONFIG_PACKAGE_kmod-hwmon-core=m
> -CONFIG_PACKAGE_kmod-ifb=y
> -CONFIG_PACKAGE_kmod-ledtrig-heartbeat=y
> -CONFIG_PACKAGE_kmod-ledtrig-netdev=y
> -CONFIG_PACKAGE_kmod-nls-base=y
> -CONFIG_PACKAGE_kmod-sched-connmark=y
>  CONFIG_PACKAGE_opkg=m
> -CONFIG_PACKAGE_qos-scripts=y
> -CONFIG_PACKAGE_tc=y
>  CONFIG_STRIP_KERNEL_EXPORTS=y
>  CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=512
> diff --git a/bsp/wdr4900/.config b/bsp/wdr4900/.config
> index 5f7cf9b8..c887fcd4 100644
> --- a/bsp/wdr4900/.config
> +++ b/bsp/wdr4900/.config
> @@ -4,6 +4,7 @@
>  CONFIG_TARGET_mpc85xx=y
>  CONFIG_TARGET_mpc85xx_generic=y
>  CONFIG_TARGET_mpc85xx_generic_Default=y
> +
>  CONFIG_BUSYBOX_CUSTOM=y
>  # CONFIG_BUSYBOX_CONFIG_BRCTL is not set
>  # CONFIG_BUSYBOX_CONFIG_CROND is not set
> @@ -22,12 +23,7 @@ CONFIG_CLEAN_IPKG=y
>  # CONFIG_KERNEL_DEBUG_INFO is not set
>  # CONFIG_KERNEL_DEBUG_KERNEL is not set
>  # CONFIG_PACKAGE_ALFRED_VIS is not set
> -CONFIG_PACKAGE_kmod-ifb=y
> -CONFIG_PACKAGE_kmod-ledtrig-heartbeat=y
> -CONFIG_PACKAGE_kmod-ledtrig-netdev=y
> -CONFIG_PACKAGE_kmod-sched-connmark=y
> +
>  # CONFIG_PACKAGE_opkg is not set
> -CONFIG_PACKAGE_qos-scripts=y
> -CONFIG_PACKAGE_tc=y
>  CONFIG_STRIP_KERNEL_EXPORTS=y
>  CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=512
> diff --git a/src/packages/fff/fff/Makefile b/src/packages/fff/fff/Makefile
> index 4fec4d39..bbd89a45 100644
> --- a/src/packages/fff/fff/Makefile
> +++ b/src/packages/fff/fff/Makefile
> @@ -1,8 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff
> -PKG_VERSION:=0.0.2
> -PKG_RELEASE:=5
> +PKG_RELEASE:=6
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/fff
>  
> @@ -17,6 +16,13 @@ define Package/fff/base
>  			 +ip6tables \
>  			 +odhcp6c \
>  			 +micrond \
> +			 +kmod-ifb \
> +			 +kmod-ledtrig-heartbeat \
> +			 +kmod-ledtrig-netdev \
> +			 +kmod-nls-base \
> +			 +kmod-sched-connmark \
> +			 +qos-scripts \
> +			 +tc \
>  			 +fff-config \
>  			 +fff-nodewatcher \
>  			 +fff-web \
Fabian Blaese June 3, 2019, 10:56 a.m.
der nls-base default ist "m", es kann nicht deselektiert werden.
Würde ich entsprechend aus unserer diffconfig entfernen.

simple-tc klappt ohne den sched-connmark, qos-sripts Kram.

Der macnocker braucht tc -> muss verschoben werden.


Magst du 2 Patches (unnötiges entfernen, tc verschieben) entsprechend bauen?

Gruß
Fabian

On 25.05.19 19:40, mail@adrianschmutzler.de wrote:
> Okay, kuck mal. Im Zweifel lieber dann das tc beim macnocker noch mit hinkleben.
> 
>  
> 
> simple-tc:
> 
> DEPENDS:=+!KERNEL_NET_SCH_TBF:kmod-sched-core +!KERNEL_NET_SCH_INGRESS:kmod-sched-core +!KERNEL_NET_CLS_BASIC:kmod-sched +libnl-tiny
> 
> PKG_CONFIG_DEPENDS:= CONFIG_KERNEL_NET_SCH_TBF CONFIG_KERNEL_NET_SCH_INGRESS CONFIG_KERNEL_NET_CLS_BASIC
> 
> https://github.com/freifunk-gluon/packages/blob/master/net/simple-tc/Makefile
> 
>  
> 
> Grüße
> 
>  
> 
> Adrian
> 
>  
> 
>  
> 
> *From:*Fabian Bläse [mailto:fabian@blaese.de]
> *Sent:* Samstag, 25. Mai 2019 19:36
> *To:* mail@adrianschmutzler.de; franken-dev@freifunk.net
> *Subject:* Re: [PATCH 1/3] bsp: Move package selection to Makefile
> 
>  
> 
> Hallo Adrian,
> 
> On 25.05.19 19:21, mail@adrianschmutzler.de <mailto:mail@adrianschmutzler.de> wrote:
>> Patch 1:
>> 
>> nls-base in fff/Makefile schieben (würde ich vorsichtshalber behalten).
> Ich glaube nicht, dass wir das irgendwo explizit brauchen. Aber ja.
> 
>> Patch 2:
>> LED-Zeug weg (direkt aus dem .config)
>> 
>> Patch 3:
>> Traffic-Shaping weg (incl. qos, direct aus dem .config)
> Kann denke ich beides in einen Patch.
> 
>> Wenn wir dann feststellen, dass wir das Traffic-Shaping brauchen, dann fügen wir es da wieder ein, wo was kaputt geht.
> 
> Ok.
> 
> Eine Sache bleibt noch: Der Macnocker braucht auf jeden Fall tc, hat das aber aktuell nicht Abhängigkeit...
> Ich würde das grade erst mal testen, bevor du eine v2 machst..
> 
> Gruß
> Fabian
> 
>  
>