Re: INSTALL nits
Paul Eggert <[email protected]>
| Newsgroups | gmane.comp.sysutils.autoconf.general |
|---|---|
| Organization | UCLA Computer Science Department |
| Message-ID | <[email protected]> |
On 2023-08-14 11:01, Gavin Smith wrote: > It makes no sense to include the Info cross-reference beginning "*note" > in a plain text file Thanks, fixed by installing the attached into Autoconf and propagating it into Gnulib. > Using ASCII quotes, like 'README', would be just as good here. I think the switch from ASCII came because Texinfo 7 defaults to UTF-8. To cater to any builders inconvenienced by UTF-8, a developer can ship the contents of INSTALL.ISO instead. As most builders moved on to UTF-8 some time ago, it should be OK for INSTALL itself to use it. > * A "bootstrap" command is recommended as the first step: > > The following shell commands: > > test -f configure || ./bootstrap > ./configure > make > make install > > should configure, build, and install this package. > > However, a "bootstrap" command does not exist in all packages (and isn't > specified by the GNU coding standards(*)), making this INSTALL file less > useful to include in other packages. It should be OK, as ‘test -f configure || ./bootstrap’ should work on any package following the GNU coding standards, even if there is no ‘bootstrap’. The attached patch tries to clarify this point. The ./bootstrap approach is increasingly popular, which is why we recently updated the Autoconf manual to cover it.
0001-Mention-.-bootstrap-privacy-implications.patch
(text/x-patch, 3.2 KB)
From b2b69331d6257a64ee520a2a219e49c62c70d4e1 Mon Sep 17 00:00:00 2001 From: Paul Eggert <[email protected]> Date: Tue, 15 Aug 2023 17:21:03 -0700 Subject: [PATCH] Mention ./bootstrap privacy implications * doc/install.texi: Fix some problems noted by Gavin Smith in: https://lists.gnu.org/r/autoconf/2023-08/msg00000.html --- doc/install.texi | 36 ++++++++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/doc/install.texi b/doc/install.texi index 6c3a9c21..b2ceae2e 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -19,8 +19,8 @@ make install @noindent should configure, build, and install this package. -The @command{./bootstrap} line is intended for developers; -you can omit it when building from a distribution tarball. +The first line, which bootstraps, is intended for developers; +when building from distribution tarballs it does nothing and can be skipped. The following more-detailed instructions are generic; see the @file{README} file for @@ -39,10 +39,12 @@ GNU Coding Standards}. the GNU Coding Standards. @end ifclear +Many packages have scripts meant for developers instead of ordinary +builders, as they may use developer tools that are less commonly installed, +or they may access the network, which has privacy implications. If the @command{bootstrap} shell script exists, it attempts to build the -@command{configure} shell script and related files, perhaps by -downloading other software components from the network, and by using -developer tools that are less commonly installed. Because the output of +@command{configure} shell script and related files, possibly +using developer tools or the network. Because the output of @command{bootstrap} is system-independent, it is normally run by a package developer so that its output can be put into the distribution tarball and ordinary builders and users need not run @command{bootstrap}. @@ -85,7 +87,8 @@ The simplest way to compile this package is: @item If this is a developer checkout and file @samp{configure} does not yet exist, type @samp{./bootstrap} to create it. -You may need special developer tools and network access to bootstrap. +You may need special developer tools and network access to bootstrap, +and the network access may have privacy implications. @item Type @samp{./configure} to configure the package for your system. @@ -397,15 +400,32 @@ the installation locations. @item --host=@var{type} Build binaries for system @var{type}. +@ifplaintext +See ``Specifying a System Type''. +@end ifplaintext +@ifnotplaintext @xref{System Types}. +@end ifnotplaintext @item --enable-@var{feature} @itemx --disable-@var{feature} -Enable or disable the optional @var{feature}. @xref{Optional Features}. +Enable or disable the optional @var{feature}. +@ifplaintext +See ``Optional Features''. +@end ifplaintext +@ifnotplaintext +@xref{Optional Features}. +@end ifnotplaintext @item --with-@var{package} @itemx --without-@var{package} -Use or omit @var{package} when building. @xref{Optional Features}. +Use or omit @var{package} when building. +@ifplaintext +See ``Optional Features''. +@end ifplaintext +@ifnotplaintext +@xref{Optional Features}. +@end ifnotplaintext @item --quiet @itemx --silent -- 2.39.2