Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
protect against failed get
[simgrid.git] / tools / jenkins / Flags.sh
index 57b4f27..40ac301 100755 (executable)
@@ -1,7 +1,15 @@
-#!/bin/sh
+#!/usr/bin/env sh
 
 set -e
 
+if [ $# -lt 4 ]
+  then
+    echo "Needs 4 arguments : JAVA MC SMPI DEBUG"
+    exit -1
+fi
+
+
+
 die() {
     echo "$@"
     exit 1
@@ -26,7 +34,7 @@ onoff() {
   fi
 }
 
-### Cleanup previous runs
+### Cleanup previous runs
 
 ! [ -z "$WORKSPACE" ] || die "No WORKSPACE"
 [ -d "$WORKSPACE" ] || die "WORKSPACE ($WORKSPACE) does not exist"
@@ -42,32 +50,46 @@ NUMPROC="$(nproc)" || NUMPROC=1
 
 cd $WORKSPACE/build
 
-NSTEPS=16
-STEP=1
+#we can't just receive ON or OFF as values as display is bad in the resulting jenkins matrix
 
-for buildjava in ON OFF
-do
-  for builddebug in ON OFF
-  do
-    for buildsmpi in ON OFF
-    do
-      for buildmc in ON OFF
-      do
-        echo "Step ${STEP}/${NSTEPS} - Building with java=${buildjava}, debug=${builddebug}, SMPI=${buildsmpi}, MC=${buildmc}"
-        echo "Step ${STEP}/${NSTEPS} - Building with java=${buildjava}, debug=${builddebug}, SMPI=${buildsmpi}, MC=${buildmc}" > $WORKSPACE/buildstep
-        cmake -Denable_documentation=OFF -Denable_lua=ON -Denable_java=${buildjava} \
-              -Denable_compile_optimizations=OFF -Denable_compile_warnings=ON \
-              -Denable_jedule=ON -Denable_mallocators=ON -Denable_debug=${builddebug} \
-              -Denable_smpi=${buildsmpi} -Denable_smpi_MPICH3_testsuite=${buildsmpi} -Denable_model-checking=${buildmc} \
-              -Denable_memcheck=OFF -Denable_memcheck_xml=OFF -Denable_smpi_ISP_testsuite=OFF \
-              -Denable_ns3=$(onoff test "$buildmc" != "ON") -Denable_coverage=OFF $WORKSPACE
-        make -j$NUMPROC
-        make clean
-        STEP=$((${STEP}+1))
-      done
-    done
-  done
-done 
+if [ $1 = "JAVA" ]
+then
+  buildjava="ON"
+else
+  buildjava="OFF"
+fi
+
+if [ $2 = "MC" ]
+then
+  buildmc="ON"
+else
+  buildmc="OFF"
+fi
+
+if [ $3 = "SMPI" ]
+then
+  buildsmpi="ON"
+else
+  buildsmpi="OFF"
+fi
+
+if [ $4 = "DEBUG" ]
+then
+  builddebug="ON"
+else
+  builddebug="OFF"
+fi
+
+
+echo "Step ${STEP}/${NSTEPS} - Building with java=${buildjava}, debug=${builddebug}, SMPI=${buildsmpi}, MC=${buildmc}"
+cmake -Denable_documentation=OFF -Denable_lua=ON -Denable_java=${buildjava} \
+      -Denable_compile_optimizations=OFF -Denable_compile_warnings=ON \
+      -Denable_jedule=ON -Denable_mallocators=ON -Denable_debug=${builddebug} \
+      -Denable_smpi=${buildsmpi} -Denable_smpi_MPICH3_testsuite=${buildsmpi} -Denable_model-checking=${buildmc} \
+      -Denable_memcheck=OFF -Denable_memcheck_xml=OFF -Denable_smpi_ISP_testsuite=OFF \
+      -Denable_ns3=$(onoff test "$buildmc" != "ON") -Denable_coverage=OFF $WORKSPACE
+
+make -j$NUMPROC
+make clean
 
-echo "All builds finished cleanly" > $WORKSPACE/buildstep