Skip to content
Snippets Groups Projects
Select Git revision
  • 2fe0ef3efab48f7a882408e6a2137df8d41046cc
  • main default protected
  • release_1_0_5
  • release_1_0_4
  • release_1_0_3
  • release_1_0_2
  • release_1_0_1
  • release_1_0_0
  • release_0_2
  • release_0_1
  • v0
11 results

pom.xml

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    configure.ac 3.56 KiB
    # Process this file with autoconf to produce a configure script.
    #AC_INIT(tracy/src/t2elem.cc)
    AC_INIT([Tracy], [3.0], [nadolski@synchrotron-soleil.fr])
    AC_CONFIG_AUX_DIR(config)
    AC_CANONICAL_SYSTEM
    
    #INIT AUTOMAKE
    AM_INIT_AUTOMAKE([-Wall])
    
    # Configuration for autoconf
    AC_CONFIG_SRCDIR([tracy/src/t2elem.cc])
    AC_CONFIG_HEADER([config.h])
    
    # Checks for programs.
    # Check for AWK
    AC_PROG_AWK
    
    #Check for C compile
    AC_PROG_CC([mpicc gcc icc cc])
    
    #Check for standard C compiler
    AM_PROG_CC_STDC
    
    #Check for install
    AC_PROG_INSTALL
    
    #Check for ln -s
    AC_PROG_LN_S
    
    #Check for make
    AC_PROG_MAKE_SET
    
    #Check for C preprocessor
    AC_PROG_CPP
    
    #Check for ranlib
    AC_PROG_RANLIB
    
    #Check for C++ compiler
    AC_PROG_CXX
    
    #Check for compiler
    AC_PROG_F77(gfortran)
    
    # Configure option: --enable-debug[=no]
    AC_ARG_ENABLE([debug],
      [AS_HELP_STRING([--enable-debug],
        [enable debug code (default is no)])],
        [debug="$withval"], [debug=no])
        
    # Configure option: --enable-mpi-exec
    AC_ARG_ENABLE([mpi_exec],
    	[  --enable-mpi-exec     enable mpi exec],
    	[mpi_exec=${enableval}], [mpi_exec=no])
    
    # Checks for libraries.
    #AC_SEARCH_LIBS([mpi_init], [mpichcxx], [have_pthreads=yes])
    
    # NR
    #AC_SEARCH_LIBS([dsvbk], [recipes_c_icc])
    
    
    # Checks for header files.
    AC_CHECK_HEADERS([stdlib.h string.h])
    
    # If MPI compitation asked, check whether header is available
    if test "x${mpi_exec}" = xyes; then
      have_mpi=no 
      AC_CHECK_HEADERS([mpi.h], [have_mpi=yes], [have_mpi=no])
      
      if test "x${have_mpi}" = xno; then
        AC_MSG_WARN([
    	-------------------------------------------
    	 Unable to find mpi library on this system.
    	 Check 'config.log' for more information.
    	-----------------------------------------])
      else
        AC_MSG_NOTICE([
    	-------------------------------------------
    	 mpi library found on this system.
    	 Building parallel version
    	 Check 'config.log' for more information.
    	-----------------------------------------])
       AC_DEFINE([MPI_EXEC], 1, [mpi executation enabled])
      fi
    fi
    
    # Configure supported platforms
    case $target_os in
      linux-gnu)
        
        #Compilation optionss
        CXXFLAGS="-O2 -Wall -fno-implicit-templates " # C++ options
        CFLAGS="$CFLAGS -Wall-fno-implicit-templates "     # C   options 
        FFLAGS="$FFLAGS -Wall -fbounds-check" # Fortran options
        if test "x$HOSTNAME" = xisei; then
          #Define isei special compilers
            if test "x$have_mpi" = xyes; then 
    	  # mpi compilers
              AC_MSG_NOTICE([MPI compilation available for $HOSTNAME])
    	  CC=mpiicc
              F77=mpiifort
              CXX=mpiicpc
    	else
              AC_MSG_NOTICE([Intel compilation for $HOSTNAME])
    	  CC=icc
              F77=ifort
              CXX=icpc	
    	fi
        fi;;
      
      apple-darwin);;
      
      *)
      
    esac
    
    
    # Checks for typedefs, structures, and compiler characteristics.
    AC_C_CONST
    AC_C_INLINE
    AC_TYPE_SIZE_T
    
    
    # Checks for library functions.
    AC_CONFIG_FILES(Makefile
              TPSA/Makefile
    	  tracy/Makefile 
    	  tracy/src/Makefile 
    	  tools/Makefile)
    AC_OUTPUT
    
    echo \
    "-----------------------------------------------------
    ${PACKAGE_NAME} Version ${PACKAGE_VERSION}
    SYNCHROTRON SOLEIL
    
    Prefix.........: ${prefix}
    Compiler.......: ${CC} ${CFLAGS} ${CPPFLAGS}
    Debug Build....: ${debug}
    Libraries......: ${LIBS}
    
    Extra argument:
      --enable-mpi-exec=yes/no
    
    Package features:
       Parallel computation using mpi: ${mpi_exec}
    
    Now type 'make @<:@<target>@:>@'
      where the optional <target> is:
        all         - build all binaries
        check       - run simple test file
        install     - (to be done)
        distclean   - Clean distribution
        dist        - make tar.gz (to me done)
        distcheck   - check
    -----------------------------------------------------"