release_gammalib.sh
2.7 KB
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#! /bin/bash -f
# Set parameters
basedir=$(pwd)
installdir=$(pwd)/build
makedoc="no"
echo "Checkout latest GammaLib"
rm -rf gammalib
#cvs -Q -d /home/cvs export -N -r HEAD "gammalib"
#git clone https://cta-git.irap.omp.eu/gammalib
git clone -b release https://cta-git.irap.omp.eu/gammalib
rm -rf gammalib/.git
# Extract version number
version=`cat gammalib/configure.ac | grep 'AC_INIT' | awk -F"[" '{print $3}' | sed 's/],//' | sed 's/\./ /g'`
version=`printf "%2.2d-%2.2d-%2.2d" $version`
echo "GammaLib version: "$version
# Set source directory
sourcedir=gammalib-$version
rm -rf $sourcedir
mv gammalib $sourcedir
# Create Python wrappers using SWIG. We need here a quite complicated kluge to get this done
# as the Makefile in pyext does not exist (and we don't want that it exists in the distro).
# We thus make a copy of gammalib, create the Makefile there, call 'make swig' in pyext,
# and copy over the wrappers into the gammalib distro
echo "Create Python wrappers using SWIG (making SWIG obsolete for installation)"
swig -version
tmpdir=$basedir/tmp_for_swig
rm -rf $tmpdir
cp -r $sourcedir $tmpdir
cd $tmpdir
./autogen.sh
./configure
cd pyext
make swig
cd $basedir
cp -r $tmpdir/pyext/gammalib $sourcedir/pyext
rm -rf $tmpdir
echo "Create Makefile.in and configure scripts"
cd $sourcedir
./autogen.sh
rm -f gammalib.sh
rm -rf dev
rm -rf autom4te.cache
cd $basedir
# Create Doxygen documentation
if [ "x$makedoc" == "xyes" ] ; then
echo "Create doxygen documentation"
cd $sourcedir/doc
doxygen Doxyfile
cd latex
make
make
dvips -o refman.ps refman
ps2pdf refman.ps
cd $basedir
fi
# Create LaTeX documentation
echo "Create LaTeX documentation"
cd $sourcedir/doc
#
cd dev/inst
latex gammalib_inst.tex
dvips gammalib_inst.dvi -o gammalib_inst.ps
ps2pdf gammalib_inst.ps
cd ../..
mv dev/inst/gammalib_inst.pdf .
#
cd dev/maths
latex gammalib_maths.tex
dvips gammalib_maths.dvi -o gammalib_maths.ps
ps2pdf gammalib_maths.ps
cd ../..
mv dev/maths/gammalib_maths.pdf .
#
cd dev/sdd
latex gammalib_sdd.tex
dvips gammalib_sdd.dvi -o gammalib_sdd.ps
ps2pdf gammalib_sdd.ps
cd ../..
mv dev/sdd/gammalib_sdd.pdf .
#
cd dev/srs
latex gammalib_srs.tex
dvips gammalib_srs.dvi -o gammalib_srs.ps
ps2pdf gammalib_srs.ps
cd ../..
mv dev/srs/gammalib_srs.pdf .
#
rm -rf dev
cd $basedir
# Set permissions
echo "Make files read/write"
chmod -R u+rw $sourcedir
# Create tarball
echo "Create tarball"
tar cvf - $sourcedir > $sourcedir.tar
rm -f $sourcedir.tar.gz
gzip $sourcedir.tar
#exit 0
# Configure GammaLib
echo "Configure GammaLib"
cd $sourcedir
./configure --prefix=$installdir
# Build GammaLib
echo "Build GammaLib"
make -j10
# Check GammaLib
echo "Check GammaLib"
make check
# Install GammaLib
echo "Install GammaLib"
make install