mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-21 01:04:10 +08:00
Restores maintainer mode in the autotools (#200)
Maintainer mode should be enabled in development branches. Also adds helpful commenting.
This commit is contained in:
parent
c69a3b5e93
commit
adfac394c2
50
configure.ac
50
configure.ac
@ -37,18 +37,46 @@ AC_CONFIG_MACRO_DIR([m4])
|
||||
AM_INIT_AUTOMAKE([foreign subdir-objects])
|
||||
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) # use silent rules where available - automake 1.11
|
||||
|
||||
## AM_MAINTAINER_MODE turns off "rebuild rules" that contain dependencies
|
||||
## for Makefiles, configure, src/H5config.h, etc. If AM_MAINTAINER_MODE
|
||||
## is enabled, these files will be rebuilt if out of date. This is a
|
||||
## problem because if users try to build on a machine with
|
||||
## the wrong versions of autoconf and automake, these files will be
|
||||
## rebuilt with the wrong versions and bad things can happen.
|
||||
## Also, CVS doesn't preserve dependencies between timestamps, so
|
||||
## Makefiles will often think rebuilding needs to occur when it doesn't.
|
||||
## AM_MAINTAINER_MODE determines the behavior of "rebuild rules" that contain
|
||||
## dependencies for Makefile.in files, configure, src/H5config.h, etc. If
|
||||
## AM_MAINTAINER_MODE is enabled, these files will be rebuilt if out of date.
|
||||
## When disabled, the autotools build files can get out of sync and the build
|
||||
## system will not complain or try to regenerate downstream files.
|
||||
##
|
||||
## By default, it is enabled. Users can configure with
|
||||
## --disable-maintainer-mode to prevent running the autotools.
|
||||
AM_MAINTAINER_MODE([disable])
|
||||
## The AM_MAINTAINER_MODE macro also determines whether the
|
||||
## --(enable|disable)-maintainer-mode configure option is available. When the
|
||||
## macro is present, with or without a parameter, the option will be added
|
||||
## to the generated configure script.
|
||||
##
|
||||
## In summary:
|
||||
##
|
||||
## AM_MAINTAINER_MODE([enable])
|
||||
## - Build dependencies ON by default
|
||||
## - Configure option exists
|
||||
##
|
||||
## AM_MAINTAINER_MODE([disable])
|
||||
## - Build dependencies OFF by default
|
||||
## - Configure option exists
|
||||
##
|
||||
## AM_MAINTAINER_MODE
|
||||
## - Build dependencies OFF by default
|
||||
## - Configure option exists
|
||||
##
|
||||
## No AM_MAINTAINER_MODE macro
|
||||
## - Build dependencies ON by default
|
||||
## - No configure option to control build dependencies
|
||||
##
|
||||
## The biggest concern for us is that version control systems like git
|
||||
## usually don't preserve dependencies between timestamps, so the build
|
||||
## system will often think that upstream build files like Makefile.am are
|
||||
## dirty and that rebuilding needs to occur when it doesn't. This is a problem
|
||||
## in release branches where we provide the autotools-generated files. Users
|
||||
## who don't have autoconf, automake, etc. will then have difficulty building
|
||||
## release branches checked out from git.
|
||||
##
|
||||
## By default, maintainer mode is enabled in development branches and disabled
|
||||
## in release branches.
|
||||
AM_MAINTAINER_MODE([enable])
|
||||
|
||||
## ----------------------------------------------------------------------
|
||||
## Set prefix default (install directory) to a directory in the build area.
|
||||
|
Loading…
Reference in New Issue
Block a user