You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by rp...@apache.org on 2020/07/13 10:29:12 UTC

svn commit: r1879822 - in /httpd/httpd/trunk: Makefile.in README.CHANGES acinclude.m4 changes/ configure.in

Author: rpluem
Date: Mon Jul 13 10:29:11 2020
New Revision: 1879822

URL: http://svn.apache.org/viewvc?rev=1879822&view=rev
Log:
Add a new way to document changes

* Makefile.in: Define the update-changes target to merge the change files
  from the changes directory to the top of the CHANGES file and remove
  them afterwards. If a Subversion binary was found during configure try
  to svn rm them otherwise just delete them.

* configure.in: Search for the Subversion binary.

* acinclude.m4: Set the corresponding Makefile variable for the Subversion
  binary.

* README.CHANGES: New file to document the new approach.

Added:
    httpd/httpd/trunk/README.CHANGES   (with props)
    httpd/httpd/trunk/changes/
Modified:
    httpd/httpd/trunk/Makefile.in
    httpd/httpd/trunk/acinclude.m4
    httpd/httpd/trunk/configure.in

Modified: httpd/httpd/trunk/Makefile.in
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/Makefile.in?rev=1879822&r1=1879821&r2=1879822&view=diff
==============================================================================
--- httpd/httpd/trunk/Makefile.in (original)
+++ httpd/httpd/trunk/Makefile.in Mon Jul 13 10:29:11 2020
@@ -166,6 +166,26 @@ docs:
 	    echo '  http://httpd.apache.org/docs-project/docsformat.html'; \
 	fi
 
+update-changes:
+	@for i in `find changes -type f`; do \
+	    cp CHANGES CHANGES.tmp ; \
+	    awk -vfname=$$i 'BEGIN{done = 0} \
+	                    done == 0 && /^Changes with Apache /{ active = 1; print; next}; \
+	                    /^ *\*/ && active == 1 && done == 0{rec=$$0; while(getline<fname){if (! ($$0 ~ /^ *$$/)){print}}printf "\n";print rec; active = 0; done = 1; next} //;' \
+	    CHANGES.tmp > CHANGES ; \
+	    rm CHANGES.tmp ; \
+	    if [ -n "$(SVN)" ] ; then \
+	        if ! $(SVN) rm $$i 2>/dev/null ; then \
+	            $(RM) $$i ; \
+	        fi ; \
+	    else \
+	        $(RM) $$i ; \
+	    fi ; \
+	done ; \
+	if [ -n "$(SVN)" ] ; then \
+	    $(SVN) diff CHANGES ; \
+	fi
+
 validate-xml:
 	@if test -d $(top_srcdir)/docs/manual/build; then \
 	    cd $(top_srcdir)/docs/manual/build && ./build.sh validate-xml; \

Added: httpd/httpd/trunk/README.CHANGES
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/README.CHANGES?rev=1879822&view=auto
==============================================================================
--- httpd/httpd/trunk/README.CHANGES (added)
+++ httpd/httpd/trunk/README.CHANGES Mon Jul 13 10:29:11 2020
@@ -0,0 +1,17 @@
+Changes can be documented in two ways now: Either by directly editing the
+CHANGES file like it was done until now or by storing each entry for the
+CHANGES file correctly formated in a separate file in the "changes" directory.
+
+The benefit of the single file per change approach is that it eases backporting
+the CHANGES entry to a stable branch as it avoids the frequent merge conflicts
+as changes are merged in different orders or not at all in the stable branch.
+
+In order to keep the current CHANGES file for the users as is there is a new
+make target called 'update-changes'. It merges all change files in the changes
+directory to the top of the CHANGES file and removes them afterwards.
+
+This make target can be seen in a similar way as the scripts to update the
+documentation files from its xml sources. It can be executed immediately
+after the new file in the changes directory has been created / merged
+and committed or it can executed later. It should be executed at least before
+a release gets tagged.

Propchange: httpd/httpd/trunk/README.CHANGES
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: httpd/httpd/trunk/acinclude.m4
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/acinclude.m4?rev=1879822&r1=1879821&r2=1879822&view=diff
==============================================================================
--- httpd/httpd/trunk/acinclude.m4 (original)
+++ httpd/httpd/trunk/acinclude.m4 Mon Jul 13 10:29:11 2020
@@ -82,6 +82,7 @@ AC_DEFUN([APACHE_GEN_CONFIG_VARS],[
   APACHE_SUBST(LIBTOOL)
   APACHE_SUBST(SHELL)
   APACHE_SUBST(RSYNC)
+  APACHE_SUBST(SVN)
   APACHE_SUBST(MODULE_DIRS)
   APACHE_SUBST(MODULE_CLEANDIRS)
   APACHE_SUBST(PORT)

Modified: httpd/httpd/trunk/configure.in
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/configure.in?rev=1879822&r1=1879821&r2=1879822&view=diff
==============================================================================
--- httpd/httpd/trunk/configure.in (original)
+++ httpd/httpd/trunk/configure.in Mon Jul 13 10:29:11 2020
@@ -408,6 +408,7 @@ dnl ## Check for programs
 AC_PATH_PROG(RM, rm)
 AC_PATH_PROG(PKGCONFIG, pkg-config)
 AC_PATH_PROG(RSYNC, rsync)
+AC_PATH_PROG(SVN, svn)
 AC_PROG_AWK
 AC_PROG_LN_S
 AC_CHECK_TOOL(RANLIB, ranlib, true)