autoconf-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] GNU Autoconf source repository branch, master, updated. v2.64-1-g8


From: Eric Blake
Subject: [SCM] GNU Autoconf source repository branch, master, updated. v2.64-1-g880c51f
Date: Mon, 27 Jul 2009 03:51:51 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Autoconf source repository".

http://git.sv.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=880c51f952b1d5ccb743ffcb91995877f595a534

The branch, master has been updated
       via  880c51f952b1d5ccb743ffcb91995877f595a534 (commit)
       via  936160f7619cb7fddbc424bb5cb9a2f997d8e166 (commit)
       via  4f8ae51842d7bea17e5179893fe532f53561a2ae (commit)
       via  9b7d3d1676cafe47b06228c0b24ce3c434cd62b6 (commit)
       via  cd618956620e585fb3d9fc549907b2b1439412b4 (commit)
      from  32440e1605b6f4113ee70389839fb5c2fa075c4a (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 880c51f952b1d5ccb743ffcb91995877f595a534
Author: Eric Blake <address@hidden>
Date:   Sun Jul 26 21:40:13 2009 -0600

    ./.prev-version: Record previous version: 2.64.

commit 936160f7619cb7fddbc424bb5cb9a2f997d8e166
Author: Eric Blake <address@hidden>
Date:   Sun Jul 26 21:14:12 2009 -0600

    Release Version 2.64.
    
    * NEWS: Mention the release.
    * README: This release is stable.
    * HACKING (release): Use dist-xz, not dist-lzma.
    
    Signed-off-by: Eric Blake <address@hidden>

commit 4f8ae51842d7bea17e5179893fe532f53561a2ae
Author: Eric Blake <address@hidden>
Date:   Sun Jul 26 19:06:06 2009 -0600

    Document some optional features in INSTALL.
    
    * doc/install.texi (Basic Installation): Mention that INSTALL is
    generic, and that not all packages implement all features.
    Mention 'make distcheck' for maintainers, and 'make installcheck'
    for users.  Mention the GNU Coding Standards.
    (Installation Names): Mention DESTDIR vs. 'make prefix= install'
    as ways to alter the configuration, with caveats of each.  Move
    --program-prefix discussion...
    (Optional Features): ...here.  Mention --enable-silent-rules and
    use of make V=0.
    
    Signed-off-by: Eric Blake <address@hidden>

commit 9b7d3d1676cafe47b06228c0b24ce3c434cd62b6
Author: Eric Blake <address@hidden>
Date:   Sat Jul 25 07:29:41 2009 -0600

    Basic improvements to INSTALL.
    
    * doc/install.texi (Basic Installation): Use better markup.
    (Multiple Architectures): Introduce the term VPATH.
    (Installation Names): Mention that --prefix must be absolute.
    * doc/autoconf.texi (Preset Output Variables)
    (Installation Directory Variables): Consistently refer to GNU
    Coding Standards.
    
    Signed-off-by: Eric Blake <address@hidden>

commit cd618956620e585fb3d9fc549907b2b1439412b4
Author: Eric Blake <address@hidden>
Date:   Sun Jul 26 19:42:39 2009 -0600

    Update some upstream files.
    
    * build-aux/config.guess: Resynchronize from upstream.
    * build-aux/config.sub: Likewise.
    * build-aux/texinfo.tex: Likewise.
    * build-aux/vc-list-files: Likewise.
    * doc/standards.texi: Likewise.
    
    Signed-off-by: Eric Blake <address@hidden>

-----------------------------------------------------------------------

Summary of changes:
 .prev-version           |    2 +-
 ChangeLog               |   33 +++++++++++++++++
 HACKING                 |   12 +++---
 NEWS                    |    2 +-
 README                  |    3 +-
 build-aux/config.guess  |   58 ++++++++----------------------
 build-aux/config.sub    |   15 ++++++--
 build-aux/texinfo.tex   |    8 +---
 build-aux/vc-list-files |    4 +-
 doc/autoconf.texi       |    8 ++--
 doc/install.texi        |   91 ++++++++++++++++++++++++++++++++++++++++-------
 doc/standards.texi      |   15 +++-----
 12 files changed, 159 insertions(+), 92 deletions(-)

diff --git a/.prev-version b/.prev-version
index c9f2f5b..b089398 100644
--- a/.prev-version
+++ b/.prev-version
@@ -1 +1 @@
-2.63b
+2.64
diff --git a/ChangeLog b/ChangeLog
index e5ab549..9011143 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,36 @@
+2009-07-26  Eric Blake  <address@hidden>
+
+       Release Version 2.64.
+       * NEWS: Mention the release.
+       * README: This release is stable.
+       * HACKING (release): Use dist-xz, not dist-lzma.
+
+       Document some optional features in INSTALL.
+       * doc/install.texi (Basic Installation): Mention that INSTALL is
+       generic, and that not all packages implement all features.
+       Mention 'make distcheck' for maintainers, and 'make installcheck'
+       for users.  Mention the GNU Coding Standards.
+       (Installation Names): Mention DESTDIR vs. 'make prefix= install'
+       as ways to alter the configuration, with caveats of each.  Move
+       --program-prefix discussion...
+       (Optional Features): ...here.  Mention --enable-silent-rules and
+       use of make V=0.
+
+       Basic improvements to INSTALL.
+       * doc/install.texi (Basic Installation): Use better markup.
+       (Multiple Architectures): Introduce the term VPATH.
+       (Installation Names): Mention that --prefix must be absolute.
+       * doc/autoconf.texi (Preset Output Variables)
+       (Installation Directory Variables): Consistently refer to GNU
+       Coding Standards.
+
+       Update some upstream files.
+       * build-aux/config.guess: Resynchronize from upstream.
+       * build-aux/config.sub: Likewise.
+       * build-aux/texinfo.tex: Likewise.
+       * build-aux/vc-list-files: Likewise.
+       * doc/standards.texi: Likewise.
+
 2009-07-25  Eric Blake  <address@hidden>
 
        Recognize new m4sugar keywords.
diff --git a/HACKING b/HACKING
index 9cab4ac..6c0bfa1 100644
--- a/HACKING
+++ b/HACKING
@@ -118,13 +118,13 @@ As much as possible, make sure to release an Autoconf 
that uses
 itself.  That's easy: just be in the top level, and run
 `tests/autoconf'.  Or install this autoconf and run `autoreconf -f'.
 
-** LZMA tarball creation
-Using the `dist-lzma' option of Automake requires Automake 1.10.1, and
-fails for everyone who does not have LZMA installed, so for now
+** XZ tarball creation
+Using the `dist-xz' option of Automake requires Automake 1.11, and
+fails for everyone who does not have xz installed, but for now
 Autoconf only requires Automake 1.10.  However, as maintainer, you
-should build an LZMA tarball.  By using Automake 1.10.1 or newer, you
-can run `make dist-lzma'; run this prior to the release target so that
-the release announcement will include the .tar.lzma file.
+should build an xz tarball.  By using Automake 1.11 or newer, you
+can run `make dist-xz'; run this prior to the release target so that
+the release announcement will include the .tar.xz file.
 
 ** Make the release
 Run `make {alpha,beta,major}' depending on which type of release this
diff --git a/NEWS b/NEWS
index 8bf819e..fc5730f 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,6 @@
 GNU Autoconf NEWS - User visible changes.
 
-* Major changes in Autoconf 2.64 (2009-??-??) [stable]
+* Major changes in Autoconf 2.64 (2009-07-26) [stable]
   Released by Eric Blake, based on git versions 2.63b.*.
 
 ** Autoconf now requires GNU M4 1.4.6 or later.  Earlier versions of M4
diff --git a/README b/README
index 4b048a9..2e4124b 100644
--- a/README
+++ b/README
@@ -29,8 +29,7 @@ of the package, where to report bugs, and a pointer to 
INSTALL for
 instructions on compilation and installation.  This removes the need
 to maintain many similar sets of installation instructions.
 
-Be sure to read BUGS (in particular since this is a beta release) and
-INSTALL.
+Be sure to read BUGS and INSTALL.
 
 Mail suggestions to address@hidden, report bugs to
 address@hidden, and submit patches to address@hidden
diff --git a/build-aux/config.guess b/build-aux/config.guess
index da83314..e3a2116 100755
--- a/build-aux/config.guess
+++ b/build-aux/config.guess
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
 #   Free Software Foundation, Inc.
 
-timestamp='2009-04-27'
+timestamp='2009-06-10'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -170,7 +170,7 @@ case 
"${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
            arm*|i386|m68k|ns32k|sh3*|sparc|vax)
                eval $set_cc_for_build
                if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-                       | grep __ELF__ >/dev/null
+                       | grep -q __ELF__
                then
                    # Once all utilities can be ECOFF (netbsdecoff) or a.out 
(netbsdaout).
                    # Return netbsd for either.  FIX?
@@ -656,7 +656,7 @@ EOF
            # => hppa64-hp-hpux11.23
 
            if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-               grep __LP64__ >/dev/null
+               grep -q __LP64__
            then
                HP_ARCH="hppa2.0w"
            else
@@ -822,6 +822,9 @@ EOF
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
        echo i${UNAME_MACHINE}-pc-mks
        exit ;;
+    8664:Windows_NT:*)
+       echo x86_64-pc-mks
+       exit ;;
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
        # How do we know it's Interix rather than the generic POSIX subsystem?
        # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -882,40 +885,17 @@ EOF
     m68*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
        exit ;;
-    mips:Linux:*:*)
+    mips:Linux:*:* | mips64:Linux:*:*)
        eval $set_cc_for_build
        sed 's/^        //' << EOF >$dummy.c
        #undef CPU
-       #undef mips
-       #undef mipsel
+       #undef ${UNAME_MACHINE}
+       #undef ${UNAME_MACHINE}el
        #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || 
defined(MIPSEL)
-       CPU=mipsel
+       CPU=${UNAME_MACHINE}el
        #else
        #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || 
defined(MIPSEB)
-       CPU=mips
-       #else
-       CPU=
-       #endif
-       #endif
-EOF
-       eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-           /^CPU/{
-               s: ::g
-               p
-           }'`"
-       test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-       ;;
-    mips64:Linux:*:*)
-       eval $set_cc_for_build
-       sed 's/^        //' << EOF >$dummy.c
-       #undef CPU
-       #undef mips64
-       #undef mips64el
-       #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || 
defined(MIPSEL)
-       CPU=mips64el
-       #else
-       #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || 
defined(MIPSEB)
-       CPU=mips64
+       CPU=${UNAME_MACHINE}
        #else
        CPU=
        #endif
@@ -947,7 +927,7 @@ EOF
          EV67)  UNAME_MACHINE=alphaev67 ;;
          EV68*) UNAME_MACHINE=alphaev68 ;;
         esac
-       objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+       objdump --private-headers /bin/sh | grep -q ld.so.1
        if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
        echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
        exit ;;
@@ -1001,14 +981,6 @@ EOF
          elf32-i386)
                TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
                ;;
-         a.out-i386-linux)
-               echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-               exit ;;
-         "")
-               # Either a pre-BFD a.out linker (linux-gnuoldld) or
-               # one that does not give us useful --help.
-               echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-               exit ;;
        esac
        # Determine whether the default compiler is a.out or elf
        eval $set_cc_for_build
@@ -1074,7 +1046,7 @@ EOF
     i*86:syllable:*:*)
        echo ${UNAME_MACHINE}-pc-syllable
        exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
        echo i386-unknown-lynxos${UNAME_RELEASE}
        exit ;;
     i*86:*DOS:*:*)
@@ -1182,7 +1154,7 @@ EOF
     rs6000:LynxOS:2.*:*)
        echo rs6000-unknown-lynxos${UNAME_RELEASE}
        exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
        echo powerpc-unknown-lynxos${UNAME_RELEASE}
        exit ;;
     SM[BE]S:UNIX_SV:*:*)
diff --git a/build-aux/config.sub b/build-aux/config.sub
index a39437d..eb0389a 100755
--- a/build-aux/config.sub
+++ b/build-aux/config.sub
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
 #   Free Software Foundation, Inc.
 
-timestamp='2009-04-17'
+timestamp='2009-06-11'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -153,6 +153,9 @@ case $os in
                os=
                basic_machine=$1
                ;;
+        -bluegene*)
+               os=-cnk
+               ;;
        -sim | -cisco | -oki | -wec | -winbond)
                os=
                basic_machine=$1
@@ -467,6 +470,10 @@ case $basic_machine in
                basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
                os=-linux
                ;;
+       bluegene*)
+               basic_machine=powerpc-ibm
+               os=-cnk
+               ;;
        c90)
                basic_machine=c90-cray
                os=-unicos
@@ -1260,7 +1267,7 @@ case $os in
        # Each alternative MUST END IN A *, to match a version number.
        # -sysv* is not here because it comes later, after sysvr4.
        -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-             | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+             | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | 
-sunos[34]*\
              | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
              | -kopensolaris* \
              | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
@@ -1613,7 +1620,7 @@ case $basic_machine in
                        -sunos*)
                                vendor=sun
                                ;;
-                       -aix*)
+                       -cnk*|-aix*)
                                vendor=ibm
                                ;;
                        -beos*)
diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex
index 0d3ba16..4592fbb 100644
--- a/build-aux/texinfo.tex
+++ b/build-aux/texinfo.tex
@@ -1,9 +1,9 @@
 % texinfo.tex -- TeX macros to handle Texinfo files.
-%
+% 
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2009-05-16.16}
+\def\texinfoversion{2009-05-24.17}
 %
 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -9272,12 +9272,8 @@ directory should work if nowhere else does.}
 @markupsetuplqdefault
 @markupsetuprqdefault
 
address@hidden Gnulib now utterly and painfully insists on no trailing 
whitespace.
address@hidden So we have to nuke it.
-
 @c Local variables:
 @c eval: (add-hook 'write-file-hooks 'time-stamp)
address@hidden eval: (add-hook 'write-file-hooks 'nuke-trailing-whitespace)
 @c page-delimiter: "^\\\\message"
 @c time-stamp-start: "def\\\\texinfoversion{"
 @c time-stamp-format: "%:y-%02m-%02d.%02H"
diff --git a/build-aux/vc-list-files b/build-aux/vc-list-files
index 9376e3d..cc716e9 100755
--- a/build-aux/vc-list-files
+++ b/build-aux/vc-list-files
@@ -2,7 +2,7 @@
 # List version-controlled file names.
 
 # Print a version string.
-scriptversion=2009-04-25.13; # UTC
+scriptversion=2009-07-21.16; # UTC
 
 # Copyright (C) 2006-2009 Free Software Foundation, Inc.
 
@@ -74,7 +74,7 @@ test "x$dir" = x && dir=.
 if test -d .git; then
   test "x$dir" = x. \
     && dir= sed_esc= \
-    || dir="$dir/" sed_esc=`echo "$dir"|sed 's,\([\\/]\),\\\\\1,g'`
+    || { dir="$dir/"; sed_esc=`echo "$dir"|env sed 's,\([\\/]\),\\\\\1,g'`; }
   # Ignore git symlinks - either they point into the tree, in which case
   # we don't need to visit the target twice, or they point somewhere
   # else (often into a submodule), in which case the content does not
diff --git a/doc/autoconf.texi b/doc/autoconf.texi
index 347e0f2..4f046c0 100644
--- a/doc/autoconf.texi
+++ b/doc/autoconf.texi
@@ -2366,7 +2366,7 @@ matters get tricky.  One approach to put such options 
directly into
 @code{CPPFLAGS} and @code{LDFLAGS}, but not into @code{CFLAGS}.
 
 However, remember that some @file{Makefile} variables are reserved by
-the GNU Coding Standards for the use of the ``user''---the person
+the @acronym{GNU} Coding Standards for the use of the ``user''---the person
 building the package.  For instance, @code{CFLAGS} is one such variable.
 
 Sometimes package developers are tempted to set user variables such as
@@ -2419,7 +2419,7 @@ can do if an option affects other phases of the compiler 
as well.
 Currently, @command{configure} always links as part of a single
 invocation of the compiler that also preprocesses and compiles, so it
 uses this variable also when linking programs.  However, it is unwise to
-depend on this behavior because the @acronym{GNU} coding standards do
+depend on this behavior because the @acronym{GNU} Coding Standards do
 not require it and many packages do not use @code{CPPFLAGS} when linking
 programs.
 
@@ -2719,7 +2719,7 @@ variables keep them unexpanded: typically 
@samp{@@datarootdir@@} is
 replaced by @address@hidden@}/share}, not @samp{/usr/local/share}, and
 @samp{@@datadir@@} is replaced by @address@hidden@}}.
 
-This behavior is mandated by the @acronym{GNU} coding standards, so that when
+This behavior is mandated by the @acronym{GNU} Coding Standards, so that when
 the user runs:
 
 @table @samp
@@ -17368,7 +17368,7 @@ OK, but copies from older versions are vulnerable.
 @c -------------------
 @prindex @command{mkfifo}
 @prindex @command{mknod}
-The GNU Coding Standards state that @command{mknod} is safe to use on
+The @acronym{GNU} Coding Standards state that @command{mknod} is safe to use on
 platforms where it has been tested to exist; but it is generally portable
 only for creating named FIFOs, since device numbers are
 platform-specific.  Autotest uses @command{mkfifo} to implement parallel
diff --git a/doc/install.texi b/doc/install.texi
index 3fc4298..4f3301f 100644
--- a/doc/install.texi
+++ b/doc/install.texi
@@ -23,6 +23,14 @@ Briefly, the shell commands @samp{./configure; make; make 
install}
 should configure, build, and install this package.  The following
 more-detailed instructions are generic; see the @file{README} file for
 instructions specific to this package.
address@hidden autoconf
+Some packages provide this @file{INSTALL} file but do not implement all
+of the features documented below.  The lack of an optional feature in a
+given package is not necessarily a bug.
address@hidden ifclear
+More recommendations for @acronym{GNU} packages can be found in
address@hidden Conventions, , Makefile Conventions, standards,
address@hidden Coding Standards}.
 
 The @command{configure} shell script attempts to guess correct values
 for various system-dependent variables used during compilation.  It uses
@@ -47,16 +55,15 @@ cache, and at some point @file{config.cache} contains 
results you don't
 want to keep, you may remove or edit it.
 
 The file @file{configure.ac} (or @file{configure.in}) is used to create
address@hidden by a program called @code{autoconf}.  You need
address@hidden by a program called @command{autoconf}.  You need
 @file{configure.ac} if you want to change it or regenerate
address@hidden using a newer version of @code{autoconf}.
address@hidden using a newer version of @command{autoconf}.
 
address@hidden
 The simplest way to compile this package is:
 
 @enumerate
 @item
address@hidden to the directory containing the package's source code and type
address@hidden to the directory containing the package's source code and type
 @samp{./configure} to configure the package for your system.
 
 Running @command{configure} might take a while.  While running, it prints some
@@ -67,11 +74,17 @@ Type @samp{make} to compile the package.
 
 @item
 Optionally, type @samp{make check} to run any self-tests that come with
-the package.
+the package, generally using the just-built uninstalled binaries.
 
 @item
 Type @samp{make install} to install the programs and any data files and
-documentation.
+documentation.  When installing into a prefix owned by root, it is
+recommended that the package be configured and built as a regular user,
+and only the @samp{make install} phase executed with root privileges.
+
address@hidden
+Optionally, type @samp{make installcheck} to repeat any self-tests, but
+this time using the binaries in their final installed location.
 
 @item
 You can remove the program binaries and object files from the source
@@ -85,7 +98,15 @@ distribution.
 
 @item
 Often, you can also type @samp{make uninstall} to remove the installed
-files again.
+files again.  In practice, not all packages have tested that
+uninstallation works correctly, even though it is required by the
address@hidden Coding Standards.
+
address@hidden
+Some packages, particularly those that use Automake, provide @samp{make
+distcheck}, which can by used by developers to test that all other
+targets like @samp{make install} and @samp{make uninstall} work
+correctly.  This target is generally not run by end users.
 @end enumerate
 
 @node Compilers and Options
@@ -115,7 +136,8 @@ own directory.  To do this, you can use @acronym{GNU} 
@command{make}.
 @command{cd} to the directory where you want the object files and
 executables to go and run the @command{configure} script.
 @command{configure} automatically checks for the source code in the
-directory that @command{configure} is in and in @file{..}.
+directory that @command{configure} is in and in @file{..}.  This is
+known as a @dfn{VPATH} build.
 
 With a address@hidden @command{make},
 it is safer to compile the package for one
@@ -146,7 +168,8 @@ By default, @samp{make install} installs the package's 
commands under
 @file{/usr/local/bin}, include files under @file{/usr/local/include}, etc.
 You can specify an
 installation prefix other than @file{/usr/local} by giving
address@hidden the option @address@hidden
address@hidden the option @address@hidden, where
address@hidden must be an absolute path.
 
 You can specify separate installation prefixes for architecture-specific
 files and architecture-independent files.  If you pass the option
@@ -158,16 +181,51 @@ regular prefix.
 In addition, if you use an unusual directory layout you can give options
 like @address@hidden to specify different values for
 particular kinds of files.  Run @samp{configure --help} for a list of
-the directories you can set and what kinds of files go in them.
+the directories you can set and what kinds of files go in them.  In
+general, the default for these options is expressed in terms of
address@hidden@address@hidden, so that specifying just @option{--prefix} will
+affect all of the other directory specifications.
+
+The most portable way to affect installation locations is to pass the
+correct locations to @command{configure}; however, many packages provide
+one or both of the following shortcuts of passing variable assignments
+to the @samp{make install} command line to change installation locations
+without having to reconfigure or recompile.
+
+The first method involves providing an override variable for each
+affected directory.  For example, @samp{make install
+prefix=/path/to/alternate} will choose an alternate location, as well as
+influencing all other directory configuration variables that were
+expressed in terms of @address@hidden@}} (or, put another way, all
+directories specified during @command{configure} but not in terms of the
+common prefix must each be overridden at install time for the entire
+installation to be relocated).  The approach of makefile variable
+overrides for each directory variable is required by the @acronym{GNU}
+Coding Standards, and ideally causes no recompilation.  However, some
+platforms have known limitations with the semantics of shared libraries
+that end up requiring recompilation when using this method, particularly
+noticeable in packages that use @acronym{GNU} Libtool.
+
+The second method involves providing the @samp{DESTDIR} variable.  For
+example, @samp{make install DESTDIR=/path/to/alternate} will prepend
address@hidden/path/to/alternate} before all installation paths.  The approach
+of @samp{DESTDIR} overrides is not required by the @acronym{GNU} Coding
+Standards, and does not work on platforms that have drive letters.  On
+the other hand, it does better at avoiding recompilation issues, and
+works well even when some directory options were not specified in terms
+of @address@hidden@}} at @command{configure} time.  For packages which
+support @samp{DESTDIR}, the variable should remain undefined during
address@hidden and @samp{make all}, and only be specified during
address@hidden install}.
+
address@hidden Optional Features
address@hidden Optional Features
 
 If the package supports it, you can cause programs to be installed with
 an extra prefix or suffix on their names by giving @command{configure}
 the option @address@hidden or
 @address@hidden
 
address@hidden Optional Features
address@hidden Optional Features
-
 Some packages pay attention to @address@hidden options
 to @command{configure}, where @var{feature} indicates an optional part
 of the package.  They may also pay attention to
@@ -182,6 +240,13 @@ doesn't, you can use the @command{configure} options
 @address@hidden and @address@hidden to
 specify their locations.
 
+Some packages offer the ability to configure how verbose the execution
+of @command{make} will be.  For these packages, running
address@hidden/configure --enable-silent-rules} sets the default to minimal
+output, which can be overridden with @code{make V=1}; while running
address@hidden/configure --disable-silent-rules} sets the default to verbose,
+which can be overridden with @code{make V=0}.
+
 @node Particular Systems
 @section Particular systems
 
diff --git a/doc/standards.texi b/doc/standards.texi
index c56fed8..088f2fa 100644
--- a/doc/standards.texi
+++ b/doc/standards.texi
@@ -3,7 +3,7 @@
 @setfilename standards.info
 @settitle GNU Coding Standards
 @c This date is automagically updated when you save this file:
address@hidden lastupdate April 16, 2009
address@hidden lastupdate June 7, 2009
 @c %**end of header
 
 @dircategory GNU organization
@@ -3742,15 +3742,10 @@ page explaining that you don't maintain it and that the 
Texinfo manual
 is more authoritative.  The note should say how to access the Texinfo
 documentation.
 
-Be sure that man pages include a copyright statement and free
-license.  The simple all-permissive license is appropriate for simple
-man pages:
-
address@hidden
-Copying and distribution of this file, with or without modification,
-are permitted in any medium without royalty provided the copyright
-notice and this notice are preserved.
address@hidden example
+Be sure that man pages include a copyright statement and free license.
+The simple all-permissive license is appropriate for simple man pages
+(@pxref{License Notices for Other Files,,,maintain,Information for GNU
+Maintainers}).
 
 For long man pages, with enough explanation and documentation that
 they can be considered true manuals, use the GFDL (@pxref{License for


hooks/post-receive
-- 
GNU Autoconf source repository




reply via email to

[Prev in Thread] Current Thread [Next in Thread]