diff options
author | James Laird <jlaird@hdfgroup.org> | 2006-04-21 19:21:24 (GMT) |
---|---|---|
committer | James Laird <jlaird@hdfgroup.org> | 2006-04-21 19:21:24 (GMT) |
commit | 91e56dc68db9b37fb536bac555e95953ba240ac2 (patch) | |
tree | 55140e8a869ac834886f90f94dd805ff4be2fd08 /config/craynv | |
parent | 5eb6bc4dfebffadaa6de112b66f43e20bad9d0c5 (diff) | |
download | hdf5-91e56dc68db9b37fb536bac555e95953ba240ac2.zip hdf5-91e56dc68db9b37fb536bac555e95953ba240ac2.tar.gz hdf5-91e56dc68db9b37fb536bac555e95953ba240ac2.tar.bz2 |
[svn-r12295] Purpose:
Several bug fixes
Description:
Added config file for Cray X1 (previous file was misnamed)
Simplified some code in hyperslab.c test that seemed to have been
confusing compiler on Cray X1.
Fixed typo in config/commence.am
Cleaned up hl/src/Makefile.am
Solution:
All four fixes should be straightforward. The failure on Cray was
very difficult to debug, but involved arithmetic errors.
This change seems to fix it.
Platforms tested:
heping, copper, sol, some Cray X1 (more testing when system comes back up)
Diffstat (limited to 'config/craynv')
-rw-r--r-- | config/craynv | 188 |
1 files changed, 188 insertions, 0 deletions
diff --git a/config/craynv b/config/craynv new file mode 100644 index 0000000..4097f78 --- /dev/null +++ b/config/craynv @@ -0,0 +1,188 @@ +# -*- 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. + +# Choosing a C Compiler +# --------------------- +# +# The user should be able to specify the compiler by setting the CC +# environment variable to the name of the compiler and any switches it +# requires for proper operation. If CC is unset then this script may +# set it. If CC is unset by time this script completes then configure +# will try `gcc' and `cc' in that order (perhaps some others too). +# +# Note: Code later in this file may depend on the value of $CC_BASENAME +# in order to distinguish between different compilers when +# deciding which compiler command-line switches to use. This +# variable is set based on the incoming value of $CC and is only +# used within this file. + +if test "X-" = "X-$CC"; then + CC=cc + CC_BASENAME=cc +fi +# no need to use RANLIB +RANLIB=: + +# C Compiler and Preprocessor Flags +# --------------------------------- +# +# Flags that end with `_CFLAGS' are always passed to the compiler. +# Flags that end with `_CPPFLAGS' are passed to the compiler when +# compiling but not when linking. +# +# DEBUG_CFLAGS Flags to pass to the compiler to create a +# DEBUG_CPPFLAGS library suitable for use with debugging +# tools. Usually this list will exclude +# optimization switches (like `-O') and include +# switches that turn on symbolic debugging +# support (like `-g'). +# +# PROD_CFLAGS Flags to pass to the compiler to create a +# PROFILE_CPPFLAGS library suitable for performance testing (like +# `-pg'). This may or may not include debugging +# or production flags. +# +# CFLAGS Flags can be added to this variable which +# might already be partially initialized. These +# flags will always be passed to the compiler +# and should include switches to turn on full +# warnings. HDF5 attempts to be ANSI and Posix +# compliant and employ good programming +# practices resulting in few if any +# warnings. +# +# Warning flags do not have to be added to CFLAGS +# variable if the compiler is the GNU gcc +# compiler or a descendent of gcc such as EGCS or PGCC. +# +# The CFLAGS should contains *something* or else +# configure will probably add `-g'. For most +# systems this isn't a problem but some systems +# will disable optimizations in favor of the +# `-g'. +# +# +# These flags should be set according to the compiler being used. +# There are two ways to check the compiler. You can try using `-v' or +# `--version' to see if the compiler will print a version string. You +# can use the value of $CC_BASENAME which is the base name of the +# first word in $CC (note that the value of CC may have changed +# above). + +case $CC_BASENAME in + gcc) + CFLAGS="$CFLAGS -Wsign-compare" #Only works for some versions + DEBUG_CFLAGS="-g -fverbose-asm" + DEBUG_CPPFLAGS= + PROD_CFLAGS="-O3 -fomit-frame-pointer" + PROD_CPPFLAGS= + PROFILE_CFLAGS="-pg" + PROFILE_CPPFLAGS= + ;; + + cc) + CFLAGS="$CFLAGS" + DEBUG_CFLAGS="-g" + DEBUG_CPPFLAGS= + PROD_CFLAGS="" + PROD_CPPFLAGS= + PROFILE_CFLAGS= + PROFILE_CPPFLAGS= + ;; + + *) + CFLAGS="$CFLAGS -ansi" + DEBUG_CFLAGS="-g" + DEBUG_CPPFLAGS= + PROD_CFLAGS="-O" + PROD_CPPFLAGS= + PROFILE_CFLAGS="-pg" + PROFILE_CPPFLAGS= + ;; +esac + + + +# Overriding Configure Tests +# -------------------------- +# +# Values for overriding configuration tests when cross compiling. +# This includes compiling on some machines where the serial front end +# compiles for a parallel back end. + +# Set this to `yes' or `no' depending on whether the target is big +# endian or little endian. +#ac_cv_c_bigendian=${ac_cv_c_bigendian='yes'} + +# Set this to the width required by printf() to print type `long +# long'. For instance, if the format would be `%lld' then set it to +# `ll' or if the format would be `%qd' set it to `q'. +#hdf5_cv_printf_ll=${hdf5_cv_printf_ll='ll'} + +# Hard set the flag to indicate that converting denormalized floating-point +# values doesn't work. +hdf5_cv_convert_denormal_float=${hdf5_cv_convert_denormal_float='no'} + +# The default Fortran 90 compiler + +if test "X-" = "X-$F9X"; then + F9X=ftn +fi + +if test "X-" = "X-$f9x_flags_set"; then + # -Wl passes flags to the linker and -M# will ignore warnings with + # number #. Warning 405 and 412 were stopping the executable from being built. + F9XSUFFIXFLAG="" + FSEARCH_DIRS="" + FCFLAGS="$FCFLAGS -em" + DEBUG_FCFLAGS="-g" + PROD_FCFLAGS="" + PROFILE_FCFLAGS="" + f9x_flags_set=yes +fi + +# The default C++ compiler + +if test -z "$CXX"; then + CXX="CC" + CXX_BASENAME=CC +fi + +case $CXX_BASENAME in + g++) + CXXFLAGS="$CXXFLAGS -Wsign-compare" #Only works for some versions + DEBUG_CXXFLAGS="-g -fverbose-asm" + DEBUG_CPPFLAGS= + PROD_CXXFLAGS="-O3 -fomit-frame-pointer" + PROD_CPPFLAGS= + PROFILE_CXXFLAGS="-pg" + PROFILE_CPPFLAGS= + ;; + + *) + CXXFLAGS="$CXXFLAGS" + DEBUG_CXXFLAGS="-g" + DEBUG_CPPFLAGS= + PROD_CXXFLAGS="" + PROD_CPPFLAGS= + PROFILE_CXXFLAGS= + PROFILE_CPPFLAGS= + ;; +esac + |