[05/11] fff-boardname: mv rc.local board detect to package

Submitted by Tim Niemeyer on June 8, 2016, 4:29 p.m.

Details

Message ID 1465403387-3241-5-git-send-email-tim@tn-x.org
State Superseded, archived
Headers show

Commit Message

Tim Niemeyer June 8, 2016, 4:29 p.m.
Signed-off-by: Tim Niemeyer <tim@tn-x.org>
---

 bsp/default/root_file_system/etc/rc.local.tpl      | 57 ----------------------
 src/packages/fff/fff-boardname/Makefile            | 39 +++++++++++++++
 .../fff/fff-boardname/files}/etc/config/board      |  0
 .../files/etc/uci-defaults/50-fff-boardname        | 57 ++++++++++++++++++++++
 src/packages/fff/fff-network/Makefile              |  4 +-
 src/packages/fff/fff-web/Makefile                  |  4 +-
 6 files changed, 100 insertions(+), 61 deletions(-)
 create mode 100644 src/packages/fff/fff-boardname/Makefile
 rename {bsp/default/root_file_system => src/packages/fff/fff-boardname/files}/etc/config/board (100%)
 create mode 100755 src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname

Patch hide | download patch | download mbox

diff --git a/bsp/default/root_file_system/etc/rc.local.tpl b/bsp/default/root_file_system/etc/rc.local.tpl
index 74d3ba1..754affb 100755
--- a/bsp/default/root_file_system/etc/rc.local.tpl
+++ b/bsp/default/root_file_system/etc/rc.local.tpl
@@ -2,63 +2,6 @@ 
 # Put your custom commands here that should be executed once
 # the system init finished. By default this file does nothing.
 
-BOARD=$(cat /var/sysinfo/board_name)
-
-case "$BOARD" in
-    tl-wr1043nd)
-        BOARD=tl-wr1043nd-v1
-        ;;
-    tl-wr1043nd-v2)
-        grep "v3" /var/sysinfo/model && BOARD=tl-wr1043nd-v3
-        ;;
-    tl-wr741nd)
-        grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
-        ;;
-    tl-wr741nd-v4)
-        grep 740 /var/sysinfo/model && BOARD=tl-wr740n-v4
-        ;;
-    tl-wr841n-v7)
-        BOARD=tl-wr841nd-v7
-        ;;
-    tl-wr841n-v9)
-        grep "v10" /var/sysinfo/model && BOARD=tl-wr841n-v10
-        grep "v11" /var/sysinfo/model && BOARD=tl-wr841n-v11
-        ;;
-    nanostation-m)
-        BOARD=ubnt-nano-m
-        ;;
-    bullet-m)
-        BOARD=ubnt-bullet-m
-        ;;
-    loco-m-xw)
-        BOARD=ubnt-loco-m-xw
-        ;;
-    tl-wa850re)
-        BOARD=tl-wa850re-v1
-        ;;
-    tl-wa860re)
-        BOARD=tl-wa860re-v1
-        ;;
-    tl-wdr3500)
-        BOARD=tl-wdr3500-v1
-        ;;
-    tl-wdr4300)
-        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
-        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
-        grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
-        ;;
-    tl-mr3020)
-        BOARD=tl-mr3020-v1
-        ;;
-    cpe510)
-        grep "CPE210" /var/sysinfo/model && BOARD=cpe210
-        ;;
-esac
-
-if ! uci get board.model.name; then
-    uci set board.model.name=$BOARD
-fi
-
 /usr/sbin/configurenetwork
 
 # Starting NTP-Client Daemon after 30s to ensure that the interface is up
diff --git a/src/packages/fff/fff-boardname/Makefile b/src/packages/fff/fff-boardname/Makefile
new file mode 100644
index 0000000..bf3b82f
--- /dev/null
+++ b/src/packages/fff/fff-boardname/Makefile
@@ -0,0 +1,39 @@ 
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=fff-boardname
+PKG_VERSION:=0.0.1
+PKG_RELEASE:=1
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/fff-boardname
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/fff-boardname
+    SECTION:=base
+    CATEGORY:=Freifunk
+    TITLE:=Freifunk-Franken boardname
+    URL:=http://www.freifunk-franken.de
+endef
+
+define Package/fff-boardname/description
+    This is the Freifunk Franken Firmware boardname package.
+    This packages provides the boardname in the board config.
+endef
+
+define Build/Prepare
+    echo "all: " > $(PKG_BUILD_DIR)/Makefile
+endef
+
+define Build/Configure
+    # nothing
+endef
+
+define Build/Compile
+    # nothing
+endef
+
+define Package/fff-boardname/install
+    $(CP) ./files/* $(1)/
+endef
+
+$(eval $(call BuildPackage,fff-boardname))
diff --git a/bsp/default/root_file_system/etc/config/board b/src/packages/fff/fff-boardname/files/etc/config/board
similarity index 100%
rename from bsp/default/root_file_system/etc/config/board
rename to src/packages/fff/fff-boardname/files/etc/config/board
diff --git a/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
new file mode 100755
index 0000000..28811a3
--- /dev/null
+++ b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
@@ -0,0 +1,57 @@ 
+#!/bin/sh
+
+BOARD=$(cat /var/sysinfo/board_name)
+
+case "$BOARD" in
+    tl-wr1043nd)
+        BOARD=tl-wr1043nd-v1
+        ;;
+    tl-wr1043nd-v2)
+        grep "v3" /var/sysinfo/model && BOARD=tl-wr1043nd-v3
+        ;;
+    tl-wr741nd)
+        grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
+        ;;
+    tl-wr741nd-v4)
+        grep 740 /var/sysinfo/model && BOARD=tl-wr740n-v4
+        ;;
+    tl-wr841n-v7)
+        BOARD=tl-wr841nd-v7
+        ;;
+    tl-wr841n-v9)
+        grep "v10" /var/sysinfo/model && BOARD=tl-wr841n-v10
+        grep "v11" /var/sysinfo/model && BOARD=tl-wr841n-v11
+        ;;
+    nanostation-m)
+        BOARD=ubnt-nano-m
+        ;;
+    bullet-m)
+        BOARD=ubnt-bullet-m
+        ;;
+    loco-m-xw)
+        BOARD=ubnt-loco-m-xw
+        ;;
+    tl-wa850re)
+        BOARD=tl-wa850re-v1
+        ;;
+    tl-wa860re)
+        BOARD=tl-wa860re-v1
+        ;;
+    tl-wdr3500)
+        BOARD=tl-wdr3500-v1
+        ;;
+    tl-wdr4300)
+        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
+        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
+        grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
+        ;;
+    tl-mr3020)
+        BOARD=tl-mr3020-v1
+        ;;
+    cpe510)
+        grep "CPE210" /var/sysinfo/model && BOARD=cpe210
+        ;;
+esac
+
+uci set board.model.name=$BOARD
+uci commit board
diff --git a/src/packages/fff/fff-network/Makefile b/src/packages/fff/fff-network/Makefile
index a803afe..e3dc981 100644
--- a/src/packages/fff/fff-network/Makefile
+++ b/src/packages/fff/fff-network/Makefile
@@ -2,7 +2,7 @@  include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff-network
 PKG_VERSION:=0.0.1
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/fff-network
 
@@ -13,7 +13,7 @@  define Package/fff-network
     CATEGORY:=Freifunk
     TITLE:= Freifunk-Franken network configuration
     URL:=http://www.freifunk-franken.de
-    DEPENDS:=+fff-uradvd
+    DEPENDS:=+fff-uradvd +fff-boardname
 endef
 
 define Package/fff-network/description
diff --git a/src/packages/fff/fff-web/Makefile b/src/packages/fff/fff-web/Makefile
index aefcaa6..e9fff79 100644
--- a/src/packages/fff/fff-web/Makefile
+++ b/src/packages/fff/fff-web/Makefile
@@ -2,7 +2,7 @@  include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff-web
 PKG_VERSION:=0.0.3
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/fff-web
 
@@ -13,7 +13,7 @@  define Package/fff-web
     CATEGORY:=Freifunk
     TITLE:= Freifunk-Franken Webinterface
     URL:=http://www.freifunk-franken.de
-    DEPENDS:=+uhttpd +haserl +uhttpd-mod-tls +px5g +simple-tc
+    DEPENDS:=+uhttpd +haserl +uhttpd-mod-tls +px5g +simple-tc +fff-boardname
 endef
 
 define Package/fff-web/description

Comments

Jan Kraus June 9, 2016, 11:36 a.m.
Hi Tim,

Am Mittwoch, den 08.06.2016, 18:29 +0200 schrieb Tim Niemeyer:
> Signed-off-by: Tim Niemeyer <tim@tn-x.org>
> ---
> 
>  bsp/default/root_file_system/etc/rc.local.tpl      | 57 ----------------------
>  src/packages/fff/fff-boardname/Makefile            | 39 +++++++++++++++
>  .../fff/fff-boardname/files}/etc/config/board      |  0
>  .../files/etc/uci-defaults/50-fff-boardname        | 57 ++++++++++++++++++++++
>  src/packages/fff/fff-network/Makefile              |  4 +-
>  src/packages/fff/fff-web/Makefile                  |  4 +-
>  6 files changed, 100 insertions(+), 61 deletions(-)
>  create mode 100644 src/packages/fff/fff-boardname/Makefile
>  rename {bsp/default/root_file_system => src/packages/fff/fff-boardname/files}/etc/config/board (100%)
>  create mode 100755 src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
> 
> diff --git a/bsp/default/root_file_system/etc/rc.local.tpl b/bsp/default/root_file_system/etc/rc.local.tpl
> index 74d3ba1..754affb 100755
> --- a/bsp/default/root_file_system/etc/rc.local.tpl
> +++ b/bsp/default/root_file_system/etc/rc.local.tpl
> @@ -2,63 +2,6 @@
>  # Put your custom commands here that should be executed once
>  # the system init finished. By default this file does nothing.
>  
> -BOARD=$(cat /var/sysinfo/board_name)
> -
> -case "$BOARD" in
> -    tl-wr1043nd)
> -        BOARD=tl-wr1043nd-v1
> -        ;;
> -    tl-wr1043nd-v2)
> -        grep "v3" /var/sysinfo/model && BOARD=tl-wr1043nd-v3
> -        ;;
> -    tl-wr741nd)
> -        grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
> -        ;;
> -    tl-wr741nd-v4)
> -        grep 740 /var/sysinfo/model && BOARD=tl-wr740n-v4
> -        ;;
> -    tl-wr841n-v7)
> -        BOARD=tl-wr841nd-v7
> -        ;;
> -    tl-wr841n-v9)
> -        grep "v10" /var/sysinfo/model && BOARD=tl-wr841n-v10
> -        grep "v11" /var/sysinfo/model && BOARD=tl-wr841n-v11
> -        ;;
> -    nanostation-m)
> -        BOARD=ubnt-nano-m
> -        ;;
> -    bullet-m)
> -        BOARD=ubnt-bullet-m
> -        ;;
> -    loco-m-xw)
> -        BOARD=ubnt-loco-m-xw
> -        ;;
> -    tl-wa850re)
> -        BOARD=tl-wa850re-v1
> -        ;;
> -    tl-wa860re)
> -        BOARD=tl-wa860re-v1
> -        ;;
> -    tl-wdr3500)
> -        BOARD=tl-wdr3500-v1
> -        ;;
> -    tl-wdr4300)
> -        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
> -        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
> -        grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
> -        ;;
> -    tl-mr3020)
> -        BOARD=tl-mr3020-v1
> -        ;;
> -    cpe510)
> -        grep "CPE210" /var/sysinfo/model && BOARD=cpe210
> -        ;;
> -esac
> -
> -if ! uci get board.model.name; then
> -    uci set board.model.name=$BOARD
> -fi
> -
>  /usr/sbin/configurenetwork
>  
>  # Starting NTP-Client Daemon after 30s to ensure that the interface is up
> diff --git a/src/packages/fff/fff-boardname/Makefile b/src/packages/fff/fff-boardname/Makefile
> new file mode 100644
> index 0000000..bf3b82f
> --- /dev/null
> +++ b/src/packages/fff/fff-boardname/Makefile
> @@ -0,0 +1,39 @@
> +include $(TOPDIR)/rules.mk
> +
> +PKG_NAME:=fff-boardname
> +PKG_VERSION:=0.0.1
> +PKG_RELEASE:=1
> +
> +PKG_BUILD_DIR:=$(BUILD_DIR)/fff-boardname
> +
> +include $(INCLUDE_DIR)/package.mk
> +
> +define Package/fff-boardname
> +    SECTION:=base
> +    CATEGORY:=Freifunk
> +    TITLE:=Freifunk-Franken boardname
> +    URL:=http://www.freifunk-franken.de
> +endef
> +
> +define Package/fff-boardname/description
> +    This is the Freifunk Franken Firmware boardname package.
> +    This packages provides the boardname in the board config.
Es ist Haarspalterei aber ich würde folgendes für verständlicher halten:
This packages configures the boardname in the board config.
> +endef
> +
> +define Build/Prepare
> +    echo "all: " > $(PKG_BUILD_DIR)/Makefile
> +endef
> +
> +define Build/Configure
> +    # nothing
> +endef
> +
> +define Build/Compile
> +    # nothing
> +endef
> +
> +define Package/fff-boardname/install
> +    $(CP) ./files/* $(1)/
> +endef
> +
> +$(eval $(call BuildPackage,fff-boardname))
> diff --git a/bsp/default/root_file_system/etc/config/board b/src/packages/fff/fff-boardname/files/etc/config/board
> similarity index 100%
> rename from bsp/default/root_file_system/etc/config/board
> rename to src/packages/fff/fff-boardname/files/etc/config/board
> diff --git a/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
> new file mode 100755
> index 0000000..28811a3
> --- /dev/null
> +++ b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
> @@ -0,0 +1,57 @@
> +#!/bin/sh
> +
> +BOARD=$(cat /var/sysinfo/board_name)
> +
> +case "$BOARD" in
> +    tl-wr1043nd)
> +        BOARD=tl-wr1043nd-v1
> +        ;;
> +    tl-wr1043nd-v2)
> +        grep "v3" /var/sysinfo/model && BOARD=tl-wr1043nd-v3
> +        ;;
> +    tl-wr741nd)
> +        grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
> +        ;;
> +    tl-wr741nd-v4)
> +        grep 740 /var/sysinfo/model && BOARD=tl-wr740n-v4
> +        ;;
> +    tl-wr841n-v7)
> +        BOARD=tl-wr841nd-v7
> +        ;;
> +    tl-wr841n-v9)
> +        grep "v10" /var/sysinfo/model && BOARD=tl-wr841n-v10
> +        grep "v11" /var/sysinfo/model && BOARD=tl-wr841n-v11
> +        ;;
> +    nanostation-m)
> +        BOARD=ubnt-nano-m
> +        ;;
> +    bullet-m)
> +        BOARD=ubnt-bullet-m
> +        ;;
> +    loco-m-xw)
> +        BOARD=ubnt-loco-m-xw
> +        ;;
> +    tl-wa850re)
> +        BOARD=tl-wa850re-v1
> +        ;;
> +    tl-wa860re)
> +        BOARD=tl-wa860re-v1
> +        ;;
> +    tl-wdr3500)
> +        BOARD=tl-wdr3500-v1
> +        ;;
> +    tl-wdr4300)
> +        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
> +        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
> +        grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
> +        ;;
> +    tl-mr3020)
> +        BOARD=tl-mr3020-v1
> +        ;;
> +    cpe510)
> +        grep "CPE210" /var/sysinfo/model && BOARD=cpe210
> +        ;;
> +esac
> +
> +uci set board.model.name=$BOARD
> +uci commit board
> diff --git a/src/packages/fff/fff-network/Makefile b/src/packages/fff/fff-network/Makefile
> index a803afe..e3dc981 100644
> --- a/src/packages/fff/fff-network/Makefile
> +++ b/src/packages/fff/fff-network/Makefile
> @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-network
>  PKG_VERSION:=0.0.1
> -PKG_RELEASE:=1
> +PKG_RELEASE:=2
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/fff-network
>  
> @@ -13,7 +13,7 @@ define Package/fff-network
>      CATEGORY:=Freifunk
>      TITLE:= Freifunk-Franken network configuration
>      URL:=http://www.freifunk-franken.de
> -    DEPENDS:=+fff-uradvd
> +    DEPENDS:=+fff-uradvd +fff-boardname
>  endef
>  
>  define Package/fff-network/description
> diff --git a/src/packages/fff/fff-web/Makefile b/src/packages/fff/fff-web/Makefile
> index aefcaa6..e9fff79 100644
> --- a/src/packages/fff/fff-web/Makefile
> +++ b/src/packages/fff/fff-web/Makefile
> @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-web
>  PKG_VERSION:=0.0.3
> -PKG_RELEASE:=1
> +PKG_RELEASE:=2
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/fff-web
>  
> @@ -13,7 +13,7 @@ define Package/fff-web
>      CATEGORY:=Freifunk
>      TITLE:= Freifunk-Franken Webinterface
>      URL:=http://www.freifunk-franken.de
> -    DEPENDS:=+uhttpd +haserl +uhttpd-mod-tls +px5g +simple-tc
> +    DEPENDS:=+uhttpd +haserl +uhttpd-mod-tls +px5g +simple-tc +fff-boardname
>  endef
>  
>  define Package/fff-web/description
> -- 
> 2.1.4
>