automake: List of Automake options

1 
1 17.2 List of Automake options
1 =============================
1 
1 ‘gnits’
1 ‘gnu’
1 ‘foreign’
1 
1      Set the strictness as appropriate.  The ‘gnits’ option also implies
1      options ‘readme-alpha’ and ‘check-news’.
1 
1 ‘check-news’
1      Cause ‘make dist’ to fail unless the current version number appears
1      in the first few lines of the ‘NEWS’ file.
1 
1 ‘dejagnu’
11      Cause ‘dejagnu’-specific rules to be generated.  ⇒DejaGnu
      Tests.
1 
1 ‘dist-bzip2’
1      Hook ‘dist-bzip2’ to ‘dist’.
1 
1 ‘dist-lzip’
1      Hook ‘dist-lzip’ to ‘dist’.
1 
1 ‘dist-xz’
1      Hook ‘dist-xz’ to ‘dist’.
1 
1 ‘dist-zip’
1      Hook ‘dist-zip’ to ‘dist’.
1 
1 ‘dist-shar’
1      Hook ‘dist-shar’ to ‘dist’.  Use of this option is deprecated, as
1      the ‘shar’ format is obsolescent and problematic.  Support for it
1      will be removed altogether in Automake 2.0.
1 
1 ‘dist-tarZ’
1      Hook ‘dist-tarZ’ to ‘dist’.  Use of this option is deprecated, as
1      the ‘compress’ program is obsolete.  Support for it will be removed
1      altogether in Automake 2.0.
1 
1 ‘filename-length-max=99’
1      Abort if file names longer than 99 characters are found during
1      ‘make dist’.  Such long file names are generally considered not to
1      be portable in tarballs.  See the ‘tar-v7’ and ‘tar-ustar’ options
1      below.  This option should be used in the top-level ‘Makefile.am’
1      or as an argument of ‘AM_INIT_AUTOMAKE’ in ‘configure.ac’, it will
1      be ignored otherwise.  It will also be ignored in sub-packages of
1      nested packages (⇒Subpackages).
1 
1 ‘info-in-builddir’
1      Instruct Automake to place the generated ‘.info’ files in the
1      ‘builddir’ rather than in the ‘srcdir’.  Note that this might make
1      VPATH builds with some non-GNU make implementations more brittle.
1 
1 ‘no-define’
1      This option is meaningful only when passed as an argument to
1      ‘AM_INIT_AUTOMAKE’.  It will prevent the ‘PACKAGE’ and ‘VERSION’
1      variables from being ‘AC_DEFINE’d.  But notice that they will
1      remain defined as shell variables in the generated ‘configure’, and
1      as make variables in the generated ‘Makefile’; this is deliberate,
1      and required for backward compatibility.
1 
1 ‘no-dependencies’
1      This is similar to using ‘--ignore-deps’ on the command line, but
1      is useful for those situations where you don’t have the necessary
11      bits to make automatic dependency tracking work (⇒
      Dependencies).  In this case the effect is to effectively disable
1      automatic dependency tracking.
1 
1 ‘no-dist’
1      Don’t emit any code related to ‘dist’ target.  This is useful when
1      a package has its own method for making distributions.
1 
1 ‘no-dist-gzip’
1      Do not hook ‘dist-gzip’ to ‘dist’.
1 
1 ‘no-exeext’
1      If your ‘Makefile.am’ defines a rule for target ‘foo’, it will
1      override a rule for a target named ‘foo$(EXEEXT)’.  This is
1      necessary when ‘EXEEXT’ is found to be empty.  However, by default
1      ‘automake’ will generate an error for this use.  The ‘no-exeext’
1      option will disable this error.  This is intended for use only
1      where it is known in advance that the package will not be ported to
1      Windows, or any other operating system using extensions on
1      executables.
1 
1 ‘no-installinfo’
1      The generated ‘Makefile.in’ will not cause info pages to be built
1      or installed by default.  However, ‘info’ and ‘install-info’
1      targets will still be available.  This option is disallowed at
1      ‘gnu’ strictness and above.
1 
1 ‘no-installman’
1      The generated ‘Makefile.in’ will not cause man pages to be
1      installed by default.  However, an ‘install-man’ target will still
1      be available for optional installation.  This option is disallowed
1      at ‘gnu’ strictness and above.
1 
1 ‘nostdinc’
1      This option can be used to disable the standard ‘-I’ options that
1      are ordinarily automatically provided by Automake.
1 
1 ‘no-texinfo.tex’
1      Don’t require ‘texinfo.tex’, even if there are texinfo files in
1      this directory.
1 
1 ‘serial-tests’
11      Enable the older serial test suite harness for ‘TESTS’ (⇒
      Serial Test Harness, for more information).
1 
1 ‘parallel-tests’
1      Enable test suite harness for ‘TESTS’ that can run tests in
1      parallel (⇒Parallel Test Harness, for more information).
1      This option is only kept for backward-compatibility, since the
1      parallel test harness is the default now.
1 
1 ‘readme-alpha’
1      If this release is an alpha release, and the file ‘README-alpha’
1      exists, then it will be added to the distribution.  If this option
1      is given, version numbers are expected to follow one of two forms.
1      The first form is ‘MAJOR.MINOR.ALPHA’, where each element is a
1      number; the final period and number should be left off for
1      non-alpha releases.  The second form is ‘MAJOR.MINORALPHA’, where
1      ALPHA is a letter; it should be omitted for non-alpha releases.
1 
1 ‘std-options’
1 
1      Make the ‘installcheck’ rule check that installed scripts and
1      programs support the ‘--help’ and ‘--version’ options.  This also
1      provides a basic check that the program’s run-time dependencies are
1      satisfied after installation.
1 
1      In a few situations, programs (or scripts) have to be exempted from
1      this test.  For instance, ‘false’ (from GNU coreutils) is never
1      successful, even for ‘--help’ or ‘--version’.  You can list such
1      programs in the variable ‘AM_INSTALLCHECK_STD_OPTIONS_EXEMPT’.
1      Programs (not scripts) listed in this variable should be suffixed
1      by ‘$(EXEEXT)’ for the sake of Windows or OS/2.  For instance,
1      suppose we build ‘false’ as a program but ‘true.sh’ as a script,
1      and that neither of them support ‘--help’ or ‘--version’:
1 
1           AUTOMAKE_OPTIONS = std-options
1           bin_PROGRAMS = false ...
1           bin_SCRIPTS = true.sh ...
1           AM_INSTALLCHECK_STD_OPTIONS_EXEMPT = false$(EXEEXT) true.sh
1 
1 ‘subdir-objects’
1      If this option is specified, then objects are placed into the
1      subdirectory of the build directory corresponding to the
1      subdirectory of the source file.  For instance, if the source file
1      is ‘subdir/file.cxx’, then the output file would be
1      ‘subdir/file.o’.
1 
1 ‘tar-v7’
1 ‘tar-ustar’
1 ‘tar-pax’
1 
1      These three mutually exclusive options select the tar format to use
1      when generating tarballs with ‘make dist’.  (The tar file created
1      is then compressed according to the set of ‘no-dist-gzip’,
1      ‘dist-bzip2’, ‘dist-lzip’, ‘dist-xz’ and ‘dist-tarZ’ options in
1      use.)
1 
1      These options must be passed as arguments to ‘AM_INIT_AUTOMAKE’
1      (⇒Macros) because they can require additional configure
1      checks.  Automake will complain if it sees such options in an
1      ‘AUTOMAKE_OPTIONS’ variable.
1 
1      ‘tar-v7’ selects the old V7 tar format.  This is the historical
1      default.  This antiquated format is understood by all tar
1      implementations and supports file names with up to 99 characters.
1      When given longer file names some tar implementations will diagnose
1      the problem while other will generate broken tarballs or use
1      non-portable extensions.  Furthermore, the V7 format cannot store
1      empty directories.  When using this format, consider using the
1      ‘filename-length-max=99’ option to catch file names too long.
1 
1      ‘tar-ustar’ selects the ustar format defined by POSIX 1003.1-1988.
1      This format is old enough to be portable: As of 2018, it is
1      supported by the native ‘tar’ command on GNU, FreeBSD, NetBSD,
1      OpenBSD, AIX, HP-UX, Solaris, at least.  It fully supports empty
1      directories.  It can store file names with up to 256 characters,
1      provided that the file name can be split at directory separator in
1      two parts, first of them being at most 155 bytes long.  So, in most
1      cases the maximum file name length will be shorter than 256
1      characters.
1 
1      ‘tar-pax’ selects the new pax interchange format defined by POSIX
1      1003.1-2001.  It does not limit the length of file names.  However,
1      this format is very young and should probably be restricted to
1      packages that target only very modern platforms.  As of 2018, this
1      format is supported by the native ‘tar’ command only on GNU,
1      FreeBSD, OpenBSD system; it is not supported by the native ‘tar’
1      command on NetBSD, AIX, HP-UX, Solaris.  There are moves to change
1      the pax format in an upward-compatible way, so this option may
1      refer to a more recent version in the future.
1 
1      ⇒Controlling the Archive Format (tar)Formats, for further
1      discussion about tar formats.
1 
1      ‘configure’ knows several ways to construct these formats.  It will
1      not abort if it cannot find a tool up to the task (so that the
1      package can still be built), but ‘make dist’ will fail.
1 
1 VERSION
1      A version number (e.g., ‘0.30’) can be specified.  If Automake is
1      not newer than the version specified, creation of the ‘Makefile.in’
1      will be suppressed.
1 
1 ‘-WCATEGORY’ or ‘--warnings=CATEGORY’
1      These options behave exactly like their command-line counterpart
1      (⇒automake Invocation).  This allows you to enable or
1      disable some warning categories on a per-file basis.  You can also
1      setup some warnings for your entire project; for instance, try
1      ‘AM_INIT_AUTOMAKE([-Wall])’ in your ‘configure.ac’.
1 
1    Unrecognized options are diagnosed by ‘automake’.
1 
1    If you want an option to apply to all the files in the tree, you can
1 use the ‘AM_INIT_AUTOMAKE’ macro in ‘configure.ac’.  ⇒Macros.
1