From patchwork Tue Apr 5 15:58:19 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [v11, 1/3] use custom names for binary builds. fixes #9 also removed function board_clean from bsp files and board_postbuild from buildscript From: Jan Kraus X-Patchwork-Id: 66 Message-Id: <1459871901-32657-2-git-send-email-mayosemmel@gmail.com> To: franken-dev@freifunk.net Cc: Jan Kraus Date: Tue, 5 Apr 2016 17:58:19 +0200 Signed-off-by: Jan Kraus suggested-by: Alexander Wunschik Co-Authored-By: Alexander Wunschik Co-Authored-By: Tobias Klaus Reviewed-by: Tim Niemeyer --- bsp/board_ar71xx.bsp | 49 ++++++++++---------------- bsp/board_wdr4300.bsp | 29 +++++---------- bsp/board_wdr4900.bsp | 14 +++----- bsp/default/root_file_system/etc/sysupgrade.sh | 20 ++++++++--- buildscript | 16 ++++++--- 5 files changed, 59 insertions(+), 69 deletions(-) diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp index 4876631..1834d16 100644 --- a/bsp/board_ar71xx.bsp +++ b/bsp/board_ar71xx.bsp @@ -1,5 +1,23 @@ machine=ar71xx +chipset=ar71xx target=$builddir/$machine +images=("openwrt-ar71xx-generic-ubnt-nano-m-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-ubnt-loco-m-xw-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr740n-v4-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr741nd-v2-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr741nd-v4-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr841nd-v7-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr841n-v9-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr841n-v10-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr842n-v2-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wr1043nd-v3-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wa860re-v1-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wa850re-v1-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-gl-ar150-squashfs-sysupgrade.bin" + ) board_prepare() { echo "nothing todo" > /dev/null @@ -8,34 +26,3 @@ board_prepare() { board_prebuild() { echo "nothing todo" > /dev/null } - -board_postbuild() { - cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-nano-m-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-loco-m-xw-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr740n-v4-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr741nd-v2-squashfs-*.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr741nd-v4-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr841nd-v7-squashfs-*.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-*.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr841n-v9-squashfs-*.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr841n-v10-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr842n-v2-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-*.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-*.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr1043nd-v3-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wa860re-v1-squashfs-*.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wa850re-v1-squashfs-*.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-gl-ar150-squashfs-*.bin ./bin/ -} - -board_clean() { - /bin/rm -rf $target bin/*$machine* -} diff --git a/bsp/board_wdr4300.bsp b/bsp/board_wdr4300.bsp index 7e6c66e..514d589 100644 --- a/bsp/board_wdr4300.bsp +++ b/bsp/board_wdr4300.bsp @@ -1,28 +1,17 @@ machine=wdr4300 +chipset=ar71xx target=$builddir/$machine +images=( + "openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wdr4300-v1-squashfs-sysupgrade.bin" + "openwrt-ar71xx-generic-tl-wdr4310-v1-squashfs-sysupgrade.bin" + ) board_prepare() { - echo "nothing todo" > /dev/null + echo "nothing todo" > /dev/null } board_prebuild() { - echo "nothing todo" > /dev/null + echo "nothing todo" > /dev/null } - -board_postbuild() { - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-factory.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-sysupgrade.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-sysupgrade.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr4300-v1-squashfs-factory.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr4300-v1-squashfs-sysupgrade.bin ./bin/ - - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr4310-v1-squashfs-factory.bin ./bin/ - cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wdr4310-v1-squashfs-sysupgrade.bin ./bin/ -} - -board_clean() { - /bin/rm -rf $target bin/*$machine* -} \ No newline at end of file diff --git a/bsp/board_wdr4900.bsp b/bsp/board_wdr4900.bsp index 777b3b5..5428d82 100644 --- a/bsp/board_wdr4900.bsp +++ b/bsp/board_wdr4900.bsp @@ -1,6 +1,11 @@ machine=wdr4900 +chipset=mpc85xx target=$builddir/$machine +images=( + "openwrt-mpc85xx-generic-tl-wdr4900-v1-squashfs-sysupgrade.bin" + ) + board_prepare() { echo "nothing todo" > /dev/null } @@ -8,12 +13,3 @@ board_prepare() { board_prebuild() { echo "nothing todo" > /dev/null } - -board_postbuild() { - cp $target/bin/mpc85xx/openwrt-mpc85xx-generic-tl-wdr4900-v1-squashfs-factory.bin ./bin/ - cp $target/bin/mpc85xx/openwrt-mpc85xx-generic-tl-wdr4900-v1-squashfs-sysupgrade.bin ./bin/ -} - -board_clean() { - /bin/rm -rf $target bin/*$machine* -} \ No newline at end of file diff --git a/bsp/default/root_file_system/etc/sysupgrade.sh b/bsp/default/root_file_system/etc/sysupgrade.sh index e954514..0fd4061 100755 --- a/bsp/default/root_file_system/etc/sysupgrade.sh +++ b/bsp/default/root_file_system/etc/sysupgrade.sh @@ -1,21 +1,31 @@ #!/bin/sh +cd /tmp/ -BOARD=`uci get board.model.name` +. /etc/firmware_release +BOARD=$(uci get board.model.name) case $BOARD in tl-wdr4900-v1 ) SOC="mpc85xx" ;; * ) SOC="ar71xx" ;; esac +echo -ne "\nHardware: $BOARD\n" -FILE="openwrt-${SOC}-generic-${BOARD}-squashfs-sysupgrade.bin" +wget $(uci get firmware.upgrade.path)/release.nfo +if [ ! -f release.nfo ]; then + echo -ne "Latest release information not found. Please try to update manually.\n\n" + exit 1 +fi +VERSION=$(cat release.nfo|awk -F: '/VERSION:/ { print $2 }') +rm -f release.nfo +echo -ne "Firmware found on server: $VERSION\n" -echo -ne "\nHardware: $BOARD\n" +FILE="${FIRMWARE_COMMUNITY}-${VERSION}-${SOC}-generic-${BOARD}-squashfs-sysupgrade.bin" echo -ne "Downloading $FILE\n\n" -cd /tmp/ wget $(uci get firmware.upgrade.path)/${FILE} wget $(uci get firmware.upgrade.path)/${FILE}.md5 + echo -ne "\ndone. Comparing md5 sums: " md5sum -c ${FILE}.md5 ret=$? @@ -32,4 +42,4 @@ else [Nn]|* ) echo -ne "\nAborting firmware upgrade.\n\n"; rm -f ${FILE}*; exit 0;; esac done -fi \ No newline at end of file +fi diff --git a/buildscript b/buildscript index 13d773e..f916c6a 100755 --- a/buildscript +++ b/buildscript @@ -231,7 +231,7 @@ build() { mkdir bin fi - postbuild + cp_firmware } config() { @@ -266,12 +266,20 @@ config() { cd "$opath" } -postbuild() { - board_postbuild +cp_firmware() { + for image in ${images[@]}; do + filename_build=${image//openwrt/${community}-${version}} + cp "$target/bin/${chipset}/$image" "./bin/$filename_build" + + image_factory=${image/sysupgrade/factory} + if [[ -f "$target/bin/${chipset}/$image_factory" ]]; then + filename_build_factory=${filename_build/sysupgrade/factory} + cp "$target/bin/${chipset}/$image_factory" "./bin/$filename_build_factory" + fi + done } clean() { - board_clean /bin/rm -rf bin $builddir src/openwrt # remove downloaded package feeds