1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
#!/bin/bash
#
# Script to update all version numbers in SoPlex
#
# USAGE: ./scripts/updateversion.sh [<major> <minor> <patch>]"
#
if [[ $1 == "-a" ]]
then
perl -i -pe 's/#define SOPLEX_APIVERSION \K(\d+)/$1 + 1/e' src/soplex/spxdefines.h
echo "updated API version:"
grep SOPLEX_APIVERSION src/soplex/spxdefines.h
elif [[ $# -eq 4 ]]
then
sed -i "s/^VERSION.*/VERSION := $1.$2.$3.$4/" Makefile
sed -i "s/^ \* @version.*/ \* @version $1.$2.$3.$4/" doc/xternal.cpp
sed -i "s/^VERSION=.*/VERSION=\"$1.$2.$3.$4\"/" scripts/makedist.sh
sed -i "s/^#define SOPLEX_VERSION.*/#define SOPLEX_VERSION $1$2$3/" src/soplex/spxdefines.h
sed -i "s/^#define SOPLEX_SUBVERSION.*/#define SOPLEX_SUBVERSION $4/" src/soplex/spxdefines.h
sed -i "s/set(SOPLEX_VERSION_MAJOR.*/set(SOPLEX_VERSION_MAJOR $1)/" CMakeLists.txt
sed -i "s/set(SOPLEX_VERSION_MINOR.*/set(SOPLEX_VERSION_MINOR $2)/" CMakeLists.txt
sed -i "s/set(SOPLEX_VERSION_PATCH.*/set(SOPLEX_VERSION_PATCH $3)/" CMakeLists.txt
sed -i "s/set(SOPLEX_VERSION_SUB.*/set(SOPLEX_VERSION_SUB $4)/" CMakeLists.txt
echo "new version:"
grep -e SOPLEX_VERSION -e SOPLEX_SUBVERSION -e SOPLEX_APIVERSION src/soplex/spxdefines.h
grep "set(SOPLEX_VERSION" CMakeLists.txt
elif [[ $# -eq 3 ]]
then
sed -i "s/^VERSION.*/VERSION := $1.$2.$3/" Makefile
sed -i "s/^ \* @version.*/ \* @version $1.$2.$3/" doc/xternal.cpp
sed -i "s/^VERSION=.*/VERSION=\"$1.$2.$3\"/" scripts/makedist.sh
sed -i "s/^#define SOPLEX_VERSION.*/#define SOPLEX_VERSION $1$2$3/" src/soplex/spxdefines.h
sed -i "s/^#define SOPLEX_SUBVERSION.*/#define SOPLEX_SUBVERSION 0/" src/soplex/spxdefines.h
sed -i "s/set(SOPLEX_VERSION_MAJOR.*/set(SOPLEX_VERSION_MAJOR $1)/" CMakeLists.txt
sed -i "s/set(SOPLEX_VERSION_MINOR.*/set(SOPLEX_VERSION_MINOR $2)/" CMakeLists.txt
sed -i "s/set(SOPLEX_VERSION_PATCH.*/set(SOPLEX_VERSION_PATCH $3)/" CMakeLists.txt
sed -i "s/set(SOPLEX_VERSION_SUB.*/set(SOPLEX_VERSION_SUB 0)/" CMakeLists.txt
echo "new version:"
grep -e SOPLEX_VERSION -e SOPLEX_SUBVERSION -e SOPLEX_APIVERSION src/soplex/spxdefines.h
grep "set(SOPLEX_VERSION" CMakeLists.txt
else
echo "usage:"
echo ""
echo "$0 <major> <minor> <patch> [<sub>]"
echo " -- update all version numbers to the specified one"
echo ""
echo "$0 -a"
echo " -- only increase API version"
echo ""
echo "current version (from spxdefines.h): "
grep -e SOPLEX_VERSION -e SOPLEX_SUBVERSION -e SOPLEX_APIVERSION src/soplex/spxdefines.h
exit 1;
fi
|