summaryrefslogtreecommitdiff
path: root/2.3-1/m4
diff options
context:
space:
mode:
Diffstat (limited to '2.3-1/m4')
-rw-r--r--2.3-1/m4/fftw.m416
-rw-r--r--2.3-1/m4/fortran.m4103
-rw-r--r--2.3-1/m4/intel_compiler.m436
3 files changed, 155 insertions, 0 deletions
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