File tree Expand file tree Collapse file tree 6 files changed +28
-19
lines changed
Expand file tree Collapse file tree 6 files changed +28
-19
lines changed Original file line number Diff line number Diff line change @@ -16,7 +16,13 @@ cd "$(dirname "$0")/.."
1616
1717vmajor=$( grep ' kDeskTopVersionMajor =' src/config.inc | sed -e ' s/.* = //' )
1818vminor=$( grep ' kDeskTopVersionMinor =' src/config.inc | sed -e ' s/.* = //' )
19- vsuffix=$( grep ' define kDeskTopVersionSuffix' src/config.inc | cut -d' "' -f2)
19+
20+ gittag=" $( git describe --abbrev=0 --tags) "
21+ case " $gittag " in
22+ v* .* -* ) vsuffix=" -${gittag/#* -/ } " ;;
23+ * ) echo " Last tag is '$gittag '; manually tag as vM.M-alpha0" 1>&2 ; exit 1 ;;
24+ esac
25+
2026lang=$( grep ' define kBuildLang' src/config.inc | cut -d' "' -f2)
2127vtype=$( echo " $vsuffix " | sed -E -e ' s/^-//' -e ' s/[0-9]+$//' )
2228vrel=$( echo " $vsuffix " | sed -E -e ' s/[^0-9]*//' )
@@ -26,15 +32,13 @@ vrel=$(echo "$vsuffix" | sed -E -e 's/[^0-9]*//')
2632
2733vrel=` expr $vrel + 1`
2834
29- version=$( echo ${vmajor} .${vminor} -${vtype}${vrel} )
35+ version=" $( echo ${vmajor} .${vminor} -${vtype}${vrel} ) "
3036
3137# --------------------------------------------------
3238echo " Bumping to ${version} ..."
3339
3440bin/setlang " en"
3541
36- perl -pni -e " s/define kDeskTopVersionSuffix .*/define kDeskTopVersionSuffix \" -${vtype}${vrel} \" /" src/config.inc
37-
3842git commit -a -m " Bump version to ${version} " > /dev/null
3943git tag " v${version} " > /dev/null
4044
Original file line number Diff line number Diff line change 44cd " $( dirname " $0 " ) /.."
55source " bin/util.sh"
66
7- # ============================================================
8- # Tweak config
9-
10- git checkout src/config.inc
11- hash=$( git rev-parse --short HEAD)
12- perl -pni -e " s/define kDeskTopVersionSuffix .*/define kDeskTopVersionSuffix \" -build-${hash} \" /" src/config.inc
13-
147# ============================================================
158# Do a build and package
169
Original file line number Diff line number Diff line change 11#! /usr/bin/env bash
22
3- # Generate `out/date .inc` based off last commit
3+ # Generate `out/buildinfo .inc` based off last commit and tag
44
55set -e
66cd " $( dirname " $0 " ) /.."
7+ source " bin/util.sh"
78
8- lang=" $( egrep ' define kBuildLang' src/config.inc | cut -d' "' -f2) "
99resfile=" src/common/res/common.res.${lang} "
1010
1111yyyy=" $( git log -1 --format=" %ad" --date=format:%Y) "
@@ -15,13 +15,16 @@ dd="$(git log -1 --format="%ad" --date=format:%d)"
1515
1616month=" $( egrep " \bres_string_month_name_${mm} \b" " $resfile " | cut -d' "' -f2) "
1717order=" $( egrep " \bres_const_date_order\b" " $resfile " | cut -d' ' -f3) "
18-
1918if [ " $order " = " 0" ]; then
2019 date=" $month $dd , $yyyy "
2120else
2221 date=" $dd $month $yyyy "
2322fi
2423
24+ if [ " $supports_lowercase " != " 1" ]; then
25+ vsuffix=" $( echo " $vsuffix " | tr ' a-z' ' A-Z' ) "
26+ fi
27+
2528OUTDIR=" out"
2629
2730# Generate tmp file
@@ -31,6 +34,7 @@ kBuildYYYY = $yyyy
3134kBuildYY = $yy
3235kBuildMM = $mm
3336kBuildDD = $dd
37+ .define kDeskTopVersionSuffix "$vsuffix "
3438EOF
3539
3640# Only generate real file if it doesn't exist or changed
Original file line number Diff line number Diff line change @@ -17,7 +17,6 @@ perl -pni \
1717if [ " $supports_lowercase " != " 1" ]; then
1818 perl -pni \
1919 -e ' s/(?<=define kDeskTopProductName )"(.*)"/"\U$1\E"/;' \
20- -e ' s/(?<=define kDeskTopVersionSuffix )"(.*)"/"\U$1\E"/;' \
2120 src/config.inc
2221fi
2322
Original file line number Diff line number Diff line change @@ -73,9 +73,19 @@ fini_progress () {
7373# ============================================================
7474# Extract metadata for the build
7575
76+ lang=$( grep ' define kBuildLang' src/config.inc | cut -d' "' -f2)
77+ decoded_a=$( echo ' a' | bin/transcode.pl decode $lang )
78+ supports_lowercase=$( if [ " $decoded_a " == " a" ]; then echo 1; else echo 0; fi) ;
79+
7680vmajor=$( grep ' kDeskTopVersionMajor =' src/config.inc | sed -e ' s/.* = //' )
7781vminor=$( grep ' kDeskTopVersionMinor =' src/config.inc | sed -e ' s/.* = //' )
78- vsuffix=$( grep ' define kDeskTopVersionSuffix' src/config.inc | cut -d' "' -f2)
79- lang=$( grep ' define kBuildLang' src/config.inc | cut -d' "' -f2)
82+
83+ # vsuffix is like "-alpha123" (current tag), "-build-abc1234" (hash), "" (release)
84+ gittag=" $( git describe --tags --exact-match 2> /dev/null || true) "
85+ case " $gittag " in
86+ v* .* -* ) vsuffix=" -${gittag/#* -/ } " ;;
87+ v* .* ) vsuffix=" " ;;
88+ * ) vsuffix=" -build-$( git rev-parse --short HEAD) " ;;
89+ esac
90+
8091version=$( echo ${vmajor} .${vminor}${vsuffix} -${lang} )
81- supports_lowercase=$( grep ' define kBuildSupportsLowercase' src/config.inc | cut -d' ' -f3)
Original file line number Diff line number Diff line change 1515.define kDeskTopProductName "Apple II DeskTop"
1616kDeskTopVersionMajor = 1
1717kDeskTopVersionMinor = 6
18- .define kDeskTopVersionSuffix "-alpha0"
1918
2019.include "../out/buildinfo.inc"
2120
You can’t perform that action at this time.
0 commit comments