Files
hdf5/config/freebsd
Dana Robinson a6e3d22604 FreeBSD autotools changes (#142)
* Updates to allow autotools builds on recent FreeBSD

* Switches the default C compiler to cc from gcc
  (this may need a version string check if we want to support
  FreeBSD 9 and earlier. FreeBSD 10 was released in 2014)
* Makes the default C++ compiler c++ (no previous setting)
* Both of these resolve to Clang on FreeBSD 10+
* Added a note about flang being unsuitable on FreeBSD
  (the port uses an ancient build of flang that lacks Fortran
  2003 support)
* Autotools only - CMake appears to use different CPP flags
  which cause compilation errors

* Adds a RELEASE.txt note for new FreeBSD autotools changes
2020-11-29 22:44:47 -06:00

77 lines
1.9 KiB
Bash

# -*- shell-script -*-
#
# Copyright by The HDF Group.
# 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 COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
# 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 'cc'
if test "X-" = "X-$CC"; then
CC=cc
CC_BASENAME=cc
fi
# Figure out clang C compiler flags
. $srcdir/config/clang-flags
# Figure out GNU C compiler flags
. $srcdir/config/gnu-flags
# Figure out Intel C compiler flags
. $srcdir/config/intel-flags
# The default Fortran 90 compiler
# No default Fortran compiler for clang. flang exists on
# FreeBSD as a port, but this is tied to an ancient LLVM
# and lacks Fortran 2003 features which causes configure
# to fail.
if test "X-" = "X-$FC"; then
case $CC_BASENAME in
gcc*|pgcc*)
FC=gfortran
FC_BASENAME=gfortran
;;
icc*)
FC=ifort
FC_BASENAME=ifort
;;
mpicc*)
FC=mpif90
FC_BASENAME=mpif90
;;
esac
fi
# Figure out FORTRAN compiler flags
. $srcdir/config/gnu-fflags
# Figure out Intel F90 compiler flags
. $srcdir/config/intel-fflags
# The default C++ compiler
# The default compiler is 'c++'.
if test -z "$CXX"; then
CXX=c++
CXX_BASENAME=c++
fi
# Figure out Clang CXX compiler flags
. $srcdir/config/clang-cxxflags
# Figure out GNU CXX compiler flags
. $srcdir/config/gnu-cxxflags