Skip to content
Snippets Groups Projects
Select Git revision
  • compilation2022apr
  • master default protected
  • ISEI_3_5_1
  • VERSION_3_9-alba
  • VERSION_3_9-Indus2
  • Jianfeng
  • VERSION-3_10
  • VERSION-3_9_1
  • VERSION-3_9_alba
  • VERSION-3_9_Indus2
  • VERSION-3_9
  • VERSION-3_8
  • VERSION-3_7
  • ISEI_3_5_1-PATCH_2
  • ISEI_3_5_1-PATCH_1
  • PROD_3_5_1
  • VERSION_3_6prerelease2
  • VERSION_3_6prerelease
  • VERSION-3_5
  • tracy
20 results

make_for_tracy3.sh

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    make_for_tracy3.sh 5.15 KiB
    #!/bin/bash
    
    #===================================================
    # script to compile non-parallel version tracy
    #===================================================
    
    
    # not sh since on Ubuntu sh is not bash
    #set -x # for debugging
    
    if [ $# -ne 1 ]
    then                    # affiche l'usage
      echo "Missing parameter"
      echo "Use: $0 debug for debug"
      echo "Use: $0 opt for optimization result"
      echo "Use: $0 mpi for optimization result"
      exit 1
    fi
    
    dir=`pwd`
    #NUM_REC="$dir/num_rec"
    
    #INSTALL="/usr/bin/install"
    
    TRACY="tracy"
    
    cd "$dir/$TRACY"
    
    # CVS file is inside, do not erase
    rm -f autom4te.cache/*
    rm -rf aclocal.m4
    
    ### 2023jun01 sometimes distclean does not work
    # try to comment distclean, run it once and then uncomment
    make distclean
    
    # Clean everything and call autoreconf
    sh bootstrap.sh
    
    if [ $1 == "debug" ]
    then 
      ./configure --prefix=$dir/$TRACY/tracy FFLAGS="-g -O2  -Wall -fbounds-check" CFLAGS="-g -O2  -Wall -fno-implicit-templates" CXXFLAGS="-g -O2  -Wall -fno-implicit-templates"
    fi
    
    #dirName=/home/sources/physmach/nadolski/codes
    #dirName=/usr/local/applis_pa/codes/tracy/
    #dirName=/nfs/tegile/work/sources/physmach/blanco-garcia/codes
    
    if [ $1 == "opt" ]
    then
    CC=icc CXX=icpc LDFLAGS="-L$dirnName/nrecipes/recipes_c-ansi/lib/" ./configure --prefix=$dir/$TRACY/tracy FFLAGS="-O2  -Wall -fbounds-check" CFLAGS="-O2  -Wall -fno-implicit-templates" CXXFLAGS="-O2  -Wall -fno-implicit-templates"
    #  CC=gcc CXX=g++ LDFLAGS=" -L$dirnName/nrecipes/recipes_c-ansi/lib/ " ./configure  FFLAGS="-O2 -Wall -fbounds-check " CFLAGS=" -Wall -ansi -fno-implicit-templates -Wunused-label -Wunused-dummy-argument -Wunused-variable " CXXFLAGS="-O2 -Wall -ansi "
    fi
    
    if [ $1 == "mpi" ]
    then
    ## 2023jun14 orblancog. I move to gcc because icc libraries are incompatible with matlab
    # https://jira.synchrotron-soleil.fr/jira/browse/CTRLDESK-21799
    # CC=icc CXX=icpc LDFLAGS="-L$dirName/nrecipes/recipes_c-ansi/lib/ -L/opt/intel/parallel_studio_xe_2017_update2/compilers_and_libraries_2017.2.174/linux/mpi/intel64/lib -lmpi" ./configure --enable-mpi-exec --prefix=$dir/$TRACY/tracy  FFLAGS="-O2  -Wall -fbounds-check" CFLAGS="-O2  -Wall -fno-implicit-templates" CXXFLAGS="-O2  -Wall -fno-implicit-templates"
    # ok for compilation # CC=icc CXX=icpc LDFLAGS="-L$dirName/nrecipes/recipes_c-ansi/lib/ -L/opt/intel/parallel_studio_xe_2017_update2/compilers_and_libraries_2017.2.174/linux/mpi/intel64/lib -lmpi" ./configure --enable-mpi-exec --prefix=$dir/$TRACY/tracy  FFLAGS="-O2  -Wall -fbounds-check" CFLAGS="-O2 -ansi -Wall -fno-implicit-templates" CXXFLAGS="-O2 -ansi -Wall -fno-implicit-templates"
    # CC=icc CXX=icpc LDFLAGS="-L$NUM_REC/nrecipes/recipes_c-ansi/lib/ -L/opt/intel/parallel_studio_xe_2017_update2/compilers_and_libraries_2017.2.174/linux/mpi/intel64/lib -lmpi" ./configure --enable-mpi-exec --prefix=$dir/$TRACY/tracy  FFLAGS="-O2  -Wall -fbounds-check" CFLAGS="-O2 -ansi -Wall -fno-implicit-templates" CXXFLAGS="-O2 -ansi -Wall -fno-implicit-templates"
    # CC=gcc CXX=g++  LDFLAGS="-L$dirName/nrecipes/recipes_c-ansi/lib/ -I/usr/local/applications/tools/openmpi/4.1.1/include -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi" ./configure --enable-mpi-exec FFLAGS="-O2  -Wall -fbounds-check " CFLAGS="-O2 -Wall -ansi " CXXFLAGS="-O2  -Wall -ansi -fno-implicit-templates  -I/usr/local/applications/tools/openmpi/4.1.1/include  -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi_cxx"
    # CC=gcc CXX=g++  LDFLAGS="-L$dirName/nrecipes/recipes_c-ansi/lib/ -I/usr/local/applications/tools/openmpi/4.1.1/include -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi" ./configure --enable-mpi-exec FFLAGS="-O2  -Wall -fbounds-check " CFLAGS="-O2 -Wall -ansi " CXXFLAGS="-O2  -Wall -ansi -fno-implicit-templates  -I/usr/local/applications/tools/openmpi/4.1.1/include  -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi_cxx"
    
    # check gcc version
    currentver="$(gcc -dumpversion)"
    echo "GCC is $currentver"
    requiredver="9.2.0"
      if [ "$(printf '%s\n' "$requiredver" "$currentver" | sort -V | head -n1)" = "$requiredver" ]; then
        CC=gcc CXX=g++  LDFLAGS="-L$NUM_REC/lib/ -I/usr/local/applications/tools/openmpi/4.1.1/include -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi" ./configure --enable-mpi-exec FFLAGS="-O2  -Wall -fbounds-check  " CFLAGS="-O2 -Wall -ansi " CXXFLAGS="-O2  -Wall -ansi -fno-implicit-templates  -I/usr/local/applications/tools/openmpi/4.1.1/include  -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi_cxx -fopenmp "
      else
        # newer gcc versions require extra fortran flags
        echo "GCC greater than or equal to ${requiredver}"
        echo "extra flags to fortran ..."
        ##add fallow-argument-mismatch
        CC=gcc CXX=g++  LDFLAGS="-L$NUM_REC/lib/ -I/usr/local/applications/tools/openmpi/4.1.1/include -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi" ./configure --enable-mpi-exec FFLAGS="-O2  -Wall -fbounds-check -fallow-argument-mismatch " CFLAGS="-O2 -Wall -ansi " CXXFLAGS="-O2  -Wall -ansi -fno-implicit-templates  -I/usr/local/applications/tools/openmpi/4.1.1/include  -L/usr/local/applications/tools/openmpi/4.1.1/lib -lmpi_cxx -fopenmp "
      fi
    fi
    
    make
    #make install DESTDIR=/usr/local/applis_pa/codes/tracy/bin
    #make install DESTDIR=~
    make install DESTDIR=$dir/$TRACY/build
    echo $dir/$TRACY/build