1*8585484eSchristos#! /bin/sh 2*8585484eSchristos 3*8585484eSchristos# possible usage: $0 [-f] [version.m4] [version.def] 4*8585484eSchristos# 5*8585484eSchristos# -f would be 'force the update' 6*8585484eSchristos 7*8585484eSchristosforce=0 8*8585484eSchristosoutputs= 9*8585484eSchristosfor i in $* 10*8585484eSchristosdo 11*8585484eSchristos case "$i" in 12*8585484eSchristos -f) 13*8585484eSchristos force=1 14*8585484eSchristos ;; 15*8585484eSchristos *version.m4) 16*8585484eSchristos outputs="m4/version.m4 $outputs" 17*8585484eSchristos ;; 18*8585484eSchristos *version.def) 19*8585484eSchristos outputs="include/version.def $outputs" 20*8585484eSchristos ;; 21*8585484eSchristos *version.texi) 22*8585484eSchristos outputs="include/version.texi $outputs" 23*8585484eSchristos ;; 24*8585484eSchristos *) echo "Unrecognized option: $i" 25*8585484eSchristos exit 1 26*8585484eSchristos ;; 27*8585484eSchristos esac 28*8585484eSchristosdone 29*8585484eSchristos 30*8585484eSchristoscase "$outputs" in 31*8585484eSchristos '') outputs="m4/version.m4 include/version.def include/version.texi" ;; 32*8585484eSchristosesac 33*8585484eSchristos 34*8585484eSchristosset -e 35*8585484eSchristos 36*8585484eSchristos. ../packageinfo.sh 37*8585484eSchristos 38*8585484eSchristosdversion=`../scripts/build/VersionName -p ../packageinfo.sh` 39*8585484eSchristos 40*8585484eSchristosset +e 41*8585484eSchristos 42*8585484eSchristos# Create intermediate files in $TEMPDIR defaulting it to /tmp 43*8585484eSchristos# if not set. This avoids races when multiple builds run in 44*8585484eSchristos# parallel on shared source. 45*8585484eSchristos 46*8585484eSchristosTEMPDIR=${TEMPDIR=/tmp} 47*8585484eSchristos 48*8585484eSchristoscase "$outputs" in 49*8585484eSchristos *version.m4*) 50*8585484eSchristos echo "m4_define([VERSION_NUMBER],[${dversion}])" > "${TEMPDIR}/version.m4+" 51*8585484eSchristos cmp -s "${TEMPDIR}/version.m4+" m4/version.m4 52*8585484eSchristos rc=$? 53*8585484eSchristos case "$force$rc" in 54*8585484eSchristos 00) 55*8585484eSchristos rm -f "${TEMPDIR}/version.m4+" 56*8585484eSchristos ;; 57*8585484eSchristos *) 58*8585484eSchristos mv "${TEMPDIR}/version.m4+" m4/version.m4 59*8585484eSchristos ;; 60*8585484eSchristos esac 61*8585484eSchristos ;; 62*8585484eSchristosesac 63*8585484eSchristos 64*8585484eSchristoscase "$outputs" in 65*8585484eSchristos *version.def*) 66*8585484eSchristos echo "version = '${dversion}';" > "${TEMPDIR}/version.def+" 67*8585484eSchristos cmp -s "${TEMPDIR}/version.def+" include/version.def 68*8585484eSchristos rc=$? 69*8585484eSchristos case "$force$rc" in 70*8585484eSchristos 00) 71*8585484eSchristos rm -f "${TEMPDIR}/version.def+" 72*8585484eSchristos ;; 73*8585484eSchristos *) 74*8585484eSchristos mv "${TEMPDIR}/version.def+" include/version.def 75*8585484eSchristos ;; 76*8585484eSchristos esac 77*8585484eSchristos ;; 78*8585484eSchristosesac 79*8585484eSchristos 80*8585484eSchristoscase "$outputs" in 81*8585484eSchristos *version.texi*) 82*8585484eSchristos echo "@set UPDATED `date +'%d %B %Y'`" > "${TEMPDIR}/version.texi+" 83*8585484eSchristos echo "@set EDITION $dversion" >> "${TEMPDIR}/version.texi+" 84*8585484eSchristos echo "@set VERSION $dversion" >> "${TEMPDIR}/version.texi+" 85*8585484eSchristos cmp -s "${TEMPDIR}/version.texi+" include/version.texi 86*8585484eSchristos rc=$? 87*8585484eSchristos case "$force$rc" in 88*8585484eSchristos 00) 89*8585484eSchristos rm -f "${TEMPDIR}/version.texi+" 90*8585484eSchristos ;; 91*8585484eSchristos *) 92*8585484eSchristos mv "${TEMPDIR}/version.texi+" include/version.texi 93*8585484eSchristos ;; 94*8585484eSchristos esac 95*8585484eSchristos ;; 96*8585484eSchristosesac 97