blob: 167d0004eeb29732f9428c104fe5ec9adc7240b7 [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
Paul Bakker91180722013-11-05 11:28:32 +010057
58 [ $VERBOSE ] && echo "Bumping SOVERSION in library/Makefile"
59 sed -e "s/SONAME=libpolarssl.so.[0-9]\+/SONAME=libpolarssl.so.$SOVERSION/g" -e "s/DLEXT=so.[0-9]\+/DLEXT=so.$SOVERSION/g" < library/Makefile > tmp
60 mv tmp library/Makefile
Paul Bakker34558732012-11-26 17:18:12 +010061fi
62
63[ $VERBOSE ] && echo "Bumping VERSION in include/polarssl/version.h"
64read MAJOR MINOR PATCH <<<$(IFS="."; echo $VERSION)
65VERSION_NR="$( printf "0x%02X%02X%02X00" $MAJOR $MINOR $PATCH )"
66cat include/polarssl/version.h | \
67 sed -e "s/_VERSION_MAJOR .\+/_VERSION_MAJOR $MAJOR/" | \
68 sed -e "s/_VERSION_MINOR .\+/_VERSION_MINOR $MINOR/" | \
69 sed -e "s/_VERSION_PATCH .\+/_VERSION_PATCH $PATCH/" | \
70 sed -e "s/_VERSION_NUMBER .\+/_VERSION_NUMBER $VERSION_NR/" | \
71 sed -e "s/_VERSION_STRING .\+/_VERSION_STRING \"$VERSION\"/" | \
72 sed -e "s/_VERSION_STRING_FULL .\+/_VERSION_STRING_FULL \"PolarSSL $VERSION\"/" \
73 > tmp
74mv tmp include/polarssl/version.h
75
76[ $VERBOSE ] && echo "Bumping version in tests/suites/test_suite_version.data"
77sed -e "s/version:\".\+/version:\"$VERSION\"/g" < tests/suites/test_suite_version.data > tmp
78mv tmp tests/suites/test_suite_version.data
79
80[ $VERBOSE ] && echo "Bumping PROJECT_NAME in doxygen/polarssl.doxyfile and doxygen/input/doc_mainpage.h"
81for i in doxygen/polarssl.doxyfile doxygen/input/doc_mainpage.h;
82do
83 sed -e "s/PolarSSL v[0-9\.]\+/PolarSSL v$VERSION/g" < $i > tmp
84 mv tmp $i
85done
86