source: git-version.sh@ 49661ec

11.1 11.2 11.3 12.0 12.1 12.2 gimp3 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/for-12.3 xry111/intltool xry111/llvm18 xry111/soup3 xry111/spidermonkey128 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 49661ec was 49661ec, checked in by Xi Ruoyao <xry111@…>, 3 years ago

git-version: correct the workaround without git

  • Property mode set to 100755
File size: 1.8 KB
Line 
1#!/bin/sh
2
3if ! git status > /dev/null; then
4 # Either it's not a git repository, or git is unavaliable.
5 # Just workaround.
6 echo "<!ENTITY day \"??\">" > version.ent
7 echo "<!ENTITY month \"??\">" >> version.ent
8 echo "<!ENTITY year \"????\">" >> version.ent
9 echo "<!ENTITY copyrightdate \"1999-2021\">" >> version.ent
10 echo "<!ENTITY version \"unknown\">" >> version.ent
11 echo "<!ENTITY releasedate \"unknown\">" >> version.ent
12 echo "<!ENTITY pubdate \"unknown\">" >> version.ent
13 exit 0
14fi
15
16export LC_ALL=en_US.utf8
17export TZ=US/Pacific
18
19commit_date=$(git show -s --format=format:"%cd" --date=local)
20short_date=$(date --date "$commit_date" "+%Y-%m-%d")
21
22year=$(date --date "$commit_date" "+%Y")
23month=$(date --date "$commit_date" "+%B")
24month_digit=$(date --date "$commit_date" "+%m")
25day_digit=$(date --date "$commit_date" "+%d")
26day=$(echo $day_digit | sed 's/^0//')
27
28case $day in
29 "1" | "21" | "31" ) suffix="st";;
30 "2" | "22" ) suffix="nd";;
31 "3" | "23" ) suffix="rd";;
32 * ) suffix="th";;
33esac
34
35full_date="$month $day$suffix, $year"
36
37sha="$(git describe --abbrev=1)"
38version=$(echo "$sha" | sed 's/-g[^-]*$//')
39
40if [ "$(git diff HEAD | wc -l)" != "0" ]; then
41 version="$version+"
42fi
43
44echo "<!ENTITY day \"$day_digit\">" > version.ent
45echo "<!ENTITY month \"$month_digit\">" >> version.ent
46echo "<!ENTITY year \"$year\">" >> version.ent
47echo "<!ENTITY copyrightdate \"2001-$year\">" >> version.ent
48echo "<!ENTITY version \"$version\">" >> version.ent
49echo "<!ENTITY releasedate \"$full_date\">" >> version.ent
50echo "<!ENTITY pubdate \"$short_date\">" >> version.ent
Note: See TracBrowser for help on using the repository browser.