diff options
Diffstat (limited to 'include/inject.sh')
-rw-r--r-- | include/inject.sh | 53 |
1 files changed, 28 insertions, 25 deletions
diff --git a/include/inject.sh b/include/inject.sh index d2808301..faee8c49 100644 --- a/include/inject.sh +++ b/include/inject.sh @@ -6,22 +6,21 @@ cbcfgsdir="config/coreboot" tmpromdel="$XBMK_CACHE/DO_NOT_FLASH" nvm="util/nvmutil/nvm" -ifdtool="elf/ifdtool/default/ifdtool" +ifdtool="elf/coreboot/default/ifdtool" cv="CONFIG_GBE_BIN_PATH" [ -n "$cvxbmk" ] && cv="$cv $cvxbmk" [ -n "$cvchk" ] && cv="$cv $cvchk" -eval "`setvars "" archive boarddir IFD_platform ifdprefix tree new_mac \ - tmpromdir board xchanged $cv`" +eval "$(setvars "" archive boarddir IFD_platform ifdprefix tree new_mac \ + tmpromdir board xchanged $cv)" inject() { remkdir "$tmpromdel" - set +u +e - [ $# -lt 1 ] && err "No options specified" - eval "`setvars "" nuke new_mac xchanged`" + [ $# -lt 1 ] && err "No options specified" "inject" "$@" + eval "$(setvars "" nuke new_mac xchanged)" archive="$1"; new_mac="xx:xx:xx:xx:xx:xx" @@ -32,9 +31,10 @@ inject() nuke="nuke" ;; setmac) [ $# -gt 2 ] && new_mac="$3" && \ - [ -z "$new_mac" ] && err "Empty MAC address specified" ;; + [ -z "$new_mac" ] && \ + err "Empty MAC address specified" "inject" "$@" ;; *) - err "Unrecognised inject mode: '$2'" + err "Unrecognised inject mode: '$2'" "inject" "$@" ;; esac [ "$new_mac" = "keep" ] && new_mac="" @@ -51,21 +51,23 @@ inject() check_release() { - [ -L "$archive" ] && err "'$archive' is a symlink" - e "$archive" f missing && err "'$archive' missing" + [ -L "$archive" ] && err "'$archive' is a symlink" "check_release" "$@" + e "$archive" f missing && err "'$archive' missing" "check_release" "$@" - archivename="`basename "$archive"`" || err "Can't get '$archive' name" - [ -z "$archivename" ] && err "Can't determine archive name" + archivename="$(basename "$archive" || err "Can't get '$archive' name")" \ + || err "can't get '$archive' name" "check_release" "$@" + [ -z "$archivename" ] && \ + err "Can't determine archive name" "check_release" "$@" case "$archivename" in *_src.tar.xz) - err "'$archive' is a src archive, silly!" ;; + err "'$archive' is a src archive!" "check_release" "$@" ;; grub_*|seagrub_*|custom_*|seauboot_*|seabios_withgrub_*) - err "'$archive' is a ROM image (it must be a tarball)" ;; + err "'$archive' is a ROM image" "check_release" "$@" ;; *.tar.xz) _stripped_prefix="${archivename#*_}" board="${_stripped_prefix%.tar.xz}" ;; *) - err "'$archive': could not detect board type" + err "'$archive': cannot detect board" "check_release" "$@" ;; esac; : } @@ -74,10 +76,10 @@ check_target() [ "$board" = "${board#serprog_}" ] || return 1 boarddir="$cbcfgsdir/$board" - eval "`setcfg "$boarddir/target.cfg"`" + eval "$(setcfg "$boarddir/target.cfg")" chkvars tree && x_ ./mk -d coreboot "$tree" - ifdtool="elf/ifdtool/$tree/ifdtool" + ifdtool="elf/coreboot/$tree/ifdtool" [ -n "$IFD_platform" ] && ifdprefix="-p $IFD_platform"; : } @@ -105,34 +107,34 @@ readkconfig() { x_ rm -f "$xbtmp/cbcfg" fx_ scankconfig x_ find "$boarddir/config" -type f - eval "`setcfg "$xbtmp/cbcfg" 1`" + eval "$(setcfg "$xbtmp/cbcfg" 1)" setvfile "$@" || return 1; : } scankconfig() { for cbc in $cv; do - grep "$cbc" "$1" 1>>"$xbtmp/cbcfg" 2>/dev/null || : + grep "$cbc" "$1" 2>/dev/null 1>>"$xbtmp/cbcfg" || : done } modify_mac() { - x_ cp "${CONFIG_GBE_BIN_PATH##*../}" "$xbloc/gbe" + x_ cp "${CONFIG_GBE_BIN_PATH##*../}" "$xbtmp/gbe" [ -n "$new_mac" ] && [ "$new_mac" != "restore" ] && \ x_ make -C util/nvmutil clean && x_ make -C util/nvmutil && \ - x_ "$nvm" "$xbloc/gbe" setmac "$new_mac" + x_ "$nvm" "$xbtmp/gbe" setmac "$new_mac" fx_ newmac x_ find "$tmpromdir" -maxdepth 1 -type f -name "*.rom" printf "\nThe following GbE NVM data will be written:\n" - x_ "$nvm" "$xbloc/gbe" dump | grep -v "bytes read from file" || : + x_ "$nvm" "$xbtmp/gbe" dump | grep -v "bytes read from file" || : } newmac() { e "$1" f && xchanged="y" && x_ \ - "$ifdtool" $ifdprefix -i GbE:"$xbloc/gbe" "$1" -O "$1"; : + "$ifdtool" $ifdprefix -i GbE:"$xbtmp/gbe" "$1" -O "$1"; : } remktar() @@ -141,8 +143,9 @@ remktar() x_ cd "${tmpromdir%"/bin/$board"}" printf "Re-building tar archive (please wait)\n" mkrom_tarball "bin/$board" 1>/dev/null - ) || err "Cannot re-generate '$archive'" + ) || err "Cannot re-generate '$archive'" "remktar" "$@" mv "${tmpromdir%"/bin/$board"}/bin/${relname}_${board}.tar.xz" \ - "$archive" || err "'$archive' -> Can't overwrite"; : + "$archive" || \ + err "'$archive' -> Can't overwrite" "remktar" "$@"; : } |