2016-03-22 15:37:07 +08:00
|
|
|
#!/bin/sh
|
2015-01-31 21:32:42 +08:00
|
|
|
#
|
|
|
|
# Copyright by The HDF Group.
|
|
|
|
# All rights reserved.
|
|
|
|
#
|
|
|
|
# This file is part of HDF5. The full HDF5 copyright notice, including
|
|
|
|
# terms governing use, modification, and redistribution, is contained in
|
2017-04-18 03:32:16 +08:00
|
|
|
# the COPYING file, which can be found at the root of the source code
|
2021-02-17 22:52:36 +08:00
|
|
|
# distribution tree, or in https://www.hdfgroup.org/licenses.
|
2017-04-18 03:32:16 +08:00
|
|
|
# If you do not have access to either file, you may request a copy from
|
|
|
|
# help@hdfgroup.org.
|
2015-01-31 21:32:42 +08:00
|
|
|
#
|
|
|
|
|
|
|
|
# A script to reconfigure autotools for HDF5, and to recreate other
|
2018-07-14 02:40:22 +08:00
|
|
|
# generated files specific to HDF5.
|
2015-01-31 21:32:42 +08:00
|
|
|
#
|
2015-02-19 15:57:53 +08:00
|
|
|
# IMPORTANT OS X NOTE
|
2015-02-07 12:24:31 +08:00
|
|
|
#
|
2015-02-19 15:57:53 +08:00
|
|
|
# If you are using OS X, you will probably not have the autotools
|
2015-11-13 19:24:43 +08:00
|
|
|
# installed, even if you have the Xcode command-line tools.
|
2015-02-19 15:57:53 +08:00
|
|
|
#
|
|
|
|
# The easiest way to fix this is to install everything via Homebrew:
|
2015-02-07 12:24:31 +08:00
|
|
|
#
|
|
|
|
# http://brew.sh/
|
|
|
|
#
|
2015-02-19 15:57:53 +08:00
|
|
|
# After you install the base packages, install autoconf, automake,
|
2015-11-13 19:24:43 +08:00
|
|
|
# and libtool.
|
2015-02-07 12:24:31 +08:00
|
|
|
#
|
|
|
|
# brew install autoconf
|
|
|
|
# brew install automake
|
|
|
|
# brew install libtool
|
|
|
|
#
|
|
|
|
# This only takes a few minutes. Note that libtool and libtoolize will
|
|
|
|
# be glibtool and glibtoolize so as not to conflict with Apple's non-gnu
|
|
|
|
# tools. This autogen.sh script handles this for you.
|
|
|
|
#
|
2015-02-19 15:57:53 +08:00
|
|
|
# END IMPORTANT OS X NOTE
|
2015-01-31 21:32:42 +08:00
|
|
|
|
2015-02-06 00:21:21 +08:00
|
|
|
echo
|
|
|
|
echo "**************************"
|
|
|
|
echo "* HDF5 autogen.sh script *"
|
|
|
|
echo "**************************"
|
|
|
|
echo
|
|
|
|
|
2017-04-25 14:09:55 +08:00
|
|
|
# Run scripts that process source.
|
|
|
|
#
|
|
|
|
# These should be run before the autotools so that failures here block
|
|
|
|
# compilation.
|
|
|
|
|
|
|
|
# Run trace script
|
|
|
|
# The trace script adds H5TRACE macros to library source files. It should
|
|
|
|
# have no effect on files that don't have HDF5 API macros in them.
|
|
|
|
echo "Running trace script:"
|
|
|
|
bin/trace src/H5*.c || exit 1
|
|
|
|
echo
|
|
|
|
|
|
|
|
# Run make_err
|
|
|
|
# make_err automatically generates the H5E headers that create error message
|
|
|
|
# types for HDF5.
|
|
|
|
echo "Running error generation script:"
|
|
|
|
bin/make_err src/H5err.txt || exit 1
|
|
|
|
echo
|
|
|
|
|
|
|
|
# Run make_vers
|
|
|
|
# make_vers automatically generates the public headers that define the API version
|
|
|
|
# macros for HDF5.
|
|
|
|
echo "Running API version generation script:"
|
|
|
|
bin/make_vers src/H5vers.txt || exit 1
|
|
|
|
echo
|
|
|
|
|
|
|
|
# Run make_overflow
|
|
|
|
# make_overflow automatically generates macros for detecting overflows for type
|
|
|
|
# conversion.
|
|
|
|
echo "Running overflow macro generation script:"
|
|
|
|
bin/make_overflow src/H5overflow.txt || exit 1
|
|
|
|
echo
|
|
|
|
|
2022-07-19 03:23:29 +08:00
|
|
|
# Run autotools
|
2015-02-06 00:21:21 +08:00
|
|
|
|
2022-07-19 03:23:29 +08:00
|
|
|
# The "obsolete" warnings category flags our Java macros as obsolete.
|
|
|
|
# Since there is no clear way to upgrade them (Java support in the Autotools
|
|
|
|
# is not great) and they work well enough for now, we suppress those warnings.
|
|
|
|
echo "Running Autotools"
|
2015-02-06 00:21:21 +08:00
|
|
|
echo
|
|
|
|
echo "NOTE: You can ignore the warning about adding -I m4."
|
|
|
|
echo " We already do this in an included file."
|
|
|
|
echo
|
2022-07-19 03:23:29 +08:00
|
|
|
autoreconf -vif --warnings=no-obsolete || exit 1
|
2015-02-06 00:21:21 +08:00
|
|
|
echo
|
2015-01-31 21:32:42 +08:00
|
|
|
|
2017-04-25 14:09:55 +08:00
|
|
|
echo "*** SUCCESS ***"
|
2015-02-14 03:22:21 +08:00
|
|
|
|
2015-02-06 10:39:36 +08:00
|
|
|
echo
|
2015-01-31 21:32:42 +08:00
|
|
|
exit 0
|
|
|
|
|