diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2004-12-17 02:27:41 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2004-12-17 02:27:41 (GMT) |
commit | 5387f65eef42ba904c60a223b12e63b5c0743d55 (patch) | |
tree | e8e98dcfd9d3ed7a929dba4a3c75fe624cef4ba4 /config/gnu-fflags | |
parent | 1205c5753159b90bc47fd270a00a4d118a18b4e2 (diff) | |
download | hdf5-5387f65eef42ba904c60a223b12e63b5c0743d55.zip hdf5-5387f65eef42ba904c60a223b12e63b5c0743d55.tar.gz hdf5-5387f65eef42ba904c60a223b12e63b5c0743d55.tar.bz2 |
[svn-r9684] Purpose:
Port
Description:
Initial work for supporting GNU FORTRAN/F95 on FreeBSD. I think I've
got things mostly set up correctly, but I'm getting an internal compiler
error on one of the FORTRAN sources, so I'm not going to add this configuration
to the daily tests yet.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/GNU FORTRAN
Not tested in h5committest
Diffstat (limited to 'config/gnu-fflags')
-rw-r--r-- | config/gnu-fflags | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/config/gnu-fflags b/config/gnu-fflags new file mode 100644 index 0000000..f1f50d7 --- /dev/null +++ b/config/gnu-fflags @@ -0,0 +1,85 @@ +# -*- shell-script -*- +# +# This file should be sourced into configure if the compiler is the +# GNU g95/gfortran compiler or a derivative. It is careful not to do anything +# if the compiler is not GNU; otherwise `f9x_flags_set' is set to `yes' +# + +# Get the compiler version in a way that works for GNU fortran +# gfortran unless a compiler version is already known +# +# f9x_vendor: The compiler name: gfortran +# f9x_version: Version number: 5.0-2, 5.2-2 +# +if test X = "X$f9x_flags_set"; then + f9x_version="`$F9X $FFLAGS -v 2>&1 |grep 'gcc version' |\ + sed 's/.*gcc version \([-a-z0-9\.]*\).*/\1/'`" + if test X != "X$f9x_version"; then +# is_mpi="`$F9X $FFLAGS -help 2>&1 |grep 'link MPI'`" + f9x_vendor=`echo $f9x_version |sed 's/\([a-z]*\).*/\1/'` + f9x_version=`echo $f9x_version |sed 's/[-a-z]//g'` + if test X = "X$f9x_vendor" -a X != "X$f9x_version"; then + f9x_vendor=gfortran + fi + if test "-" != "$f9x_vendor-$f9x_version"; then + echo "compiler '$F9X' is GNU $f9x_vendor-$f9x_version" + fi + + # Some version numbers + f9x_vers_major=`echo $f9x_version | cut -f1 -d.` + f9x_vers_minor=`echo $f9x_version | cut -f2 -d.` + f9x_vers_patch=`echo $f9x_version | cut -f3 -d.` + test -n "$f9x_vers_major" || f9x_vers_major=0 + test -n "$f9x_vers_minor" || f9x_vers_minor=0 + test -n "$f9x_vers_patch" || f9x_vers_patch=0 + f9x_vers_all=`expr $f9x_vers_major '*' 1000000 + $f9x_vers_minor '*' 1000 + $f9x_vers_patch` + fi +fi + +# Common GNU flags for various situations +if test "X-gfortran" = "X-$f9x_vendor"; then + # Insert section about version specific problems from gnu-flags here, if + # necessary. + + arch= + # Architecture-specific flags + # Nothing currently. (Uncomment code below and modify to add any) + #case "$host_os-$host_cpu" in + # *-i686) + # arch="-march=i686" + # ;; + #esac + + # Host-specific flags + # Nothing currently. (Uncomment code below and modify to add any) + #case "`hostname`" in + # sleipnir.ncsa.uiuc.edu) + # arch="$arch -pipe" + # ;; + #esac + + # General + F9X_BASENAME=gfortran40 + F9XSUFFIXFLAG="" + FSEARCH_DIRS="" + FFLAGS="$FFLAGS -pedantic -Wall -Wconversion -Wunderflow -Wimplicit-interface -W" + + # Production + PROD_FFLAGS="-O2 -s" + + # Debug + DEBUG_FFLAGS="-g -fbounds-check" + + # Profile + PROFILE_FFLAGS="-g -pg" + + # Flags are set + f9x_flags_set=yes +fi + +# Clear f9x info if no flags set +if test "X-$f9x_flags_set" = "X-"; then + f9x_vendor= + f9x_version= +fi + |