From 4f01dc704a1ed0e18fc0efc1500e61b4bc41b0e6 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sat, 4 Oct 2025 06:13:15 +0100 Subject: xbmk: remove even more eval statements in one or two cases, the use of eval is retained, but modified so as to be safer. Signed-off-by: Leah Rowe --- include/init.sh | 42 ++++++++++++++++++++++++++++++++---------- 1 file changed, 32 insertions(+), 10 deletions(-) (limited to 'include/init.sh') diff --git a/include/init.sh b/include/init.sh index 90d7de80..03e33e74 100644 --- a/include/init.sh +++ b/include/init.sh @@ -12,12 +12,28 @@ projectname="libreboot" projectsite="https://libreboot.org/" if [ -z "${PATH+x}" ]; then -export PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" + export PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" fi -eval "`setvars "" board reinstall versiondate aur_notice configdir xbmkpath \ - datadir version xbmkpwd relname xbmkpwd xbtmp python pyver xbmklock \ - cvxbmk cvchk is_child basetmp`" +board="" +reinstall="" +version="" +versiondate="" +aur_notice="" +configdir="" +xbmkpath="" +datadir="" +xbmkpwd="" +relname="" +xbmkpwd="" +xbtmp="" +python="" +pyver="" +xbmklock="" +cvxbmk="" +cvchk="" +is_child="" +basetmp="" xbmk_init() { @@ -59,7 +75,10 @@ xbmkpkg() . "config/dependencies/$2" || \ err "Can't read 'config/dependencies/$2'" "xbmkpkg" "$@" - chkvars pkg_add pkglist + if [ -z "$pkg_add" ] || [ -z "$pkglist" ]; then + err "pkg_add/pkglist not both set" "xbmkpkg" "$@" + fi + x_ $pkg_add $pkglist if [ -n "$aur_notice" ]; then @@ -78,11 +97,11 @@ xbmk_get_version() err "can't read versiondate" xbmk_get_version "$@" fi - if [ -f ".version" ]; then - chkvars version + if [ -f ".version" ] && [ -z "$version" ]; then + err "version not set" "xbmk_get_version" "$@" fi - if [ -f ".versiondate" ]; then - chkvars versiondate + if [ -f ".versiondate" ] && [ -z "$versiondate" ]; then + err "versiondate not set" "xbmk_get_version" "$@" fi if [ ! -e ".git" ] && [ ! -f ".version" ]; then @@ -281,7 +300,10 @@ xbmk_set_version() --pretty='%ct' HEAD)" || versiondate="$versiondate_" fi - chkvars version versiondate + if [ -z "$version" ] || [ -z "$versiondate" ]; then + err "version and/or versiondate unset" "xbmk_set_version" "$@" + fi + update_xbmkver "." relname="$projectname-$version" -- cgit v1.2.1