2
1
Fork 0
mirror of https://git.savannah.gnu.org/git/gnuboot.git synced 2025-01-03 23:07:39 +01:00
gnuboot/resources/scripts/misc/versioncheck
John Doe acc57bda6d scripts: process git versions when lbmk is a worktree or submodule
git worktrees have plaintext .git files which contain the gitdir in their content.
2022-03-04 14:14:05 -05:00

43 lines
1.3 KiB
Bash
Executable file

#!/usr/bin/env bash
# Copyright (C) 2021 Leah Rowe <info@minifree.org>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
[ "x${DEBUG+set}" = 'xset' ] && set -v
set -u -e
version="version-unknown"
if [ -f version ]; then
version="$(cat version)"
fi
version_="${version}"
if [ -e ".git" ]; then
version="$(git describe --tags HEAD 2>&1)" \
|| version="git-$(git rev-parse HEAD 2>&1)" \
|| version="${version_}"
printf "%s\n" "${version}" > version
fi
versiondate="version-date-unknown"
if [ -f versiondate ]; then
versiondate="$(cat versiondate)"
fi
versiondate_="${versiondate}"
if [ -e ".git" ]; then
versiondate="$(git show --no-patch --no-notes --pretty='%ct' HEAD)" \
|| versiondate="${versiondate_}"
printf "%s\n" "${versiondate}" > versiondate
fi