mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-21 01:04:10 +08:00
6af5973295
Code cleanup Description: Default to using mpif90 if CC=mpicc and --enable-fortran flag is given, but no F9X compiler is set. Platforms tested: Linux 2.4 (verbena) Too minor to require h5committest
106 lines
2.3 KiB
Bash
106 lines
2.3 KiB
Bash
# -*- shell-script -*-
|
|
#
|
|
# This file is part of the HDF5 build script. It is processed shortly
|
|
# after configure starts and defines, among other things, flags for
|
|
# the various compile modes.
|
|
#
|
|
# See BlankForm in this directory for details.
|
|
|
|
# The default compiler is `gcc'.
|
|
if test -z "$CC"; then
|
|
CC=gcc
|
|
CC_BASENAME=gcc
|
|
fi
|
|
|
|
# Figure out GNU compiler flags
|
|
. $srcdir/config/gnu-flags
|
|
|
|
# Figure out PGI C compiler flags
|
|
. $srcdir/config/pgi-flags
|
|
|
|
# Figure out Intel C compiler flags
|
|
. $srcdir/config/intel-flags
|
|
|
|
# The default Fortran 90 compiler
|
|
if test "X-" = "X-$F9X"; then
|
|
case $CC_BASENAME in
|
|
gcc*|pgcc*)
|
|
F9X=pgf90
|
|
F9X_BASENAME=pgf90
|
|
;;
|
|
icc*)
|
|
F9X=ifort
|
|
F9X_BASENAME=ifort
|
|
;;
|
|
mpicc*)
|
|
F9X=mpif90
|
|
F9X_BASENAME=mpif90
|
|
;;
|
|
esac
|
|
else
|
|
# Figure out which compiler we are using: pgf90 or Absoft f95
|
|
RM='rm -f'
|
|
tmpfile=/tmp/cmpver.$$
|
|
$F9X -V >$tmpfile
|
|
if test -s "$tmpfile"; then
|
|
if( grep -s 'Absoft' $tmpfile > /dev/null) then
|
|
F9X_BASENAME=f95
|
|
fi
|
|
if( grep -s 'pgf90' $tmpfile > /dev/null) then
|
|
F9X_BASENAME=pgf90
|
|
fi
|
|
fi
|
|
$RM $tmpfile
|
|
fi
|
|
|
|
#
|
|
# HDF5 integers
|
|
#
|
|
# R_LARGE is the number of digits for the bigest integer supported.
|
|
# R_INTEGER is the number of digits in INTEGER
|
|
#
|
|
# (for the Linux architechture)
|
|
#
|
|
R_LARGE=18
|
|
R_INTEGER=9
|
|
HSIZE_T='SELECTED_INT_KIND(R_LARGE)'
|
|
HSSIZE_T='SELECTED_INT_KIND(R_LARGE)'
|
|
HID_T='SELECTED_INT_KIND(R_INTEGER)'
|
|
SIZE_T='SELECTED_INT_KIND(R_INTEGER)'
|
|
OBJECT_NAMELEN_DEFAULT_F=-1
|
|
|
|
# Figure out PGI F90 compiler flags
|
|
. $srcdir/config/pgi-fflags
|
|
|
|
# Figure out Intel F90 compiler flags
|
|
. $srcdir/config/intel-fflags
|
|
|
|
case $F9X_BASENAME in
|
|
#
|
|
# Absoft compiler
|
|
#
|
|
f95)
|
|
# Set required flag for compiling C stubs
|
|
CFLAGS="$CFLAGS -DH5_ABSOFT"
|
|
|
|
F9XSUFFIXFLAG=""
|
|
# We force compiler to use upper case for external names
|
|
# (just in case since this should be a default EIP)
|
|
FFLAGS="$FFLAGS -YEXT_NAMES=UCS"
|
|
FSEARCH_DIRS=""
|
|
DEBUG_FFLAGS="-g"
|
|
PROD_FFLAGS="-O"
|
|
PROFILE_FFLAGS="-g -pg"
|
|
f9x_flags_set=yes
|
|
;;
|
|
|
|
esac
|
|
|
|
# The default C++ compiler
|
|
|
|
# The default compiler is `g++'.
|
|
if test -z "$CXX"; then
|
|
CXX=g++
|
|
CXX_BASENAME=g++
|
|
fi
|