From 6a320264c2de3d6dd8cc1d1327b3c30df4c8cb26 Mon Sep 17 00:00:00 2001 From: Siddhesh Wani Date: Mon, 25 May 2015 14:46:31 +0530 Subject: Original Version --- 2.3-1/m4/fftw.m4 | 16 +++++++ 2.3-1/m4/fortran.m4 | 103 +++++++++++++++++++++++++++++++++++++++++++++ 2.3-1/m4/intel_compiler.m4 | 36 ++++++++++++++++ 3 files changed, 155 insertions(+) create mode 100644 2.3-1/m4/fftw.m4 create mode 100644 2.3-1/m4/fortran.m4 create mode 100644 2.3-1/m4/intel_compiler.m4 (limited to '2.3-1/m4') diff --git a/2.3-1/m4/fftw.m4 b/2.3-1/m4/fftw.m4 new file mode 100644 index 00000000..8764aaba --- /dev/null +++ b/2.3-1/m4/fftw.m4 @@ -0,0 +1,16 @@ +dnl AC_FFTW +dnl ------------------------------------------------------ +dnl Check if FFTW is usable and working +dnl +AC_DEFUN([AC_FFTW], [ + + AC_CHECK_HEADER([fftw3.h],[],[AC_MSG_ERROR([Cannot find headers (fftw3.h) of the library fftw. Please install the dev package (Debian : fftw3-dev)])]) + AC_CHECK_LIB([fftw3], [fftw_plan_dft_r2c], + [FFTW3_LIB=-lfftw3], + [AC_MSG_ERROR([libfftw3 : library missing. (Cannot find symbol fftw_plan_dft_r2c). Check if libfftw3 is installed and if the version is correct])] + ) + AC_SUBST(FFTW3_LIB) + AC_DEFINE([WITH_FFTW], [], [With FFTW]) +]) + + diff --git a/2.3-1/m4/fortran.m4 b/2.3-1/m4/fortran.m4 new file mode 100644 index 00000000..4ed4c7f7 --- /dev/null +++ b/2.3-1/m4/fortran.m4 @@ -0,0 +1,103 @@ +dnl Macros which process ./configure arguments + + +dnl Fortran Macros +dnl ------------------------------------------------------ +dnl Copyright INRIA +dnl Sylvestre Ledru - June 2006 +dnl +dnl ------------------------------------------------------ +dnl AC_CHECK_UNDERSCORE_FORTRAN +dnl Look for trailing or leading underscores +dnl +AC_DEFUN([AC_CHECK_UNDERSCORE_FORTRAN],[ + +AC_CHECK_PROGS(NM,nm,no) +if test "x$NM" = "xno"; then + AC_MSG_ERROR([Unable to find nm in the path. nm is used to list all the symbol from a lib]) +fi +AC_MSG_CHECKING([for leading underscores with Fortran (name-mangling scheme)]) + +cat << EOF > pipof.f + subroutine pipof + end +EOF + +dnl expand possible $SCIDIR in $FC (wizard command...) +eval "$F77 -c pipof.f > /dev/null 2>&1" + +FC_LEADING_UNDERSCORE=no +FC_TRAILING_UNDERSCORE=no + +output=`$NM $NMOPT pipof.o|grep _pipof 2>&1` +if test ! -z "$output"; then + FC_LEADING_UNDERSCORE=yes + FC_TRAILING_UNDERSCORE=no +fi + +output=`$NM $NMOPT pipof.o|grep pipof_ 2>&1` +if test ! -z "$output"; then + FC_LEADING_UNDERSCORE=no + FC_TRAILING_UNDERSCORE=yes +fi + +output=`$NM $NMOPT pipof.o|grep _pipof_ 2>&1` +if test ! -z "$output"; then + FC_LEADING_UNDERSCORE=yes + FC_TRAILING_UNDERSCORE=yes +fi + +if test "$FC_LEADING_UNDERSCORE" = yes; then + AC_DEFINE([WLU],,[If leading underscores]) +fi +if test "$FC_TRAILING_UNDERSCORE" = yes; then + AC_DEFINE([WTU],,[If trailing underscores]) +fi + +rm -f pipof.f pipof.o + +AC_MSG_RESULT([$FC_LEADING_UNDERSCORE]) +AC_MSG_CHECKING([for trailing underscores with Fortran (name-mangling scheme)]) +AC_MSG_RESULT([$FC_TRAILING_UNDERSCORE]) + +##################### +## test for sharpsign +##################### + +AC_MSG_CHECKING([use of the sharpsign in CPP]) + +AC_COMPILE_IFELSE( + [ + AC_LANG_PROGRAM( + [[#define C2F(name) name##_]], + [[C2F(toto)()]] + ) + ], + [AC_MSG_RESULT(yes) + AC_DEFINE([CNAME(name1,name2)], [name1##name2],[Cname]) + USE_SHARP_SIGN=yes] + , + [AC_MSG_RESULT(no) + AC_DEFINE([CNAME(name1,name2)], [name1/**/name2],[Cname]) + USE_SHARP_SIGN=no] +) + +## Define C2F and F2C entry point conversion ## +if test "$FC_TRAILING_UNDERSCORE" = yes; then + if test "$USE_SHARP_SIGN" = yes; then + AC_MSG_RESULT([Define C2F with Trailing Underscore and Sharp Sign]) + AC_DEFINE([C2F(name)], [name##_],[Define C2F with Trailing Underscore and Sharp Sign]) + AC_DEFINE([F2C(name)], [name##_],[Define F2C with Trailing Underscore and Sharp Sign]) + else + AC_MSG_RESULT([Define C2F with Trailing Underscore and without Sharp Sign]) + AC_DEFINE([C2F(name)], [name/**/_],[Define C2F with Trailing Underscore and without Sharp Sign]) + AC_DEFINE([F2C(name)], [name/**/_],[Define F2C with Trailing Underscore and without Sharp Sign]) + fi +else + AC_MSG_RESULT([Define C2F without Trailing Underscore]) + AC_DEFINE([C2F(name)], [name],[Define C2F without Trailing Underscore]) + AC_DEFINE([F2C(name)], [name],[Define C2F without Trailing Underscore]) +fi + +])dnl AC_CHECK_UNDERSCORE_FORTRAN + diff --git a/2.3-1/m4/intel_compiler.m4 b/2.3-1/m4/intel_compiler.m4 new file mode 100644 index 00000000..ca9eaa3d --- /dev/null +++ b/2.3-1/m4/intel_compiler.m4 @@ -0,0 +1,36 @@ +dnl SCI_INTEL_COMPILER +dnl ------------------------------------------------------ +dnl Set compilation options for intel C/Fortran compilers +dnl + +AC_DEFUN([SCI_INTEL_COMPILER], +[ + + CFLAGS=" $CFLAGS -Dlinux -DNARROWPROTO -mp" + # -cm remove comments displays, -w90 -w95 remove warnings abort f90 f95 non standard + + FFLAGS=" $FFLAGS -cm -w90 -w95 -mp" + + + case "$host" in + i*86-*-linux-gnu | *-pc-linux-gnu ) + # -pc64 : double precision + EXTRA_OPTIONS=" -pc64 -ffnalias -falias" + ;; + esac + + if test "$enable_debug_C" = yes; then + CFLAGS="-g $CFLAGS $EXTRA_OPTIONS" + else + CFLAGS="-O -DNDEBUG $CFLAGS " + fi + + if test "$enable_debug_fortran" = yes; then + FFLAGS="-g $FFLAGS $EXTRA_OPTIONS" + else + FFLAGS="-O $FFLAGS " + fi + + # TODO : voir si obligatoire vu que c'est en partie le boulot de AC_PROG_C + +])dnl SCI_INTEL_COMPILER -- cgit