grep-commit
[Top][All Lists]
Advanced

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

grep branch, master, updated. v3.7-19-g1ba972e


From: Paul Eggert
Subject: grep branch, master, updated. v3.7-19-g1ba972e
Date: Sat, 30 Oct 2021 19:31:21 -0400 (EDT)

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 "grep".

The branch, master has been updated
       via  1ba972edec7867c1592083363dc9fadfebf77e2e (commit)
      from  b3d082ce042fb162a5633702446abbfac2715b54 (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 -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit/grep.git/commit/?id=1ba972edec7867c1592083363dc9fadfebf77e2e


commit 1ba972edec7867c1592083363dc9fadfebf77e2e
Author: Paul Eggert <eggert@cs.ucla.edu>
Date:   Sat Oct 30 16:28:25 2021 -0700

    maint: modernize README-{hacking,prereq}

diff --git a/README-hacking b/README-hacking
index 77096b0..44cb75b 100644
--- a/README-hacking
+++ b/README-hacking
@@ -1,35 +1,47 @@
--*- outline -*-
+Building from a Git repository                         -*- outline -*-
 
 These notes intend to help people working on the checked-out sources.
 These requirements do not apply when building from a distribution tarball.
+If this package has a file HACKING, please also read that file for
+more detailed contribution guidelines.
 
 * Requirements
 
-We've opted to keep only the highest-level sources in the GIT repository.
-This eases our maintenance burden, (fewer merges etc.), but imposes more
+We've opted to keep only the highest-level sources in the Git repository.
+This eases our maintenance burden (fewer merges etc.), but imposes more
 requirements on anyone wishing to build from the just-checked-out sources.
-Note the requirements to build the released archive are much less and
-are just the requirements of the standard ./configure && make procedure.
+(The requirements to build from a release are much less and are just
+the requirements of the standard './configure && make' procedure.)
 Specific development tools and versions will be checked for and listed by
 the bootstrap script.  See README-prereq for specific notes on obtaining
 these prerequisite tools.
 
 Valgrind <http://valgrind.org/> is also highly recommended, if
-Valgrind supports your architecture. See also README-valgrind.
+Valgrind supports your architecture.  See also README-valgrind
+(if present).
 
 While building from a just-cloned source tree may require installing a
-few prerequisites, later, a plain 'git pull && make' should be sufficient.
+few prerequisites, later, a plain 'git pull && make' typically suffices.
 
-* First GIT checkout
+* First Git checkout
 
 You can get a copy of the source repository like this:
 
-        $ git clone git://git.sv.gnu.org/grep
-        $ cd grep
+        $ git clone git://git.sv.gnu.org/<packagename>
+        $ cd <packagename>
 
-As an optional step, if you already have a copy of the gnulib git
-repository on your hard drive, then you can use it as a reference to
-reduce download time and disk space requirements:
+where '<packagename>' stands for 'coreutils' or whatever other package
+you are building.
+
+To use the most-recent Gnulib (as opposed to the Gnulib version that
+the package last synchronized to), do this next:
+
+        $ git submodule foreach git pull origin master
+        $ git commit -m 'build: update gnulib submodule to latest' gnulib
+
+As an optional step, if you already have a copy of the Gnulib Git
+repository, then you can use it as a reference to reduce download
+time and file system space requirements:
 
         $ export GNULIB_SRCDIR=/path/to/gnulib
 
@@ -38,20 +50,14 @@ which are extracted from other source packages:
 
         $ ./bootstrap
 
-To use the most-recent gnulib (as opposed to the gnulib version that
-the package last synchronized to), do this next:
-
-        $ git submodule foreach git pull origin master
-        $ git commit -m 'build: update gnulib submodule to latest' gnulib
-
 And there you are!  Just
 
-        $ ./configure --quiet #[--enable-gcc-warnings] [*]
+        $ ./configure --quiet #[--disable-gcc-warnings] [*]
         $ make
         $ make check
 
 At this point, there should be no difference between your local copy,
-and the GIT master copy:
+and the Git master copy:
 
         $ git diff
 
@@ -59,12 +65,40 @@ should output no difference.
 
 Enjoy!
 
-[*] The --enable-gcc-warnings option is useful only with glibc
-and with a very recent version of gcc.  You'll probably also have
-to use recent system headers.  If you configure with this option,
-and spot a problem, please be sure to send the report to the bug
-reporting address of this package, and not to that of gnulib, even
-if the problem seems to originate in a gnulib-provided file.
+[*] By default GCC warnings are enabled when building from Git.
+If you get warnings with recent GCC and Glibc with default
+configure-time options, please report the warnings to the bug
+reporting address of this package instead of to bug-gnulib,
+even if the problem seems to originate in a Gnulib-provided file.
+If you get warnings with other configurations, you can run
+'./configure --disable-gcc-warnings' or 'make WERROR_CFLAGS='
+to build quietly or verbosely, respectively.
+-----
+
+* Submitting patches
+
+If you develop a fix or a new feature, please send it to the
+appropriate bug-reporting address as reported by the --help option of
+each program.  One way to do this is to use vc-dwim
+<https://www.gnu.org/software/vc-dwim/>), as follows.
+
+  Run the command "vc-dwim --initialize" from the top-level directory
+  of this package's git-cloned hierarchy.
+
+  Edit the (empty) ChangeLog file that this command creates, creating a
+  properly-formatted entry according to the GNU coding standards
+  <https://www.gnu.org/prep/standards/html_node/Change-Logs.html>.
+
+  Make your changes.
+
+  Run the command "vc-dwim" and make sure its output (the diff of all
+  your changes) looks good.
+
+  Run "vc-dwim --commit".
+
+  Run the command "git format-patch --stdout -1", and email its output
+  in, using the output's subject line.
+
 -----
 
 Copyright (C) 2002-2021 Free Software Foundation, Inc.
diff --git a/README-prereq b/README-prereq
index 267d0ee..4cc09eb 100644
--- a/README-prereq
+++ b/README-prereq
@@ -1,63 +1,40 @@
 This gives some notes on obtaining the tools required for development.
-I.E. the tools checked for by the bootstrap script and include:
+These tools can be used by the 'bootstrap' and 'configure' scripts,
+as well as by 'make'.  They include:
 
 - Autoconf   <https://www.gnu.org/software/autoconf/>
 - Automake   <https://www.gnu.org/software/automake/>
-- Bison      <https://www.gnu.org/software/bison/>
 - Gettext    <https://www.gnu.org/software/gettext/>
 - Git        <https://git-scm.com/>
-- Gperf      <https://www.gnu.org/software/gperf/>
 - Gzip       <https://www.gnu.org/software/gzip/>
+- Help2man   <https://www.gnu.org/software/help2man/>
+- M4         <https://www.gnu.org/software/m4/>
+- Make       <https://www.gnu.org/software/make/>
 - Perl       <https://www.cpan.org/>
 - Pkg-config <https://www.freedesktop.org/wiki/Software/pkg-config/>
-- Rsync      <https://rsync.samba.org/>
 - Tar        <https://www.gnu.org/software/tar/>
 - Texinfo    <https://www.gnu.org/software/texinfo/>
+- Wget       <http://www.gnu.org/software/wget/>
 - XZ Utils   <https://tukaani.org/xz/>
 
-Note please try to install/build official packages for your system.
-If these programs are not available use the following instructions
-to build them and install the results into a directory that you will
-then use when building this package.
+It is generally better to use official packages for your system.
+If a package is not officially available you can build it from source
+and install it into a directory that you can then use to build this
+package.  If some packages are available but are too old, install the
+too-old versions first as they may be needed to build newer versions.
 
-Even if the official version of a package for your system is too old,
-please install it, as it may be required to build the newer versions.
-The examples below install into $HOME/grep/deps/, so if you are
-going to follow these instructions, first ensure that your $PATH is
-set correctly by running this command:
+Here is an example of how to build a program from source.  This
+example is for Autoconf; a similar approach should work for the other
+developer prerequisites.  This example assumes Autoconf 2.71; it
+should be OK to use a later version of Autoconf, if available.
 
-  prefix=$HOME/grep/deps
+  prefix=$HOME/prefix   # (or wherever else you choose)
   export PATH=$prefix/bin:$PATH
-
-* autoconf *
-
-  # Note Autoconf 2.62 or newer is needed to build automake-1.11.1
-  git clone --depth=1 git://git.sv.gnu.org/autoconf.git
-  git checkout v2.62
-  autoreconf -vi
-  ./configure --prefix=$prefix
-  make install
-
-* automake *
-
-  # Note help2man is required to build automake fully
-  git clone git://git.sv.gnu.org/automake.git
-  cd automake
-  git checkout v1.11.1
-  ./bootstrap
-  ./configure --prefix=$prefix
-  make install
-
-This package uses XZ utils (successor to LZMA) to create
-a compressed distribution tarball.  Using this feature of Automake
-requires version 1.10a or newer, as well as the xz program itself.
-
-* xz *
-
-  git clone git://ctrl.tukaani.org/xz.git
-  cd xz
-  ./autogen.sh
+  wget https://ftp.gnu.org/pub/gnu/autoconf/autoconf-2.71.tar.gz
+  gzip -d <autoconf-2.71.tar.gz | tar xf -
+  cd autoconf-2.71
   ./configure --prefix=$prefix
   make install
 
-Now you can build this package as described in README-hacking.
+Once the prerequisites are installed, you can build this package as
+described in README-hacking.

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

Summary of changes:
 README-hacking | 88 ++++++++++++++++++++++++++++++++++++++++------------------
 README-prereq  | 65 ++++++++++++++-----------------------------
 2 files changed, 82 insertions(+), 71 deletions(-)


hooks/post-receive
-- 
grep



reply via email to

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