[PATCH v2 3/7] fff-boardname: mv rc.local board detect to package

mayosemmel mayosemmel at googlemail.com
Sa Jun 11 09:23:35 CEST 2016


Reviewed-by: Jan Kraus <mayosemmel at gmail.com>

Am Freitag, den 10.06.2016, 23:58 +0200 schrieb Tim Niemeyer:
> 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
> 

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 473 bytes
Beschreibung: This is a digitally signed message part
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20160611/c8521fe6/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev