From 002702c89c77479cb1d950f28a32691d0bdcc309 Mon Sep 17 00:00:00 2001 From: Paul Smith Date: Sat, 12 Jan 2013 19:31:13 -0500 Subject: Modify instructions, etc. for Git support. --- ChangeLog | 4 ++-- ChangeLog.2 | 4 ++-- Makefile.DOS.template | 2 +- Makefile.am | 4 ++-- README.cvs | 66 ++++++++++++++++++++++++++------------------------- README.template | 14 +++++------ build_w32.bat | 4 ++-- maintMakefile | 33 +++++++------------------- prepare_w32.bat | 2 +- 9 files changed, 60 insertions(+), 73 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9c562be..5926f7d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4566,9 +4566,9 @@ -See ChangeLog.2, available in the CVS repository at: +See ChangeLog.2, available in the Git repository at: - http://savannah.gnu.org/cvs/?group=make + http://git.savannah.gnu.org/cgit/make.git/tree/ for earlier changes. diff --git a/ChangeLog.2 b/ChangeLog.2 index 9a3a19f..1705b76 100644 --- a/ChangeLog.2 +++ b/ChangeLog.2 @@ -6630,9 +6630,9 @@ Fri Nov 1 19:34:28 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) -See ChangeLog.1, available in the CVS repository at: +See ChangeLog.1, available in the Git repository at: - http://savannah.gnu.org/cvs/?group=make + http://git.savannah.gnu.org/cgit/make.git/tree/ for earlier changes. diff --git a/Makefile.DOS.template b/Makefile.DOS.template index 0f0b970..59c34a8 100644 --- a/Makefile.DOS.template +++ b/Makefile.DOS.template @@ -506,7 +506,7 @@ html # dist-hook: (cd $(srcdir); \ - w32=`find w32 -follow \( -name CVS -prune \) -o -type f -print`; \ + w32=`find w32 -follow \( -name .git -prune \) -o -type f -print`; \ tar chf - $$w32) \ | (cd $(distdir); tar xfBp -) diff --git a/Makefile.am b/Makefile.am index 47f2919..c5ea81f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -144,7 +144,7 @@ gmk-default.h: $(srcdir)/gmk-default.scm # dist-hook: (cd $(srcdir); \ - sub=`find w32 tests -follow \( -name CVS -o -name .deps -o -name work -o -name .cvsignore -o -name \*.orig -o -name \*.rej -o -name \*~ -o -name Makefile \) -prune -o -type f -print`; \ + sub=`find w32 tests -follow \( -name .git -o -name .deps -o -name work -o -name .gitignore -o -name \*.orig -o -name \*.rej -o -name \*~ -o -name Makefile \) -prune -o -type f -print`; \ tar chf - $$sub) \ | (cd $(distdir); tar xfBp -) @@ -206,7 +206,7 @@ check-regression: # --------------- Maintainer's Section # Tell automake that I haven't forgotten about this file and it will be -# created before we build a distribution (see maintMakefile in the CVS +# created before we build a distribution (see maintMakefile in the Git # distribution). README: diff --git a/README.cvs b/README.cvs index cb694c2..1b5a315 100644 --- a/README.cvs +++ b/README.cvs @@ -17,35 +17,26 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . ------------------------------------------------------------------------------- -Obtaining CVS Code +Obtaining Git Code ------------------ This seems redundant, since if you're reading this you most likely have -already performed this step; however, for completeness, you can obtain -the GNU make source code via anonymous CVS from the FSF's Savannah -project : +already performed this step; however, for completeness, you can obtain the GNU +make source code via Git from the FSF's Savannah project +: - $ cvs -d:pserver:anoncvs@cvs.savannah.gnu.org:/sources/make co make + $ git clone git://git.savannah.gnu.org/make.git -You might want to use the "-z3" option to get compression, and you most -certainly will want the -P option to avoid unneeded directories -cluttering up your source. Personally I add these (as well as -dP for -update) to my ~/.cvsrc file. - -If you have an older version of CVS, you might have to login first. -There is no password; just hit the ENTER key if you are asked for one. - - -Building From CVS +Building From Git ----------------- -To build GNU make from CVS, you will need Autoconf, Automake, and +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.in file to find the minimum versions of each of these tools. You will also need a copy of wget. -When building from CVS you must build in the source directory: "VPATH +When building from Git you must build in the source directory: "VPATH builds" from remote directories are not supported. Once you've created a distribution, of course, you can unpack it and do a VPATH build from there. @@ -77,7 +68,7 @@ to the point where you can run "make". a platform-local make you may get problems with missing files in doc/. -At this point you have successfully brought your CVS copy of the GNU +At this point you have successfully brought your Git copy of the GNU make source directory up to the point where it can be treated more-or-less like the official package you would get from ftp.gnu.org. That is, you can just run: @@ -87,7 +78,7 @@ That is, you can just run: to build and install GNU make. -Windows builds from CVS +Windows builds from Git ----------------------- If you have a UNIX emulation like CYGWIN you can opt to run the general @@ -132,16 +123,24 @@ before making an official release: * Update the configure.in file with the new release number. * Update the NEWS file with the release number and date. + * In Savannah modify the "Value", "Rank", and "Description" values for the + current "SCM" entry in both "Component Version" and "Fix Release" fields + to refer to the new release, for "Bugs" and "Patches". + * Update the Savannah bug list URL in the NEWS file to use the correct + "Fixed Release" ID number. + * In Savannah create a new entry for the "Component Version" and "Fix + Release" fields: + - Value: SCM + - Rank: 20 + - Descr: Fixed in Git; will be available in the next version of Make. + * Run "make distcheck" to be sure it all works. + * git tag -u where GPGID is my GPG key fingerprint, + and VER is the release version. + * Push everything. * Create the new release in the Savannah "Bugs" Administration for both the "Component Version" and "Fixed Release" fields. * Create the new release in the Savannah "Patches" Administration for the "Fixed Release" field. - * Update the Savannah bug list URL in the NEWS file to use the correct - "Fixed Release" ID number. - * Run "make distcheck" to be sure it all works. - * Commit everything. - * cvs tag where RTAG is constructed by replacing each "." in - the version with "-" and prefixing it with "make-". Publishing a Package @@ -151,12 +150,11 @@ In order to publish a package on the FSF FTP site, either the release site ftp://ftp.gnu.org, or the prerelease site ftp://alpha.gnu.org, you first need to have my GPG private key and my passphrase to unlock it. And, you can't have them! So there! But, just so I remember here's -what you do: +what to do: Make sure the "Steps to Release" are complete and committed and tagged. - cvs -d :pserver:anonymous@cvs.savannah.gnu.org:/sources/make \ - export -r -d make-release make + git clone git://git.savannah.gnu.org/make.git make-release cd make-release @@ -166,7 +164,10 @@ what you do: -OR- make upload-ftp # for ftp.gnu.org (official releases) -It will ask for the GPG passphrase _THREE_ times. Sigh. +Depending on your distribution (whether GnuPG is integrated with your keyring +etc.) it will either pop up a window asking for your GPG key passphrase one +time, or else it will use the CLI to ask for the GPG passphrase _THREE_ times. +Sigh. For both final releases and pre-releases, send an email with the URL of @@ -185,8 +186,9 @@ Create the announcement in a text file, then sign it with GPG. Upload to gnu.org, then login and send from my account there. -Email to: make-alpha@gnu.org, bug-make@gnu.org, help-make@gnu.org, make-w32@gnu.org. -Email to: info-gnu@gnu.org +To: bug-make@gnu.org, help-make@gnu.org, make-w32@gnu.org +CC: info-gnu@gnu.org +BCC: make-alpha@gnu.org Add a news item to the Savannah project site. @@ -198,7 +200,7 @@ Appendix A - For The Brave For those of you who trust me implicitly, or are just brave (or foolhardy), here is a canned sequence of commands to build a GNU make -distribution package from a virgin CVS source checkout (assuming all the +distribution package from a virgin Git source checkout (assuming all the prerequisites are available of course). This list is eminently suitable for a quick swipe o' the mouse and a diff --git a/README.template b/README.template index 1ea8046..f3fa28d 100644 --- a/README.template +++ b/README.template @@ -82,19 +82,19 @@ If you need help using GNU make, try these forums: news:gnu.utils.bug -CVS Access +Git Access ---------- -The GNU make source repository is available via anonymous CVS from the -GNU Subversions CVS server; look here for details: +The GNU make source repository is available via Git from the +GNU Savannah Git server; look here for details: - http://savannah.gnu.org/cvs/?group=make + http://savannah.gnu.org/git/?group=make -Please note: you won't be able to build GNU make from CVS without +Please note: you won't be able to build GNU make from Git without installing appropriate maintainer's tools, such as GNU m4, automake, -autoconf, Perl, GNU make, and GCC. See the README.cvs file for hints on +autoconf, Perl, GNU make, and GCC. See the README.git file for hints on how to build GNU make once these tools are available. We make no -guarantees about the contents or quality of the latest code in the CVS +guarantees about the contents or quality of the latest code in the Git repository: it is not unheard of for code that is known to be broken to be checked in. Use at your own risk. diff --git a/build_w32.bat b/build_w32.bat index 968ceae..36aeea3 100644 --- a/build_w32.bat +++ b/build_w32.bat @@ -15,11 +15,11 @@ rem rem You should have received a copy of the GNU General Public License along rem with this program. If not, see . -if exist config.h.W32 GoTo NotCVS +if exist config.h.W32 GoTo NotSCM sed -n "s/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/s,%%VERSION%%,\1,g/p" configure.in > config.h.W32.sed echo s,%%PACKAGE%%,make,g >> config.h.W32.sed sed -f config.h.W32.sed config.h.W32.template > config.h.W32 -:NotCVS +:NotSCM if not exist config.h copy config.h.W32 config.h rem Guile configuration diff --git a/maintMakefile b/maintMakefile index 9b463d9..a857897 100644 --- a/maintMakefile +++ b/maintMakefile @@ -1,5 +1,5 @@ # Maintainer-only makefile segment. This contains things that are relevant -# only if you have the full copy of the GNU make sources from the CVS +# only if you have the full copy of the GNU make sources from the Git # tree, not a dist copy. # We like mondo-warnings! @@ -83,31 +83,16 @@ DEP_FILES := $(wildcard $(DEPDIR)/*.Po) < $$f; \ done) > $@ -# Get rid of everything "else". -# -maintFILES = configure aclocal.m4 config.h.in Makefile.in stamp-h.in - -CVS-CLEAN-FILES += $(maintFILES) $(TEMPLATES) $(MTEMPLATES) NMakefile \ - build.sh.in .deps .dep_segment ABOUT-NLS \ - ansi2knr.* - -# This rule tries to clean the tree right down to how it looks when you do a -# virgin CVS checkout. +# Cleaning -# This target is potentially dangerous since it removes _ANY FILE_ that -# is not in CVS. Including files you might mean to add to CVS but -# haven't yet... I only use this in subdirectories where it's unlikely -# we have any new files. Still... be careful!! +GIT := git -cvsclean = $(PERL) -e '$$k{CVS} = 1; open(E,"< CVS/Entries") || die "CVS/Entries: $$!\n"; while (defined ($$_ = )) { m%^/([^/]*)% or next; $$k{$$1} = 1; } close(E) || die "CVS/Entries: $$!\n"; opendir(D, ".") || die ".: $$!\n"; while (defined ($$_ = readdir(D))) { -f $$_ && ! exists $$k{$$_} && unlink($$_); } closedir(D) || die ".: $$!\n";' +# This rule cleans out the tree right down to how it looks when you do a +# vanilla Git checkout. It depends on correct .gitignore file content. -.PHONY: cvs-clean -cvs-clean: maintainer-clean - -rm -rf *~ $(CVS-CLEAN-FILES) - -cd config && $(cvsclean) - -cd po && $(cvsclean) - -cd doc && $(cvsclean) - -cd glob && $(cvsclean) +.PHONY: git-clean +git-clean: + -$(GIT) clean -fdX # ---------------------------------------------------------------------- @@ -201,7 +186,7 @@ update: po-update scm-update ## Sanity checks. ## ## --------------- ## -# Checks that don't require cvs. Run 'changelog-check' last as +# 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/prepare_w32.bat b/prepare_w32.bat index e16b784..7591e27 100644 --- a/prepare_w32.bat +++ b/prepare_w32.bat @@ -1,5 +1,5 @@ @echo off -@echo Windows32 CVS build preparation of config.h.W32 and NMakefile. +@echo Windows32 SCM build preparation of config.h.W32 and NMakefile. if not exist config.h.W32 copy config.h.W32.template config.h.W32 if not exist config.h copy config.h.W32 config.h if not exist NMakefile copy NMakefile.template NMakefile -- cgit v1.2.3