X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/611d822b02f836d7abe031cced6adc4281ef4356..56ada3046889443aed9c69154cf10062873af785:/BuildSimGrid.sh diff --git a/BuildSimGrid.sh b/BuildSimGrid.sh index b0a2f39686..68432faee8 100755 --- a/BuildSimGrid.sh +++ b/BuildSimGrid.sh @@ -1,11 +1,38 @@ #!/usr/bin/env sh # # This little script rebuilds and runs the SimGrid archive in parallel, extracting a log -# This is almost an internal script, but others may find this useful +# This is almost a personal script, but others may find this useful # -# Copyright (c) 2017-2018 The SimGrid Team. Licence: LGPL of WDFPL, as you want. +# Copyright (c) 2017-2022 The SimGrid Team. Licence: LGPL of WDFPL, as you want. + +if [ ! -e Makefile ] && [ ! -e build.ninja ]; then + if [ -e build/default/Makefile ] ; then + cd build/default + else + echo "Please configure SimGrid before building it:" + echo " ccmake ." + exit 1 + fi +fi + +target=tests +ncores=$(grep -c processor /proc/cpuinfo) + +install_path=$(sed -n 's/^CMAKE_INSTALL_PREFIX:PATH=//p' CMakeCache.txt) +if [ -e ${install_path} ] && [ -d ${install_path} ] && [ -x ${install_path} ] && [ -w ${install_path} ] ; then + target=install +fi + +if [ -e build.ninja ] ; then + builder="ninja" +else + builder="make" +fi ( - (nice make -j4 || make) && nice ctest -j4 --output-on-failure ; date + echo "install_path: ${install_path}" + echo "Target: ${target}" + echo "Cores: ${ncores}" + (nice ${builder} -j${ncores} ${target} tests || make ${target} tests) && nice ctest -j${ncores} --output-on-failure ; date ) 2>&1 | tee BuildSimGrid.sh.log -exit 0 +