summaryrefslogtreecommitdiff
path: root/include/err.sh
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2023-10-04 08:06:10 +0100
committerLeah Rowe <leah@libreboot.org>2023-10-04 08:06:10 +0100
commitfbd464b4f795b82990edad4901f6812b10ca3260 (patch)
tree6c39e3222dbdd67875720d84900cbc1348c2e42b /include/err.sh
parente638c3e41135292a7398e4c85a2dfd037be70ce3 (diff)
include/err.sh: checkgit,checkversion
call these as functions, instead of executing scripts Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'include/err.sh')
-rwxr-xr-xinclude/err.sh31
1 files changed, 31 insertions, 0 deletions
diff --git a/include/err.sh b/include/err.sh
index 10e5db9b..ac27d636 100755
--- a/include/err.sh
+++ b/include/err.sh
@@ -8,6 +8,37 @@ xx_() {
[ $# -lt 1 ] || ${@} || fail "non-zero exit status: ${@}"
}
+check_git()
+{
+ which git 1>/dev/null 2>/dev/null || \
+ err "git not installed. please install git-scm."
+ git config --global user.name 1>/dev/null 2>/dev/null || \
+ err "git config --global user.name \"John Doe\""
+ git config --global user.email 1>/dev/null 2>/dev/null || \
+ err "git config --global user.email \"john.doe@example.com\""
+}
+
+check_project()
+{
+ read project < projectname
+
+ [ -f version ] && read version < version
+ version_="${version}"
+ [ ! -e ".git" ] || version="$(git describe --tags HEAD 2>&1)" || \
+ version="git-$(git rev-parse HEAD 2>&1)" || version="${version_}"
+
+ [ -f versiondate ] && read versiondate < versiondate
+ versiondate_="${versiondate}"
+ [ ! -e ".git" ] || versiondate="$(git show --no-patch --no-notes \
+ --pretty='%ct' HEAD)" || versiondate="${versiondate_}"
+
+ [ -z ${versiondate} ] && err "Unknown version date"
+ [ -z ${version} ] && err "Unknown version"
+
+ printf "%s\n" "${version}" > version
+ printf "%s\n" "${versiondate}" > versiondate
+}
+
setvars()
{
_setvars=""