]> git.ipfire.org Git - thirdparty/make.git/commitdiff
Convert to auto-generated ChangeLog files.
authorPaul Smith <psmith@gnu.org>
Sun, 13 Oct 2013 14:54:32 +0000 (10:54 -0400)
committerPaul Smith <psmith@gnu.org>
Sun, 13 Oct 2013 20:48:22 +0000 (16:48 -0400)
Rename existing ChangeLog files so they won't be distributed.
Add targets to maintMakefile to generate ChangeLog from the Git
repository.  This will require a version of gnulib be available.
Because ChangeLog is auto-generated, we have to switch our
automake mode to "foreign" or it will complain and fail.

.gitignore
ChangeLog.3 [moved from ChangeLog with 100% similarity]
Makefile.am
README.git
config/ChangeLog.1 [moved from config/ChangeLog with 100% similarity]
configure.ac
doc/Makefile.am
maintMakefile
po/ChangeLog [deleted file]
tests/ChangeLog.1 [moved from tests/ChangeLog with 100% similarity]

index 0173826b6dec1b7ac3fb4322f71d4644b5aee3a1..24db93070b8aebc376e4488b56bd0ff25418da0e 100644 (file)
@@ -29,6 +29,8 @@ make
 
 # Distribution artifacts
 .dep_segment
+.check-git-HEAD
+ChangeLog
 Makefile.DOS
 NMakefile
 README
similarity index 100%
rename from ChangeLog
rename to ChangeLog.3
index 5156f4743fe58b0fedc6179b3debabd7376b07ee..8cbfe7ee344f9ebef8129e4c4a6ff7eb281db102 100644 (file)
@@ -90,13 +90,6 @@ EXTRA_DIST = README build.sh.in $(man_MANS) \
 
 DISTCLEANFILES = build.sh
 
-# Forward targets
-
-html:
-       cd doc && $(MAKE) $(AM_MAKEFLAGS) $@
-
-.PHONY: html
-
 # --------------- Internationalization Section
 
 localedir =    $(datadir)/locale
index 8af5815894adbfb84368b64856650a6486fb27d6..b83ae3219187c4c818c87677df0d7043ee0aadc1 100644 (file)
@@ -31,12 +31,16 @@ make source code via Git from the FSF's Savannah project
 Changes using Git
 -----------------
 
-For non-developers, please continue to provide patches as before, or if you
+For non-developers, you can continue to provide patches as before, or if you
 make a public repository I can pull from that if you prefer.
 
-For developers, I'm still new to Git myself, so I don't have a ton of advice.
-In this release we will continue to create ChangeLog files by hand so please
-don't forget to update the ChangeLog.
+Starting with GNU make 4.0 we no longer keep a separate ChangeLog file in
+source control.  We use the Gnulib git-to-changelog conversion script to
+convert the Git comments into ChangeLog-style entries for release.  As a
+result, please format your Git comments carefully so they will look clean
+after conversion.  In particular, each line of your comment will have a TAB
+added before it so be sure your comment lines are not longer than 72
+characters; prefer 70 or less.
 
 Rule #1: Don't rewrite pushed history (don't use "git push --force").
 
@@ -73,7 +77,7 @@ Building From Git
 To build GNU make from Git, you will need Autoconf, Automake, and
 Gettext, and any tools that those utilities require (GNU m4, Perl,
 etc.).  See the configure.ac file to find the minimum versions of each
-of these tools.  You will also need a copy of wget.
+of these tools.  You will also need a copy of wget and gnulib.
 
 When building from Git you must build in the source directory: "VPATH
 builds" from remote directories are not supported.  Once you've created
similarity index 100%
rename from config/ChangeLog
rename to config/ChangeLog.1
index c5b8b6b63fd1a9663370d598e3c7e548cb9a01aa..7bf9cccb1adc89131cb54788356d1a95f3823fe9 100644 (file)
@@ -26,7 +26,8 @@ AC_CONFIG_SRCDIR([vpath.c])
 AC_CONFIG_HEADERS([config.h])
 
 # Automake setup
-AM_INIT_AUTOMAKE([1.11.1 silent-rules])
+# We have to enable "foreign" because ChangeLog is auto-generated
+AM_INIT_AUTOMAKE([1.11.1 silent-rules foreign -Wall -Werror])
 
 # Checks for programs.
 AC_PROG_CC
index ed519a17cad69bb99160e9fd4f84be4ef3822542..22422599dd49c1c50ebd863a407642fddd75e3a8 100644 (file)
@@ -22,14 +22,3 @@ info_TEXINFOS =      make.texi
 make_TEXINFOS = fdl.texi make-stds.texi
 
 CLEANFILES = make*.html
-
-## ----------------------------- ##
-## Other documentation formats.  ##
-## ----------------------------- ##
-
-html: make_1.html
-
-make_1.html: $(info_TEXINFOS) $(make_TEXINFOS)
-       $(TEXI2HTML) $(TEXI2HTML_FLAGS) $(srcdir)/make.texi
-
-.PHONY: html
index 12150a8b7b5be5d9b49cba3b5fb121f85bfef9de..da5361f2c7571866c7f1a376639062afdbbdf719 100644 (file)
@@ -2,7 +2,14 @@
 # only if you have the full copy of the GNU make sources from the Git
 # tree, not a dist copy.
 
+BUGLIST := bug-make@gnu.org
+
+# These are related to my personal setup.
 GPG_FINGERPRINT := 6338B6D4
+SRCROOTDIR := $(HOME)/src
+GNULIBDIR := $(SRCROOTDIR)/gnulib
+MAKEWEBDIR := $(SRCROOTDIR)/make/make-web
+GNUWEBDIR := $(SRCROOTDIR)/gnu-www
 
 # We like mondo-warnings!
 AM_CFLAGS += -Wall -Wextra -Wdeclaration-after-statement -Wshadow -Wpointer-arith -Wbad-function-cast
@@ -99,10 +106,27 @@ git-very-clean: git-clean
        -$(GIT) clean -fd
 
 
-# ----------------------------------------------------------------------
-#
-# The sections below were stolen from the Makefile.maint used by fileutils,
-# sh-utils, textutils, CPPI, Bison, and Autoconf.
+
+## ---------------------- ##
+## Generating ChangeLog.  ##
+## ---------------------- ##
+
+gl2cl-date := 2013-10-10
+gl2cl := $(GNULIBDIR)/build-aux/gitlog-to-changelog
+
+# Rebuild the changelog whenever a new commit is added
+ChangeLog: .check-git-HEAD
+       if test -f '$(gl2cl)'; then \
+           '$(gl2cl)' --since='$(gl2cl-date)' > '$@'; \
+       else \
+           echo "WARNING: $(gl2cl) is not available.  No $@ generated."; \
+       fi
+
+.PHONY: .check-git-HEAD
+.check-git-HEAD:
+       sha="`git rev-parse HEAD`"; \
+       [ -f '$@' ] && [ "`cat '$@' 2>/dev/null`" = "$$sha" ] \
+           || echo "$$sha" > '$@'
 
 
 ## ---------------- ##
@@ -210,10 +234,6 @@ checkcfg.%: distdir
        && $(MAKE) $(AM_MAKEFLAGS) check
 
 
-.PHONY: update
-update: po-update scm-update
-
-
 ## --------------- ##
 ## Sanity checks.  ##
 ## --------------- ##
@@ -221,6 +241,8 @@ update: po-update scm-update
 # Before we build a distribution be sure we run our local checks
 #distdir: local-check
 
+.PHONY: local-check po-check changelog-check
+
 # Checks that don't require Git.  Run 'changelog-check' last as
 # previous test may reveal problems requiring new ChangeLog entries.
 local-check: po-check changelog-check
diff --git a/po/ChangeLog b/po/ChangeLog
deleted file mode 100644 (file)
index cd7de0c..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-2013-01-06  Paul Smith  <psmith@gnu.org>
-
-       * POTFILES.in: Add new load.c file.
-
-2012-01-12  Paul Smith  <psmith@gnu.org>
-
-       * POTFILES.in: Add new guile.c file.
-
-2011-09-26  Paul Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added new translation file for Czech (cs).
-
-2009-09-16  Paul Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added new translation for Italian (it).
-
-2008-05-17  Paul Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added new translation for Lithuanian (lt).
-
-2007-08-15  Paul Smith  <psmith@gnu.org>
-
-       * LINGUAS: The Kinyarwanda (rw) translation has disappeared from
-       the translation site, so remove it.
-
-2006-01-28  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added new translation for Vietnamese (vi).
-
-2005-07-14  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added new translation for Indonesian (id).
-
-2005-05-09  Paul D. Smith  <psmith@gnu.org>
-
-       * POTFILES.in: Add new file vmsjobs.c.
-
-2005-04-06  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added a new translation for Kinywarwanda (rw).
-
-2005-02-09  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added a new translation for Irish (ga).
-
-2005-02-01  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added a new translation for Finnish (fi).
-
-2003-10-18  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added a new translation for Belarusian (be).
-
-2002-12-19  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Added a new translation for Ukrainian (uk).
-
-2002-10-05  Paul D. Smith  <psmith@gnu.org>
-
-       * POTFILES.in: Add variable.h as it has a translatable string.
-
-2002-08-08  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Add a new translation for Chinese (simplified) (zh_CN).
-
-2002-08-02  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS: Add a new translation for Swedish (sv).
-
-2002-04-21  Paul D. Smith  <psmith@gnu.org>
-
-       * LINGUAS, hr.po: Added new translation: Croatian.
-
-       * da.po, de.po, es.po, fr.po, gl.po, he.po, ja.po, ko.po, nl.po,
-       pl.po, pt_BR.po, ru.po, tr.po: Moved from i18n to here.
-       * .cvsignore: Moved from i18n to here.
-
-       * POTFILES.in, LINGUAS, Makevars: Created.
-\f
-Copyright (C) 2002-2013 Free Software Foundation, Inc.
-This file is part of GNU Make.
-
-GNU Make is free software; you can redistribute it and/or modify it under the
-terms of the GNU General Public License as published by the Free Software
-Foundation; either version 3 of the License, or (at your option) any later
-version.
-
-GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
-A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program.  If not, see <http://www.gnu.org/licenses/>.
similarity index 100%
rename from tests/ChangeLog
rename to tests/ChangeLog.1