Skip to content
Snippets Groups Projects
Commit fc6c25a2 authored by zhang's avatar zhang
Browse files

Created file for cross compilation

parent ac9f4ad8
No related branches found
No related tags found
No related merge requests found
# 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
-----------------------------------------------------"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment