mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-17 16:10:24 +08:00
115 lines
2.6 KiB
Plaintext
115 lines
2.6 KiB
Plaintext
|
# -*- 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 C 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
|
||
|
case $F9X in
|
||
|
# The PGI and Intel compilers are automatically detected below
|
||
|
ifc*|ifort*|pgf90*)
|
||
|
;;
|
||
|
|
||
|
*)
|
||
|
# 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
|
||
|
;;
|
||
|
esac
|
||
|
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
|
||
|
HADDR_T='SELECTED_INT_KIND(R_LARGE)'
|
||
|
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
|