1#!/bin/sh
2#
3# libmusicxml project
4# version management tool
5#
6
7if [ $# -ne 1 ]
8then
9	echo "usage: version version_num"
10	echo "       version_num format: n.n"
11	exit 1
12fi
13
14
15ROOT=.
16VERSION=$1
17
18echo "moving version number to $VERSION"
19CMAKE=$ROOT/build/CMakeLists.txt
20echo " updating $CMAKE"
21sed "s/VERSION *[1-9]\.[0-9][0-9]+/VERSION $VERSION/" $CMAKE \
22	| sed "s/v\.[1-9]\.[0-9][0-9]+/v.$VERSION/" \
23	| sed "s/\"[1-9]\.[0-9][0-9]+\"/\"$VERSION\"/"  > TMP$$
24mv -f TMP$$ $CMAKE
25
26MAKE=$ROOT/build/Makefile
27echo " updating $MAKE"
28sed "s/VERSION *= *[1-9]\.[0-9][0-9]/VERSION = $VERSION/" $MAKE
29mv -f TMP$$ $MAKE
30
31DOXY=$ROOT/doc/Doxyfile
32echo " updating $DOXY  (regenerate doc)"
33sed "s/^\(PROJECT_NUMBER[ 	]*= *\)[0-9]*\.[0-9]*/\1$VERSION/" $DOXY  > TMP$$
34mv -f TMP$$ $DOXY
35
36PKG=$ROOT/packages/Makefile
37echo " updating $PKG"
38sed "s/\(VERSION *:= *\)[0-9]*\.[0-9]*/\1$VERSION/" $PKG > TMP$$
39mv -f TMP$$ $PKG
40
41NPM=$ROOT/javascript/npm/package.json
42echo " updating $NPM"
43sed "s/\(\"version\": \"\)[0-9]*\.[0-9]*\.[0-9]*/\1$VERSION/" $NPM > TMP$$
44mv -f TMP$$ $NPM
45
46echo "==> change manually info.plist, rc files in win32 folder and AndroiManifest"
47open -t $ROOT/src/elements/versions.cpp $ROOT/win32/libmusicxml/libmusicxml.rc
48
49exit 0
50