diff options
author | Bill Wendling <wendling@ncsa.uiuc.edu> | 2003-07-28 21:38:04 (GMT) |
---|---|---|
committer | Bill Wendling <wendling@ncsa.uiuc.edu> | 2003-07-28 21:38:04 (GMT) |
commit | 0603e2db00e773702906387620e5644c23360703 (patch) | |
tree | a3f999ab9a8ac0ae015fedb9eb45a709a99c4a85 /config/solaris2.x | |
parent | 6e0e3da2837214179812cf613e78227d4cbb78b3 (diff) | |
download | hdf5-0603e2db00e773702906387620e5644c23360703.zip hdf5-0603e2db00e773702906387620e5644c23360703.tar.gz hdf5-0603e2db00e773702906387620e5644c23360703.tar.bz2 |
[svn-r7269] Purpose:
Update
Description:
Revamped the configuration system. The configurations for the Fortran
and C++ libraries are no longer separate from the "main"
configuration system. This involved removing the "configure*" and
"aclocal.m4" files from the fortran/ and c++/ subdirectories. Also
merging settings in the config/ subdirectories into the main config/
subdirectory.
Fortran header files had to be modified a little for Linux. It was
checking if it was a Linux machine by some #defines, however with the
-std=c99 switch, these defines weren't there. I added a check for
some other ones which should be there whether the -std=c99 switch is
used or not.
Platforms tested:
Verbena (Fortran & C++)
Sol (Fortran & C++)
Copper (Fortran & C++)
Modi4 (Parallel, Fortran, & C++)
Misc. update:
Diffstat (limited to 'config/solaris2.x')
-rw-r--r-- | config/solaris2.x | 99 |
1 files changed, 85 insertions, 14 deletions
diff --git a/config/solaris2.x b/config/solaris2.x index d6434f5..31b12ee 100644 --- a/config/solaris2.x +++ b/config/solaris2.x @@ -8,8 +8,8 @@ # The default compiler is `sunpro cc' if test "X-" = "X-$CC"; then - CC=cc - CC_BASENAME=cc + CC=cc + CC_BASENAME=cc fi # Try gcc compiler flags @@ -17,19 +17,90 @@ fi # Try solaris native compiler flags if test "X-" = "X-$cc_flags_set"; then - CFLAGS="-erroff=%none -DBSD_COMP" - DEBUG_CFLAGS="-g -xildoff" - DEBUG_CPPFLAGS= - PROD_CFLAGS="-O -s" - PROD_CPPFLAGS= - PROFILE_CFLAGS=-xpg - PROFILE_CPPFLAGS= - cc_flags_set=yes - # Turn off optimization flag for SUNpro compiler versions 4.x which - # have an optimization bug. Version 5.0 works. - ($CC -V 2>&1) | grep -s 'cc: .* C 4\.' >/dev/null 2>&1 \ - && PROD_CFLAGS="`echo $PROD_CFLAGS | sed -e 's/-O//'`" + CFLAGS="-erroff=%none -DBSD_COMP" + DEBUG_CFLAGS="-g -xildoff" + DEBUG_CPPFLAGS= + PROD_CFLAGS="-O -s" + PROD_CPPFLAGS= + PROFILE_CFLAGS=-xpg + PROFILE_CPPFLAGS= + cc_flags_set=yes + + # Turn off optimization flag for SUNpro compiler versions 4.x which + # have an optimization bug. Version 5.0 works. + ($CC -V 2>&1) | grep -s 'cc: .* C 4\.' >/dev/null 2>&1 \ + && PROD_CFLAGS="`echo $PROD_CFLAGS | sed -e 's/-O//'`" fi # Add socket lib for the Stream Virtual File Driver LIBS="$LIBS -lsocket" + +# The default Fortran 90 compiler + +# +# 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 Sparc Solaris 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 + +if test "X-" = "X-$F9X"; then + F9X=f90 +fi + +if test "X-" = "X-$f9x_flags_set"; then + F9XSUFFIXFLAG="" + FSEARCH_DIRS="" + FFLAGS="" + DEBUG_FFLAGS="" + PROD_FFLAGS="" + PROFILE_FFLAGS="" + f9x_flags_set=yes +fi + +# The default C++ compiler + +# The default compiler is `sunpro cc' +if test -z "$CXX"; then + CXX=CC + CXX_BASENAME=CC +fi + +# Try gcc compiler flags +#. $srcdir/config/gnu-flags + +cxx_version="`$CXX -V 2>&1 |grep 'WorkShop' |\ + sed 's/.*WorkShop.*C\+\+ \([0-9\.]*\).*/\1/'`" + +cxx_vers_major=`echo $cxx_version | cut -f1 -d.` +cxx_vers_minor=`echo $cxx_version | cut -f2 -d.` +cxx_vers_patch=`echo $cxx_version | cut -f3 -d.` + +# Specify the "-features=tmplife" if the compiler can handle this... +if test -n "$cxx_version"; then + if test $cxx_vers_major -ge 5 -a $cxx_vers_minor -ge 3 -o $cxx_vers_major -gt 5; then + CXXFLAGS="-features=tmplife" + fi +fi + +# Try solaris native compiler flags +if test -z "$cxx_flags_set"; then + CXXFLAGS="$CXXFLAGS -instances=global" + CPPFLAGS="-LANG:std" + DEBUG_CXXFLAGS=-g + DEBUG_CPPFLAGS= + PROD_CXXFLAGS="-O -s" + PROD_CPPFLAGS= + PROFILE_CXXFLAGS=-xpg + PROFILE_CPPFLAGS= + cxx_flags_set=yes +fi |