[PATCH v2 3/7] fff-boardname: mv rc.local board detect to package
Tim Niemeyer
tim at tn-x.org
Fr Jun 10 23:58:11 CEST 2016
Signed-off-by: Tim Niemeyer <tim at tn-x.org>
---
Changes in v2:
- change description
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..c55f92f
--- /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 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
Mehr Informationen über die Mailingliste franken-dev