summaryrefslogtreecommitdiffstats
path: root/config/linux-gnulibc1
blob: 719b91501b7a7a1c2752bebbc5d13f26db0b5e1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#							-*- shell-script -*-
#
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5.  The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the files COPYING and Copyright.html.  COPYING can be found at the root
# of the source code distribution tree; Copyright.html can be found at the
# root level of an installed copy of the electronic HDF5 document set and 
# is linked from the top-level documents page.  It can also be found at
# http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
# access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu.


# 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-$FC"; then
    case $CC_BASENAME in
        gcc*|pgcc*)
            FC=pgf90
            FC_BASENAME=pgf90
            ;;
        icc*)
            FC=ifort
            FC_BASENAME=ifort
            ;;
        mpicc*)
            FC=mpif90
            FC_BASENAME=mpif90
            ;;
    esac
else
    case $FC 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.$$
            $FC -V >$tmpfile
            if test -s "$tmpfile"; then 
                if( grep -s 'Absoft' $tmpfile > /dev/null) then
                    FC_BASENAME=f95
                fi 
                if( grep -s 'pgf90' $tmpfile > /dev/null) then
                    FC_BASENAME=pgf90
                fi 
            fi
            $RM $tmpfile
            ;;
    esac
fi

# Figure out PGI F90 compiler flags
. $srcdir/config/pgi-fflags

# Figure out Intel F90 compiler flags
. $srcdir/config/intel-fflags

case $FC_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)
        FCFLAGS="$FCFLAGS -YEXT_NAMES=UCS"
        FSEARCH_DIRS=""
        DEBUG_FCFLAGS="-g"
        PROD_FCFLAGS="-O"
        PROFILE_FCFLAGS="-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

# We know that for mpich 1.2.5 and previous version, complicated derived datatype is
# supported, we need to set the macro to hdf5_mpi_complex_derived_datatype_works to no.                  
# Notice that this fix will only work if the compiler name is mpicc and mpi package is                   
# mpich 1.x.x.  

if [ -z "$hdf5_mpi_complex_derived_datatype_works" -a \( $CC_BASENAME = mpicc -o $CC_BASENAME = mpiicc \) ]; then
   ccversion=`$CC -v 2>&1 | sed -e 's/.*for //p'`
   ccversion1=`echo $ccversion | cut -f1 -d.`
   ccversion2=`echo $ccversion | cut -f2 -d.`
   ccversiontemp=`echo $ccversion | cut -f3 -d.`
   ccversion3=`echo $ccversiontemp | cut -c1`
   ccversionval=`expr $ccversion1 \* 100 + $ccversion2 \* 10 + $ccversion3`
   if [ $ccversionval -lt 126 ]; then
      hdf5_mpi_complex_derived_datatype_works='no'
  fi
fi