makerel 2.36 KB
Newer Older
1
#!/bin/bash
2
. bash_helper_functions
3

4
5
# If the first argument to this script is the word major then the 
# major version number is updated and the minor is set back to 0.
6
7
8
9
10
11
12
13

report_failure ()
{
    echo "  **** failed to complete **** "
    exit 1
}


14
./testenv_rel || report_failure
15
16
17
18



REVNUM_FILE=.logger_revnum
19
CHANGESET_ID=`git rev-parse HEAD`
20

21
22
rm -rf release || report_failure
mkdir release || report_failure
23
24
25
26


if [ "$1" = "major" ] 
    then
27
    MAJOR_NUM=`echo $MAJOR_NUM+1|bc`
28
29
    MINOR_NUM=0 
else 
30
    MINOR_NUM=`echo $MINOR_NUM+1|bc`
31
fi;
32
33
34
set_dlib_version MAJOR $MAJOR_NUM
set_dlib_version MINOR $MINOR_NUM
set_dlib_version PATCH 0 
35
36

RELEASE=${MAJOR_NUM}.${MINOR_NUM} 
37
# Commit changes to the version numbers so that the makedocs script will use them.
38
39
40
echo Create git tags and commit release
git commit -a -m "Created release v$RELEASE" || report_failure
git tag v$RELEASE || report_failure
41

42
./makedocs makerel || exit 1
43

44
echo $CHANGESET_ID > $REVNUM_FILE
45
set_dlib_version PATCH 99 
46
git commit -a -m "Record last changeset and set PATCH version to 99"
47

48
49
50
51
52

cd release || report_failure
RELDIR=`echo dlib-$RELEASE`
mkdir $RELDIR
cd $RELDIR || report_failure
53
cp -r ../../docs/cache/* . || report_failure
54

Davis King's avatar
Davis King committed
55
56
57
echo Version: $RELEASE >> README.md
echo "Date:    `date`" >> README.md
echo Mercurial Revision ID: $CHANGESET_ID >> README.md
58
59
60
61
62
63



WEBPAGE=`echo dlib_webpage-$RELEASE.tar`
SOURCE_ZIP=`echo $RELDIR.zip`
SOURCE_TAR=`echo $RELDIR.tar`
64
tar -C ../../docs/chm -cf - docs/ documentation.html | tar -xf - || report_failure
65
66
67
68
cd .. || report_failure

tar -cf $SOURCE_TAR $RELDIR  || report_failure
# flip everything to MS-DOS line endings 
69
70
#find $RELDIR -name "*.cpp" -or -name "*.h" -or -name "*.txt" -or -name "*.html" -or -name "*.py" | xargs flip -m
find $RELDIR -name "*.cpp" -or -name "*.h" -or -name "*.txt" -or -name "*.html" -or -name "*.py" | xargs unix2dos &> /dev/null 
71
72

zip -r9 $SOURCE_ZIP $RELDIR > /dev/null || report_failure
73
tar -C ../docs -cf $WEBPAGE web || report_failure
74
75
76
77
78
bzip2 $SOURCE_TAR || report_failure
bzip2 $WEBPAGE || report_failure

rm -rf $RELDIR

Davis King's avatar
Davis King committed
79
80
81
# Don't make the chm doc file since hhc.exe doesn't run in any copy of wine anymore :(
#wine ../docs/chm/htmlhelp/hhc.exe ../docs/chm/lib.hhp 
#mv ../docs/chm/help.chm dlib_documentation-$RELEASE.chm || report_failure
82

Davis King's avatar
Davis King committed
83
84

mkdir v$RELEASE
Davis King's avatar
Davis King committed
85
#mv dlib_documentation-$RELEASE.chm v$RELEASE
Davis King's avatar
Davis King committed
86
87
88
89
mv $SOURCE_TAR.bz2 v$RELEASE
mv $SOURCE_ZIP v$RELEASE


90
91