blob: 1e3bcea548469c5e10190d6ffcc5243f05ec80ae [file] [log] [blame]
Paul Bakker34558732012-11-26 17:18:12 +01001#!/bin/bash
2
3VERSION=""
4SOVERSION=""
5
6# Parse arguments
7#
8until [ -z "$1" ]
9do
10 case "$1" in
11 --version)
12 # Version to use
13 shift
14 VERSION=$1
15 ;;
16 --soversion)
17 shift
18 SOVERSION=$1
19 ;;
20 -v|--verbose)
21 # Be verbose
22 VERBOSE="1"
23 ;;
24 -h|--help)
25 # print help
26 echo "Usage: $0"
27 echo -e " -h|--help\t\t\tPrint this help."
28 echo -e " --version <version>\tVersion to bump to."
Paul Bakkereaed9df2013-09-18 21:19:35 +020029 echo -e " --soversion <version>\tSO version to bump to."
Paul Bakker34558732012-11-26 17:18:12 +010030 echo -e " -v|--verbose\t\tVerbose."
31 exit 1
32 ;;
33 *)
34 # print error
35 echo "Unknown argument: '$1'"
36 exit 1
37 ;;
38 esac
39 shift
40done
41
42if [ "X" = "X$VERSION" ];
43then
44 echo "No version specified. Unable to continue."
45 exit 1
46fi
47
48[ $VERBOSE ] && echo "Bumping VERSION in library/CMakeLists.txt"
49sed -e "s/ VERSION [0-9.]\+/ VERSION $VERSION/g" < library/CMakeLists.txt > tmp
50mv tmp library/CMakeLists.txt
51
52if [ "X" != "X$SOVERSION" ];
53then
54 [ $VERBOSE ] && echo "Bumping SOVERSION in library/CMakeLists.txt"
55 sed -e "s/ SOVERSION [0-9]\+/ SOVERSION $SOVERSION/g" < library/CMakeLists.txt > tmp
56 mv tmp library/CMakeLists.txt
57fi
58
59[ $VERBOSE ] && echo "Bumping VERSION in include/polarssl/version.h"
60read MAJOR MINOR PATCH <<<$(IFS="."; echo $VERSION)
61VERSION_NR="$( printf "0x%02X%02X%02X00" $MAJOR $MINOR $PATCH )"
62cat include/polarssl/version.h | \
63 sed -e "s/_VERSION_MAJOR .\+/_VERSION_MAJOR $MAJOR/" | \
64 sed -e "s/_VERSION_MINOR .\+/_VERSION_MINOR $MINOR/" | \
65 sed -e "s/_VERSION_PATCH .\+/_VERSION_PATCH $PATCH/" | \
66 sed -e "s/_VERSION_NUMBER .\+/_VERSION_NUMBER $VERSION_NR/" | \
67 sed -e "s/_VERSION_STRING .\+/_VERSION_STRING \"$VERSION\"/" | \
68 sed -e "s/_VERSION_STRING_FULL .\+/_VERSION_STRING_FULL \"PolarSSL $VERSION\"/" \
69 > tmp
70mv tmp include/polarssl/version.h
71
72[ $VERBOSE ] && echo "Bumping version in tests/suites/test_suite_version.data"
73sed -e "s/version:\".\+/version:\"$VERSION\"/g" < tests/suites/test_suite_version.data > tmp
74mv tmp tests/suites/test_suite_version.data
75
76[ $VERBOSE ] && echo "Bumping PROJECT_NAME in doxygen/polarssl.doxyfile and doxygen/input/doc_mainpage.h"
77for i in doxygen/polarssl.doxyfile doxygen/input/doc_mainpage.h;
78do
79 sed -e "s/PolarSSL v[0-9\.]\+/PolarSSL v$VERSION/g" < $i > tmp
80 mv tmp $i
81done
82