114 lines
3.2 KiB
Bash
114 lines
3.2 KiB
Bash
#!/bin/sh
|
|
##############################################################################
|
|
# Name: misc/scripts/inc_release
|
|
# Purpose: increments the release version number in all files mentioned in
|
|
# docs/tech/tn0011.txt
|
|
# Created: 2007-01-07
|
|
# Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org>
|
|
# Licence: wxWindows licence
|
|
##############################################################################
|
|
|
|
error() {
|
|
echo "$progname: $*" >&2
|
|
}
|
|
|
|
msg() {
|
|
echo "$progname: $*"
|
|
}
|
|
|
|
msgn() {
|
|
echo -n "$progname: $*"
|
|
}
|
|
|
|
msgc() {
|
|
echo "$*"
|
|
}
|
|
|
|
run_sed() {
|
|
filename=$1
|
|
shift
|
|
cmd=
|
|
while [ $# -gt 0 ]; do
|
|
cmd="$cmd-e \"$1\" "
|
|
shift
|
|
done
|
|
|
|
msgn " processing $filename ... "
|
|
eval "sed $cmd $filename" > $filename.$$
|
|
if cmp -s $filename $filename.$$; then
|
|
rm $filename.$$
|
|
msgc "unchanged"
|
|
else
|
|
mv $filename.$$ $filename
|
|
msgc "done"
|
|
fi
|
|
}
|
|
|
|
progname=`basename $0`
|
|
|
|
# we must be run from wx directory
|
|
if [ ! -f wxwin.m4 ]; then
|
|
error "must be ran from root wx directory"
|
|
exit 1
|
|
fi
|
|
|
|
# exit on any error
|
|
set -e
|
|
|
|
# the primary source of information is wx/version.h
|
|
ver_string=`grep '#define wxVERSION_STRING ' include/wx/version.h | sed 's/^.*"wxWidgets \(.*\)")/\1/'`
|
|
ver_major=`echo $ver_string | sed 's/\([0-9]\{1,\}\)\..*/\1/'`
|
|
ver_minor=`echo $ver_string | sed 's/.*\.\([0-9]\{1,\}\)\..*/\1/'`
|
|
ver_release=`echo $ver_string | sed 's/.*\.\([0-9]\{1,\}\)$/\1/'`
|
|
|
|
msg "Original version is $ver_major.$ver_minor.$ver_release"
|
|
|
|
ver_release_new=$(($ver_release + 1))
|
|
ver_string_new=$ver_major.$ver_minor.$ver_release_new
|
|
|
|
msg "Updating version to $ver_string_new"
|
|
|
|
ver_for_sed="$ver_major\.$ver_minor\.$ver_release"
|
|
|
|
run_sed configure.in \
|
|
"/^AC_INIT/s/$ver_for_sed/$ver_string_new/" \
|
|
"s/^wx_release_number=$ver_release/wx_release_number=$ver_release_new/" \
|
|
"s/^wx_subrelease_number=.*$/wx_subrelease_number=0/"
|
|
|
|
run_sed build/osx/wxvers.xcconfig \
|
|
"/DYLIB_.* = /s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed docs/readme.txt \
|
|
"/wxWidgets /s/$ver_for_sed/$ver_string_new/" \
|
|
"/\//s/$ver_for_sed/$ver_string_new/" \
|
|
"/naming: while/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed docs/doxygen/Doxyfile \
|
|
"/^PROJECT_NUMBER/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed docs/doxygen/latexdocstart.inc \
|
|
"/\\large Version/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed include/wx/version.h \
|
|
"s/^\(#define wxRELEASE_NUMBER *\) $ver_release$/\1 $ver_release_new/" \
|
|
"s/^\(#define wxSUBRELEASE_NUMBER *\) [0-9]\{1,\}$/\1 0/" \
|
|
"/^#define wxVERSION_STRING/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed include/wx/osx/config_xcode.h \
|
|
"/^#define PACKAGE/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed samples/Info.plist \
|
|
"/version/s/$ver_for_sed/$ver_string_new/" \
|
|
"/<string>/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed samples/minimal/Info_carbon.plist \
|
|
"/<string>/s/$ver_for_sed/$ver_string_new/"
|
|
run_sed samples/minimal/Info_cocoa.plist \
|
|
"/<string>/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
run_sed samples/docview/Info.plist \
|
|
"/versionon/s/$ver_for_sed/$ver_string_new/" \
|
|
"/<string>/s/$ver_for_sed/$ver_string_new/"
|
|
|
|
msg "Don't forget to change the C:R:A triplet in build/bakefiles/version.bkl now!"
|