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.From b2b69331d6257a64ee520a2a219e49c62c70d4e1 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@xxxxxxxxxxx>
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