Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge commit '045db1657e870c721be490b411868f4181a12ced' into surf++
[simgrid.git] / buildtools / jenkins / run.sh
1 #!/bin/bash
2
3 WORKSPACE=$1
4 build_mode=$2
5
6
7 rm -rf $WORKSPACE/build
8
9 mkdir $WORKSPACE/build
10 cd $WORKSPACE/build
11
12 export PATH=./lib/:../../lib:$PATH
13
14 if test "$(uname -o)" = "Msys"
15 then 
16     
17     cmake -G "MSYS Makefiles" $WORKSPACE
18     #$NUMBER_OF_PROCESSORS should be already set on win
19     if [ -z "$NUMBER_OF_PROCESSORS" ]; then
20         NUMBER_OF_PROCESSORS=1
21     fi  
22
23     if [ $? -ne 0 ] ; then
24         echo "Failed to do the first cmake - Halting"
25         exit 1
26     fi
27
28     make dist
29
30     if [ $? -ne 0 ] ; then
31         echo "Failed to build dist - Halting"
32         exit 2
33     fi
34
35     cmake -G "MSYS Makefiles" -Denable_java=ON -Denable_model-checking=OFF -Denable_lua=OFF -Denable_compile_optimizations=ON  -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=OFF .
36
37     if [ $? -ne 0 ] ; then
38         echo "Failed to perform the Cmake for $build_mode - Halting"
39         exit 5
40     fi
41
42     make -j$NUMBER_OF_PROCESSORS
43
44     if [ $? -ne 0 ] ; then
45         echo "Build failure - Halting"
46         exit 5
47     fi
48
49     make nsis
50
51     if [ $? -ne 0 ] ; then
52         echo "Failure while generating the Windows executable - Halting"
53         exit 6
54     fi
55
56 else
57     NUMBER_OF_PROCESSORS=0
58     # Linux:
59     cpuinfo_file="/proc/cpuinfo"
60     if [ -f "${cpuinfo_file}" ]; then
61       NUMBER_OF_PROCESSORS=$(grep -c "processor.: " ${cpuinfo_file}) 
62     fi
63     # grep returns 0 or cpuinfo not found
64     if [ $NUMBER_OF_PROCESSORS = 0 ]; then
65       NUMBER_OF_PROCESSORS=1
66     fi
67
68     cmake $WORKSPACE
69
70     if [ $? -ne 0 ] ; then
71         echo "Failed to do the first cmake - Halting"
72         exit 1
73     fi
74
75     rm Simgrid*.tar.gz
76     make dist
77
78     if [ $? -ne 0 ] ; then
79         echo "Failed to build dist - Halting"
80         exit 2
81     fi
82
83     tar xzf `cat VERSION`.tar.gz
84
85     if [ $? -ne 0 ] ; then
86         echo "Failed to extract the generated tgz - Halting"
87         exit 3
88     fi
89
90     cd `cat VERSION`
91
92     if [ $? -ne 0 ] ; then
93         echo "Path `cat VERSION` cannot be found - Halting"
94         exit 4
95     fi
96
97     if [ "$build_mode" = "Debug" ]
98     then
99     cmake -Denable_coverage=ON -Denable_java=ON -Denable_model-checking=OFF -Denable_lua=ON -Denable_compile_optimizations=ON  -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=ON .
100     fi
101
102     if [ "$build_mode" = "ModelChecker" ]
103     then
104     cmake -Denable_coverage=ON -Denable_java=ON -Denable_smpi=ON -Denable_model-checking=ON -Denable_lua=ON -Denable_compile_optimizations=OFF -Denable_compile_warnings=ON .
105     fi
106
107     if [ "$build_mode" = "DynamicAnalysis" ]
108     then
109     cmake -Denable_lua=OFF -Denable_java=ON -Denable_tracing=ON -Denable_smpi=ON -Denable_compile_optimizations=OFF -Denable_compile_warnings=ON -Denable_lib_static=OFF -Denable_model-checking=OFF -Denable_latency_bound_tracking=OFF -Denable_gtnets=OFF -Denable_jedule=OFF -Denable_mallocators=OFF -Denable_memcheck=ON .
110     fi
111
112     if [ $? -ne 0 ] ; then
113         echo "Failed to perform the Cmake for $build_mode - Halting"
114         exit 5
115     fi
116
117     make -j$NUMBER_OF_PROCESSORS
118
119     if [ $? -ne 0 ] ; then
120         echo "Build failure - Halting"
121         exit 6
122     fi
123
124 fi
125
126
127 echo "running tests with $NUMBER_OF_PROCESSORS processors"
128
129 ctest -T test --no-compress-output  --timeout 100 -j$NUMBER_OF_PROCESSORS || true
130 if [ -f Testing/TAG ] ; then
131    xsltproc $WORKSPACE/buildtools/jenkins/ctest2junit.xsl -o "$WORKSPACE/CTestResults.xml" Testing/`head -n 1 < Testing/TAG`/Test.xml
132 fi
133
134 ctest -D ContinuousStart
135 ctest -D ContinuousConfigure
136 ctest -D ContinuousBuild
137 ctest -D ContinuousTest
138 ctest -D ContinuousSubmit
139
140 rm -rf `cat VERSION`