summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/lib.sh35
-rw-r--r--include/rom.sh11
-rw-r--r--include/vendor.sh9
3 files changed, 28 insertions, 27 deletions
diff --git a/include/lib.sh b/include/lib.sh
index e0c9b1a2..21066ecc 100644
--- a/include/lib.sh
+++ b/include/lib.sh
@@ -30,9 +30,6 @@ x_() {
[ $# -lt 1 ] || "$@" || $err "Unhandled error for: $(echo "$@")"; :
}
-xbmkpwd="`pwd`" || $err "Cannot generate PWD"
-export PWD="$xbmkpwd"
-
setvars()
{
_setvars="" && [ $# -lt 2 ] && $err "setvars: too few arguments"
@@ -49,13 +46,6 @@ chkvars()
done; :
}
-eval "`setvars "" _nogit board reinstall versiondate aur_notice configdir \
- datadir version relname`"
-
-for fv in version versiondate; do
- eval "[ ! -f \".$fv\" ] || read -r $fv < \".$fv\" || :"
-done
-
setcfg()
{
[ $# -gt 1 ] && printf "e \"%s\" f missing && return %s;\n" "$1" "$2"
@@ -88,11 +78,25 @@ install_packages()
[ -n "$aur_notice" ] && \
printf "You need AUR packages: %s\n" "$aur_notice" 1>&2; :
}
+
+eval "`setvars "" _nogit board reinstall versiondate aur_notice configdir \
+ datadir version relname xbmktmp`"
+
if [ $# -gt 0 ] && [ "$1" = "dependencies" ]; then
install_packages "$@" || exit 1
exit 0
fi
+id -u 1>/dev/null 2>/dev/null || $err "suid check failed (id -u)"
+[ "$(id -u)" != "0" ] || $err "this command as root is not permitted"
+
+xbmkpwd="`pwd`" || $err "Cannot generate PWD"
+export PWD="$xbmkpwd"
+
+for fv in version versiondate; do
+ eval "[ ! -f \".$fv\" ] || read -r $fv < \".$fv\" || :"
+done
+
pyver="2"
python="python3"
command -v python3 1>/dev/null || python="python"
@@ -109,9 +113,6 @@ if [ "${pyver%%.*}" != "3" ]; then
exit 1
fi
-id -u 1>/dev/null 2>/dev/null || $err "suid check failed (id -u)"
-[ "$(id -u)" != "0" ] || $err "this command as root is not permitted"
-
# XBMK_CACHE is a directory, for caching downloads and git repositories
[ -z "${XBMK_CACHE+x}" ] && export XBMK_CACHE="$xbmkpwd/cache"
[ -z "$XBMK_CACHE" ] && export XBMK_CACHE="$xbmkpwd/cache"
@@ -127,6 +128,7 @@ if [ -z "${TMPDIR+x}" ]; then
[ -f "lock" ] && $err "$xbmkpwd/lock exists. Is a build running?"
export TMPDIR="/tmp"
export TMPDIR="$(mktemp -d -t xbmk_XXXXXXXX)"
+ xbmktmp="$TMPDIR"
touch lock || $err "cannot create 'lock' file"
x_ rm -Rf "$XBMK_CACHE/xbmkpath" "$XBMK_CACHE/gnupath"
x_ mkdir -p "$XBMK_CACHE/gnupath" "$XBMK_CACHE/xbmkpath"
@@ -140,10 +142,11 @@ if [ -z "${TMPDIR+x}" ]; then
xbmk_rval=0
./mk "$@" || xbmk_rval=1
- rm -Rf "$TMPDIR" || xbmk_rval=1
+ rm -Rf "$xbmktmp" || xbmk_rval=1
rm -f lock || xbmk_rval=1
exit $xbmk_rval
fi
+xbmktmp="$TMPDIR"
# if "y": a coreboot target won't be built if target.cfg says release="n"
# (this is used to exclude certain build targets from releases)
@@ -197,9 +200,7 @@ mkrom_tarball()
mktarball()
{
- if [ "${2%/*}" != "$2" ]; then
- mkdir -p "${2%/*}" || $err "mk, !mkdir -p \"${2%/*}\""
- fi
+ [ "${2%/*}" = "$2" ] || x_ mkdir -p "${2%/*}"
x_ tar -c "$1" | xz -T$XBMK_THREADS -9e > "$2" || $err "mktarball2, $1"
}
diff --git a/include/rom.sh b/include/rom.sh
index 4ec473e5..710df853 100644
--- a/include/rom.sh
+++ b/include/rom.sh
@@ -12,7 +12,8 @@ mkserprog()
[ "$1" = "pico" ] && mkpicotool
- basename -as .h "$serdir/"*.h > "$TMPDIR/ser" || $err "!mk $1 $TMPDIR"
+ basename -as .h "$serdir/"*.h > "$xbmktmp/ser" || \
+ $err "!mk $1 $xbmktmp"
while read -r sertarget; do
[ "$1" = "pico" ] &&
@@ -31,7 +32,7 @@ mkserprog()
"$sersrc" BOARD=$sertarget
x_ mkdir -p "bin/serprog_$1"
x_ mv "$serx" "bin/serprog_$1/serprog_$sertarget.${serx##*.}"
- done < "$TMPDIR/ser"
+ done < "$xbmktmp/ser"
[ "$XBMK_RELEASE" = "y" ] && mkrom_tarball "bin/serprog_$1"; :
}
@@ -115,7 +116,7 @@ mkcorebootbin()
{
[ "$target" = "$tree" ] && return 0
- tmprom="$TMPDIR/coreboot.rom"
+ tmprom="$xbmktmp/coreboot.rom"
$dry x_ cp "$srcdir/build/coreboot.rom" "$tmprom"
initmode="${defconfig##*/}"
@@ -201,8 +202,8 @@ add_grub()
_grubname="fallback/payload"
cbfs "$tmprom" "$grubelf" "$_grubname"
printf "set grub_scan_disk=\"%s\"\n" "$grub_scan_disk" \
- > "$TMPDIR/tmpcfg" || $err "$target: !insert scandisk"
- cbfs "$tmprom" "$TMPDIR/tmpcfg" scan.cfg raw
+ > "$xbmktmp/tmpcfg" || $err "$target: !insert scandisk"
+ cbfs "$tmprom" "$xbmktmp/tmpcfg" scan.cfg raw
[ "$initmode" != "normal" ] && [ "$displaymode" != "txtmode" ] && \
cbfs "$tmprom" "$grubdata/background/background1280x800.png" \
"background.png" raw; :
diff --git a/include/vendor.sh b/include/vendor.sh
index 239b0e52..c4e57069 100644
--- a/include/vendor.sh
+++ b/include/vendor.sh
@@ -42,17 +42,16 @@ vendor_download()
{
[ $# -gt 0 ] || $err "No argument given"
export PATH="$PATH:/sbin"
- board="$1"
- readcfg && readkconfig && bootstrap && getfiles; :
+ board="$1" && readcfg && readkconfig && bootstrap && getfiles; :
}
readkconfig()
{
- x_ rm -f "$TMPDIR/cbcfg"
+ x_ rm -f "$xbmktmp/cbcfg"
cbcfg="`check_defconfig "$boarddir"`" || for cbc in $cv; do
- grep "$cbc" "$cbcfg" 1>>"$TMPDIR/cbcfg" 2>/dev/null || :
+ grep "$cbc" "$cbcfg" 1>>"$xbmktmp/cbcfg" 2>/dev/null || :
done
- eval "`setcfg "$TMPDIR/cbcfg" 1`"
+ eval "`setcfg "$xbmktmp/cbcfg" 1`"
for c in $cvchk; do
eval "[ \"\${$c}\" = \"/dev/null\" ] && continue"