From ba7c49c090b7b41564ec5e9c69e60a022c2ace6e Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 00:33:36 +0100 Subject: vendor.sh: simplify fetch() the checks at the end of the function are mostly superfluous, because bad_checksum() is immediately called just beforehand, and performs the same checks. Signed-off-by: Leah Rowe --- include/vendor.sh | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/include/vendor.sh b/include/vendor.sh index 99fc7467..0111f90f 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -132,14 +132,8 @@ fetch() ( fx_ "eval mkdst \"$binsum\"" x_ find "${_pre_dest%/*}" -type f ) || : bad_checksum "$binsum" "$_dest" || [ ! -f "$_dest" ] || return 0 - [ -z "$binsum" ] && \ - printf "'%s', '%s': checksum undefined. Check files in '%s'\n" \ - "$board" "$_dest" "${_pre_dest%/*}" 1>&2 - e "$_dest" f not && err "missing file '$_dest', !extract_$dl_type"; : - e "$_dest" f && printf "WARNING: '%s' made with bad hash (will rm)\n" \ - "$_dest" 1>&2 - [ -L "$_dest" ] && printf "WARNING: '%s' is a link. Please delete!\n" \ - "$_dest" 1>&2 + [ -z "$binsum" ] && printf "'%s': checksum undefined\n" "$_dest" 1>&2 + [ -L "$_dest" ] && printf "WARNING: '%s' is a link!\n" "$_dest" 1>&2 [ -L "$_dest" ] || x_ rm -f "$_dest" err "Could not safely extract '$_dest', for board '$board'" } -- cgit v1.2.1 From ffe387ac6b98d99f82660410f23bb931e04beed8 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 00:35:38 +0100 Subject: get.sh: remove superfluous command in try_git() A git-pull is performed immediately after git-fetch. Git-pull already performs git-fetch as a prerequisite. Signed-off-by: Leah Rowe --- include/get.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/include/get.sh b/include/get.sh index 3d06eb4a..4105b93f 100644 --- a/include/get.sh +++ b/include/get.sh @@ -149,7 +149,6 @@ try_git() ( x_ git -C "$gitdest" remote remove backup ) || : x_ git -C "$gitdest" remote add main "$4" x_ git -C "$gitdest" remote add backup "$5" - ( x_ git -C "$gitdest" fetch --all ) || : ( x_ git -C "$gitdest" pull --all ) || :; : } -- cgit v1.2.1 From afc36754b13de41bfbea5ebf5202bdb01cb4aeeb Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 00:44:57 +0100 Subject: get.sh: remove redundant printf in fetch_project The following execution will result in another printf that says exactly what is being downloaded. There is no need to inform the user twice about what is being downloaded. Signed-off-by: Leah Rowe --- include/get.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/include/get.sh b/include/get.sh index 4105b93f..639d101d 100644 --- a/include/get.sh +++ b/include/get.sh @@ -26,7 +26,6 @@ fetch_project() [ -n "$xtree" ] && x_ ./mk -f coreboot "$xtree" [ -z "$depend" ] || for d in $depend ; do - printf "'%s' needs '%s'; grabbing '%s'\n" "$project" "$d" "$d" x_ ./mk -f $d done clone_project -- cgit v1.2.1 From e981132c829dea9dd958ea174e35e15e122451d7 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 00:50:06 +0100 Subject: get.sh: consolidate printf statements stick it in git_prep, which both single- and multi-tree projects will use, when downloading git repositories. Signed-off-by: Leah Rowe --- include/get.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/include/get.sh b/include/get.sh index 639d101d..a60e8c36 100644 --- a/include/get.sh +++ b/include/get.sh @@ -11,8 +11,6 @@ tmpgitcache="$XBMK_CACHE/tmpgit" fetch_targets() { e "src/$project/$tree" d && return 0 - - printf "Creating %s tree %s\n" "$project" "$tree" git_prep "$url" "$bkup_url" "$xbmkpwd/$configdir/$tree/patches" \ "src/$project/$tree" with_submodules } @@ -35,7 +33,6 @@ clone_project() { loc="$XBMK_CACHE/clone/$project" && singletree "$project" && \ loc="src/$project" - printf "Downloading project '%s' to '%s'\n" "$project" "$loc" e "$loc" d missing && remkdir "${tmpgit%/*}" && git_prep \ "$url" "$bkup_url" "$xbmkpwd/config/$project/patches" "$loc"; : @@ -43,6 +40,8 @@ clone_project() git_prep() { + printf "Creating code directory, src/%s/%s\n" "$project" "$tree" + _patchdir="$3" _loc="$4" # $1 and $2 are gitrepo and gitrepo_backup -- cgit v1.2.1 From 18dacd4c22b1dfe6ab985d76712dd8261f173ce4 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 00:57:50 +0100 Subject: xbmk: rename xbmklocal/xbmktmp variables shorten them Signed-off-by: Leah Rowe --- include/get.sh | 2 +- include/init.sh | 13 ++++++------- include/inject.sh | 14 +++++++------- include/release.sh | 2 +- include/rom.sh | 6 +++--- include/tree.sh | 6 +++--- include/vendor.sh | 14 +++++++------- 7 files changed, 28 insertions(+), 29 deletions(-) diff --git a/include/get.sh b/include/get.sh index a60e8c36..ebaaaff1 100644 --- a/include/get.sh +++ b/include/get.sh @@ -5,7 +5,7 @@ eval "`setvars "" loc url bkup_url subcurl subhash subgit subgit_bkup \ depend subcurl_bkup repofail`" -tmpgit="$xbmklocal/gitclone" +tmpgit="$xbloc/gitclone" tmpgitcache="$XBMK_CACHE/tmpgit" fetch_targets() diff --git a/include/init.sh b/include/init.sh index 9265bf45..bc5a62b6 100644 --- a/include/init.sh +++ b/include/init.sh @@ -14,13 +14,13 @@ projectsite="https://libreboot.org/" export PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" eval "`setvars "" _nogit board reinstall versiondate aur_notice configdir \ - datadir version xbmkpwd relname xbmkpwd xbmktmp python pyver xbmklocal \ + datadir version xbmkpwd relname xbmkpwd xbtmp python pyver xbloc \ xbmklock cvxbmk cvchk xbmkpath`" xbmk_init() { xbmkpwd="`pwd`" || err "Cannot generate PWD" - xbmklocal="$xbmkpwd/tmp" + xbloc="$xbmkpwd/tmp" xbmklock="$xbmkpwd/lock" export PWD="$xbmkpwd" @@ -71,7 +71,7 @@ xbmk_set_env() # unify all temporary files/directories in a single TMPDIR [ -z "${TMPDIR+x}" ] || [ "${TMPDIR%_*}" = "/tmp/xbmk" ] || \ unset TMPDIR - [ -n "${TMPDIR+x}" ] && export TMPDIR="$TMPDIR" && xbmktmp="$TMPDIR" + [ -n "${TMPDIR+x}" ] && export TMPDIR="$TMPDIR" && xbtmp="$TMPDIR" [ -z "${TMPDIR+x}" ] || is_child="y" # child instance, so return if [ "$is_child" = "y" ]; then @@ -87,7 +87,7 @@ xbmk_set_env() # parent instance of xbmk, so don't return. set up TMPDIR export TMPDIR="/tmp" export TMPDIR="$(mktemp -d -t xbmk_XXXXXXXX)" - xbmktmp="$TMPDIR" + xbtmp="$TMPDIR" export XBMK_CACHE="$xbmkpwd/cache" [ -L "$XBMK_CACHE" ] && [ "$XBMK_CACHE" = "$xbmkpwd/cache" ] && \ @@ -107,8 +107,7 @@ xbmk_set_env() xbmk_set_version export LOCALVERSION="-$projectname-${version%%-*}" - remkdir "$xbmktmp" "$xbmklocal" - remkdir "$XBMK_CACHE/gnupath" "$XBMK_CACHE/xbmkpath" + remkdir "$xbtmp" "$xbloc" "$XBMK_CACHE/gnupath" "$XBMK_CACHE/xbmkpath" xbmk_set_pyver } @@ -211,7 +210,7 @@ xbmk_child_exec() { xbmk_rval=0 ( x_ ./mk "$@" ) || xbmk_rval=1 - ( x_ rm -Rf "$xbmklocal" "$xbmktmp" ) || xbmk_rval=1 + ( x_ rm -Rf "$xbloc" "$xbtmp" ) || xbmk_rval=1 ( x_ rm -f "$xbmklock" ) || xbmk_rval=1 exit $xbmk_rval } diff --git a/include/inject.sh b/include/inject.sh index 74f688a1..d2808301 100644 --- a/include/inject.sh +++ b/include/inject.sh @@ -103,36 +103,36 @@ patch_release() readkconfig() { - x_ rm -f "$xbmktmp/cbcfg" + x_ rm -f "$xbtmp/cbcfg" fx_ scankconfig x_ find "$boarddir/config" -type f - eval "`setcfg "$xbmktmp/cbcfg" 1`" + eval "`setcfg "$xbtmp/cbcfg" 1`" setvfile "$@" || return 1; : } scankconfig() { for cbc in $cv; do - grep "$cbc" "$1" 1>>"$xbmktmp/cbcfg" 2>/dev/null || : + grep "$cbc" "$1" 1>>"$xbtmp/cbcfg" 2>/dev/null || : done } modify_mac() { - x_ cp "${CONFIG_GBE_BIN_PATH##*../}" "$xbmklocal/gbe" + x_ cp "${CONFIG_GBE_BIN_PATH##*../}" "$xbloc/gbe" [ -n "$new_mac" ] && [ "$new_mac" != "restore" ] && \ x_ make -C util/nvmutil clean && x_ make -C util/nvmutil && \ - x_ "$nvm" "$xbmklocal/gbe" setmac "$new_mac" + x_ "$nvm" "$xbloc/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" "$xbmklocal/gbe" dump | grep -v "bytes read from file" || : + x_ "$nvm" "$xbloc/gbe" dump | grep -v "bytes read from file" || : } newmac() { e "$1" f && xchanged="y" && x_ \ - "$ifdtool" $ifdprefix -i GbE:"$xbmklocal/gbe" "$1" -O "$1"; : + "$ifdtool" $ifdprefix -i GbE:"$xbloc/gbe" "$1" -O "$1"; : } remktar() diff --git a/include/release.sh b/include/release.sh index f23ed541..5b822c7b 100644 --- a/include/release.sh +++ b/include/release.sh @@ -22,7 +22,7 @@ release() [ -e "$reldest" ] && \ err "already exists: \"$reldest\"" - vdir="$XBMK_CACHE/relpwd/${xbmktmp##*/}/$version" + vdir="$XBMK_CACHE/relpwd/${xbtmp##*/}/$version" rsrc="$vdir/${relname}_src" remkdir "$vdir" diff --git a/include/rom.sh b/include/rom.sh index 4ac4c5de..e8caf024 100644 --- a/include/rom.sh +++ b/include/rom.sh @@ -78,7 +78,7 @@ mkcorebootbin() { [ "$target" = "$tree" ] && return 0 - tmprom="$xbmktmp/coreboot.rom" + tmprom="$xbtmp/coreboot.rom" $dry x_ cp "$srcdir/build/coreboot.rom" "$tmprom" initmode="${defconfig##*/}" @@ -158,8 +158,8 @@ add_grub() _grubname="fallback/payload" cbfs "$tmprom" "$grubelf" "$_grubname" printf "set grub_scan_disk=\"%s\"\n" "$grub_scan_disk" \ - > "$xbmktmp/tmpcfg" || err "$target: !insert scandisk" - cbfs "$tmprom" "$xbmktmp/tmpcfg" scan.cfg raw + > "$xbtmp/tmpcfg" || err "$target: !insert scandisk" + cbfs "$tmprom" "$xbtmp/tmpcfg" scan.cfg raw [ "$initmode" != "normal" ] && [ "$displaymode" != "txtmode" ] && \ cbfs "$tmprom" "$grubdata/background/background1280x800.png" \ "background.png" raw; : diff --git a/include/tree.sh b/include/tree.sh index 8aaadd57..11607eed 100644 --- a/include/tree.sh +++ b/include/tree.sh @@ -58,7 +58,7 @@ trees() mkhelpercfg="$datadir/mkhelper.cfg" if e "$mkhelpercfg" f missing; then - mkhelpercfg="$xbmktmp/mkhelper.cfg" + mkhelpercfg="$xbtmp/mkhelper.cfg" x_ touch "$mkhelpercfg" fi @@ -181,9 +181,9 @@ check_project_hashes() fx_ "x_ sha512sum" find "$datadir" "$configdir/$tree" "$mdir" \ -type f -not -path "*/.git*/*" | awk '{print $1}' > \ - "$xbmktmp/project.hash" || err "!h $project $tree" + "$xbtmp/project.hash" || err "!h $project $tree" - pjhash="$(sha512sum "$xbmktmp/project.hash" | awk '{print $1}')" || : + pjhash="$(sha512sum "$xbtmp/project.hash" | awk '{print $1}')" || : [ "$pjhash" != "$old_pjhash" ] && badhash="y" [ -f "$XBMK_CACHE/hash/$project$tree" ] || badhash="y" diff --git a/include/vendor.sh b/include/vendor.sh index 0111f90f..6702f5fd 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -150,9 +150,9 @@ extract_intel_me() { e "$mecleaner" f not && err "$cbdir: me_cleaner missing" - _7ztest="$xbmklocal/metmp/a" - _metmp="$xbmklocal/me.bin" - x_ rm -f "$_metmp" "$xbmklocal/a" + _7ztest="$xbloc/metmp/a" + _metmp="$xbloc/me.bin" + x_ rm -f "$_metmp" "$xbloc/a" mfs="" && [ "$ME11bootguard" = "y" ] && mfs="--whitelist MFS" && \ chkvars ME11delta ME11version ME11sku ME11pch @@ -178,7 +178,7 @@ find_me() _7ztest="${_7ztest}a" && _r="-r" && [ -n "$mfs" ] && _r="" - "$mecleaner" $mfs $_r -t -O "$xbmklocal/a" -M "$_metmp" "$1" || \ + "$mecleaner" $mfs $_r -t -O "$xbloc/a" -M "$_metmp" "$1" || \ "$mecleaner" $mfs $_r -t -O "$_metmp" "$1" || "$me7updateparser" \ -O "$_metmp" "$1" || extract_archive "$1" "$_7ztest" || return 0 @@ -387,9 +387,9 @@ vfile() elif [ "$nuke" = "nuke" ]; then x_ "$cbfstool" "$rom" remove -n "$cbfsname" elif [ "$_t" = "stage" ]; then # the only stage we handle is refcode - x_ rm -f "$xbmklocal/refcode" - x_ "$rmodtool" -i "$_dest" -o "$xbmklocal/refcode" - x_ "$cbfstool" "$rom" add-stage -f "$xbmklocal/refcode" \ + x_ rm -f "$xbloc/refcode" + x_ "$rmodtool" -i "$_dest" -o "$xbloc/refcode" + x_ "$cbfstool" "$rom" add-stage -f "$xbloc/refcode" \ -n "$cbfsname" -t stage else x_ "$cbfstool" "$rom" add -f "$_dest" -n "$cbfsname" \ -- cgit v1.2.1 From 09b6e91803d4112ae22d31313a5fdbe8afe79707 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 01:30:33 +0100 Subject: general cleanup in get.sh and vendor.sh Signed-off-by: Leah Rowe --- include/get.sh | 10 +++++----- include/vendor.sh | 21 ++++++++------------- 2 files changed, 13 insertions(+), 18 deletions(-) diff --git a/include/get.sh b/include/get.sh index ebaaaff1..00768f0b 100644 --- a/include/get.sh +++ b/include/get.sh @@ -46,7 +46,7 @@ git_prep() _loc="$4" # $1 and $2 are gitrepo and gitrepo_backup chkvars rev - xbmkget git "$1" "$2" "$tmpgit" "$rev" "$_patchdir" + xbget git "$1" "$2" "$tmpgit" "$rev" "$_patchdir" if singletree "$project" || [ $# -gt 4 ]; then dx_ fetch_submodule "$mdir/module.list" fi @@ -71,19 +71,19 @@ fetch_submodule() chkvars "sub${st}" "sub${st}_bkup" "subhash" [ "$st" = "git" ] && x_ rm -Rf "$tmpgit/$1" - eval xbmkget "$st" "\$sub$st" "\$sub${st}_bkup" "$tmpgit/$1" \ + eval xbget "$st" "\$sub$st" "\$sub${st}_bkup" "$tmpgit/$1" \ "$subhash" "$mdir/${1##*/}/patches" } -xbmkget() +xbget() { [ "$1" = "curl" ] || [ "$1" = "copy" ] || [ "$1" = "git" ] || \ - err "Bad dlop (arg 1): xbmkget $*" + err "Bad dlop (arg 1): xbget $*" echk="f" && [ "$1" = "git" ] && echk="d" for url in "$2" "$3"; do - [ -n "$url" ] || err "empty URL given in: xbmkget $*" + [ -n "$url" ] || err "empty URL given in: xbget $*" try_file "$url" "$@" || continue eval "[ -$echk \"$4\" ] || continue" return 0 # successful download/copy diff --git a/include/vendor.sh b/include/vendor.sh index 6702f5fd..4d8d1184 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -26,12 +26,11 @@ cvchk="CONFIG_INCLUDE_SMSC_SCH5545_EC_FW CONFIG_HAVE_MRC CONFIG_HAVE_ME_BIN \ CONFIG_FSP_S_FILE CONFIG_KBC1126_FW1 CONFIG_KBC1126_FW2" # lbmk-specific extensions to the "cv" variable (not suitable for cbmk) -cvxbmk="CONFIG_ME_BIN_PATH CONFIG_SMSC_SCH5545_EC_FW_FILE \ - CONFIG_KBC1126_FW1_OFFSET CONFIG_KBC1126_FW2_OFFSET \ +cvxbmk="CONFIG_ME_BIN_PATH CONFIG_SMSC_SCH5545_EC_FW_FILE CONFIG_FSP_FULL_FD \ + CONFIG_KBC1126_FW1_OFFSET CONFIG_KBC1126_FW2_OFFSET CONFIG_FSP_USE_REPO \ CONFIG_VGA_BIOS_ID CONFIG_BOARD_DELL_E6400 CONFIG_FSP_S_CBFS \ CONFIG_HAVE_REFCODE_BLOB CONFIG_REFCODE_BLOB_FILE CONFIG_FSP_FD_PATH \ - CONFIG_IFD_BIN_PATH CONFIG_MRC_FILE CONFIG_FSP_M_CBFS \ - CONFIG_FSP_USE_REPO CONFIG_FSP_FULL_FD" + CONFIG_IFD_BIN_PATH CONFIG_MRC_FILE CONFIG_FSP_M_CBFS" # lbmk-specific extensions; mostly used for downloading vendor files eval "`setvars "" has_hashes EC_hash DL_hash DL_url_bkup MRC_refcode_gbe vcfg \ @@ -54,17 +53,14 @@ download() getfiles() { [ -z "$CONFIG_HAVE_ME_BIN" ] || fetch intel_me "$DL_url" \ - "$DL_url_bkup" "$DL_hash" "$CONFIG_ME_BIN_PATH" "curl" \ - "$ME_bin_hash" + "$DL_url_bkup" "$DL_hash" "$CONFIG_ME_BIN_PATH" curl "$ME_bin_hash" [ -z "$CONFIG_INCLUDE_SMSC_SCH5545_EC_FW" ] || fetch sch5545ec \ "$SCH5545EC_DL_url" "$SCH5545EC_DL_url_bkup" "$SCH5545EC_DL_hash" \ "$CONFIG_SMSC_SCH5545_EC_FW_FILE" "curl" "$SCH5545EC_bin_hash" [ -z "$CONFIG_KBC1126_FW1" ] || fetch kbc1126ec "$EC_url" \ - "$EC_url_bkup" "$EC_hash" "$CONFIG_KBC1126_FW1" "curl" \ - "$EC_FW1_hash" + "$EC_url_bkup" "$EC_hash" "$CONFIG_KBC1126_FW1" curl "$EC_FW1_hash" [ -z "$CONFIG_KBC1126_FW2" ] || fetch kbc1126ec "$EC_url" \ - "$EC_url_bkup" "$EC_hash" "$CONFIG_KBC1126_FW2" "curl" \ - "$EC_FW2_hash" + "$EC_url_bkup" "$EC_hash" "$CONFIG_KBC1126_FW2" curl "$EC_FW2_hash" [ -z "$CONFIG_VGA_BIOS_FILE" ] || fetch e6400vga "$E6400_VGA_DL_url" \ "$E6400_VGA_DL_url_bkup" "$E6400_VGA_DL_hash" \ "$CONFIG_VGA_BIOS_FILE" "curl" "$E6400_VGA_bin_hash" @@ -111,12 +107,11 @@ fetch() done; : # download the file (from the internet) to extract from - xbmkget "$dlop" "$dl" "$dl_bkup" "$_dl" "$dlsum" + xbget "$dlop" "$dl" "$dl_bkup" "$_dl" "$dlsum" x_ rm -Rf "${_dl}_extracted" # skip extraction if a cached extracted file exists - ( xbmkget copy "$_dl_bin" "$_dl_bin" "$_dest" "$binsum" 2>/dev/null ) \ - || : + ( xbget copy "$_dl_bin" "$_dl_bin" "$_dest" "$binsum" 2>/dev/null ) || : [ -f "$_dest" ] && return 0 x_ mkdir -p "${_dest%/*}" -- cgit v1.2.1 From 671e3aa27b402f04543cf016565421021d97c27d Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 13:11:20 +0100 Subject: get.sh: simplify fetch_targets() Signed-off-by: Leah Rowe --- include/get.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/include/get.sh b/include/get.sh index 00768f0b..d32452ff 100644 --- a/include/get.sh +++ b/include/get.sh @@ -10,9 +10,8 @@ tmpgitcache="$XBMK_CACHE/tmpgit" fetch_targets() { - e "src/$project/$tree" d && return 0 - git_prep "$url" "$bkup_url" "$xbmkpwd/$configdir/$tree/patches" \ - "src/$project/$tree" with_submodules + [ -d "src/$project/$tree" ] || git_prep "$url" "$bkup_url" \ + "$xbmkpwd/$configdir/$tree/patches" "src/$project/$tree" submod; : } fetch_project() -- cgit v1.2.1 From 495098d6a71bc3a67a80d39a5d4fdf2d2207c782 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 13:19:06 +0100 Subject: get.sh: tidy up bad_checksum() Signed-off-by: Leah Rowe --- include/get.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/get.sh b/include/get.sh index d32452ff..6aed0a8d 100644 --- a/include/get.sh +++ b/include/get.sh @@ -151,10 +151,10 @@ try_git() bad_checksum() { - [ ! -f "$2" ] && printf "'%s' missing, %s\n" "$2" "$1" 1>&2 && return 0 + e "$2" f missing && return 0 csum="$(x_ sha512sum "$2" | awk '{print $1}')" || err "!sha512 '$2' $1" - [ "$csum" != "$1" ] && printf "BAD SHA512, '%s'; need '%s', got %s\n" \ - "$2" "$1" "$csum" 1>&2 && x_ rm -f "$2" && return 0; return 1 + [ "$csum" = "$1" ] && return 1; x_ rm -f "$2" + printf "BAD SHA512 %s, '%s'; need '%s'\n" "$csum" "$2" "$1" 1>&2 } tmpclone() -- cgit v1.2.1 From b5867be214d3f899ae1777bfe1d0b2c1d69ba6cd Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 13:23:06 +0100 Subject: get.sh: simplify try_copy() Signed-off-by: Leah Rowe --- include/get.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/include/get.sh b/include/get.sh index 6aed0a8d..b842d768 100644 --- a/include/get.sh +++ b/include/get.sh @@ -128,8 +128,7 @@ try_curl() try_copy() { - [ -L "$2" ] && printf "symlink %s (trycp %s)\n" "$2" "$*" && return 1 - [ ! -f "$2" ] && printf "%s missing (trycp %s)\n" "$2" "$*" && return 1 + e "$2" f missing && return 1; : ( x_ cp "$2" "$1" ) || return 1; : } -- cgit v1.2.1 From 41308ee924445cad61e599aebf15557a0351522b Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 13:26:34 +0100 Subject: get.sh: simplify fetch_project() Signed-off-by: Leah Rowe --- include/get.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/include/get.sh b/include/get.sh index b842d768..a3328454 100644 --- a/include/get.sh +++ b/include/get.sh @@ -19,9 +19,7 @@ fetch_project() eval "`setvars "" xtree`" eval "`setcfg "config/git/$project/pkg.cfg"`" - chkvars url bkup_url - - [ -n "$xtree" ] && x_ ./mk -f coreboot "$xtree" + chkvars url bkup_url && [ -n "$xtree" ] && x_ ./mk -f coreboot "$xtree" [ -z "$depend" ] || for d in $depend ; do x_ ./mk -f $d done -- cgit v1.2.1 From 5036a0bc501b5b26d429701a8e9dd71339ec18a0 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 13:33:56 +0100 Subject: mk: simplify main() Signed-off-by: Leah Rowe --- mk | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/mk b/mk index f358bc3a..8da15f5b 100755 --- a/mk +++ b/mk @@ -26,14 +26,13 @@ main() case "$cmd" in version) printf "%s\nWebsite: %s\n" "$relname" "$projectsite" ;; release|download|inject) $cmd "$@" ;; - -*) return 0 ;; + -*) return 1 ;; *) err "bad command" ;; esac set -u -e # some commands disable them. turn them on! - return 1 } -main "$@" || exit 0 +main "$@" && exit 0 . "include/tree.sh" -- cgit v1.2.1 From 79ded40f3d0f123ce2dbddba524aaae76764c699 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 13:45:12 +0100 Subject: lib.sh: simplify chkvars() Signed-off-by: Leah Rowe --- include/lib.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/include/lib.sh b/include/lib.sh index 7c4d71ea..822f1abc 100644 --- a/include/lib.sh +++ b/include/lib.sh @@ -71,11 +71,9 @@ setcfg() chkvars() { - while true; do - [ $# -lt 1 ] && break + while [ $# -gt 0 ]; do eval "[ -n \"\${$1+x}\" ] || err \"$1 unset\"" - eval "[ -n \"\$$1\" ] || err \"$1 unset\"" - shift 1 + eval "[ -n \"\$$1\" ] || err \"$1 unset\"; shift 1; :" done; : } -- cgit v1.2.1 From dee6997d0cc13e95b9a911efef0687b0ac582edd Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 13:49:55 +0100 Subject: lib.sh: simplify setvars() Signed-off-by: Leah Rowe --- include/lib.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/include/lib.sh b/include/lib.sh index 822f1abc..86c0df26 100644 --- a/include/lib.sh +++ b/include/lib.sh @@ -53,12 +53,10 @@ setvars() fi val="$1" shift 1 - while true; do - [ $# -lt 1 ] && break - _setvars="$1=\"$val\"; $_setvars" + while [ $# -gt 0 ]; do + printf "%s=\"%s\"\n" "$1" "$val" shift 1 done - printf "%s\n" "${_setvars% }" } setcfg() -- cgit v1.2.1 From b77154640de6442b4180cb65e3851d1ae9f78918 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 26 May 2025 18:46:58 +0100 Subject: release.sh: use printf to create version files Don't copy the files directly, because we might be doing this from a work directory that has no files; in this case, generic "unknown" variables are used, without generating any files, so the current logic would produce an error. However, we do need to create those dot files, because we then rely on them for building release binaries. The new logic maintains current behaviour, while fixing this technical edge-case scenario via mitigation. Signed-off-by: Leah Rowe --- include/release.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/include/release.sh b/include/release.sh index 5b822c7b..912687dc 100644 --- a/include/release.sh +++ b/include/release.sh @@ -27,8 +27,7 @@ release() remkdir "$vdir" x_ git clone . "$rsrc" - x_ cp ".version" "$rsrc/.version" - x_ cp ".versiondate" "$rsrc/.versiondate" + update_xbmkver "$rsrc" prep_release src prep_release tarball -- cgit v1.2.1 From dc6996252a0f516add85e0cbcf1693bfa80f8c99 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Tue, 27 May 2025 10:11:42 +0100 Subject: put coreboot utils in elf/coreboot/TREE not elf/UTIL/TREE This way, they are automatically deleted when a tree has to be re-built. Signed-off-by: Leah Rowe --- include/inject.sh | 4 ++-- include/lib.sh | 4 ++-- include/rom.sh | 8 ++++---- include/vendor.sh | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/inject.sh b/include/inject.sh index d2808301..a58acc81 100644 --- a/include/inject.sh +++ b/include/inject.sh @@ -6,7 +6,7 @@ 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" @@ -77,7 +77,7 @@ check_target() 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"; : } diff --git a/include/lib.sh b/include/lib.sh index 86c0df26..b40772fa 100644 --- a/include/lib.sh +++ b/include/lib.sh @@ -4,8 +4,8 @@ # Copyright (c) 2020-2025 Leah Rowe # Copyright (c) 2025 Alper Nebi Yasak -cbfstool="elf/cbfstool/default/cbfstool" -rmodtool="elf/cbfstool/default/rmodtool" +cbfstool="elf/coreboot/default/cbfstool" +rmodtool="elf/coreboot/default/rmodtool" remkdir() { diff --git a/include/rom.sh b/include/rom.sh index e8caf024..c1b78c75 100644 --- a/include/rom.sh +++ b/include/rom.sh @@ -56,10 +56,10 @@ corebootpremake() check_coreboot_util() { - [ "$badhash" = "y" ] && x_ rm -f "elf/$1/$tree/$1" - e "elf/$1/$tree/$1" f && return 0 + [ "$badhash" = "y" ] && x_ rm -f "elf/coreboot/$tree/$1" + e "elf/coreboot/$tree/$1" f && return 0 - utilelfdir="elf/$1/$tree" + utilelfdir="elf/coreboot/$tree" utilsrcdir="src/coreboot/$tree/util/$1" utilmode="" && [ -n "$mode" ] && utilmode="clean" @@ -85,7 +85,7 @@ mkcorebootbin() displaymode="${initmode##*_}" [ "$displaymode" = "$initmode" ] && displaymode="" # "normal" config initmode="${initmode%%_*}" - cbfstool="elf/cbfstool/$tree/cbfstool" + cbfstool="elf/coreboot/$tree/cbfstool" [ -z "$payload_uboot" ] || [ "$payload_uboot" = "amd64" ] || \ [ "$payload_uboot" = "i386" ] || [ "$payload_uboot" = "arm64" ] \ diff --git a/include/vendor.sh b/include/vendor.sh index 4d8d1184..3f287899 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -270,8 +270,8 @@ bootstrap() cbdir="src/coreboot/$tree" mecleaner="$xbmkpwd/$cbdir/util/me_cleaner/me_cleaner.py" kbc1126_ec_dump="$xbmkpwd/$cbdir/util/kbc1126/kbc1126_ec_dump" - cbfstool="elf/cbfstool/$tree/cbfstool" - rmodtool="elf/cbfstool/$tree/rmodtool" + cbfstool="elf/coreboot/$tree/cbfstool" + rmodtool="elf/coreboot/$tree/rmodtool" x_ ./mk -f coreboot "${cbdir##*/}" fx_ "x_ ./mk -b" printf "uefitool\nbiosutilities\nbios_extract\n" -- cgit v1.2.1 From 974bdbb38159d90b90eeff68220c7464b418866d Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Tue, 27 May 2025 11:18:18 +0100 Subject: vendor.sh: fix bad cbfstool path i overlooked this one in the previous commit there is always one. Signed-off-by: Leah Rowe --- include/vendor.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/vendor.sh b/include/vendor.sh index 3f287899..55373913 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -277,7 +277,7 @@ bootstrap() fx_ "x_ ./mk -b" printf "uefitool\nbiosutilities\nbios_extract\n" [ -d "${kbc1126_ec_dump%/*}" ] && x_ make -C "$cbdir/util/kbc1126" [ -n "$MRC_refcode_cbtree" ] && \ - cbfstoolref="elf/cbfstool/$MRC_refcode_cbtree/cbfstool" && \ + cbfstoolref="elf/coreboot/$MRC_refcode_cbtree/cbfstool" && \ x_ ./mk -d coreboot "$MRC_refcode_cbtree"; : } -- cgit v1.2.1