From: Bill W. <wo...@ne...> - 2011-04-29 04:46:17
|
Ted Phelps <ph...@ma...> wrote: > Bill Wohler writes: > > Before we can check anything new into MH-E, we need to configure MH-E to > > use bzr, which is what the Emacs project is now using. My plan is to > > make the switch and cut a 8.3 release. > > Ok. > > > In the past, CVS MH-E users would check out the SourceForge bits, and > > then "make" would pull the rest from the Emacs CVS repository. There > > doesn't seem to be a small, quick, way to check out just MH-E in bzr. > > While "bzr export" seems to be the ticket, it still checks out more than > > I would like. Suggestions, welcome! > > I should have some free time next week to look into this. I'm afraid I > never worked out how the SourceForge bits were supposed to work when we > were still using CVS, so let me make sure that I understand what you > were aiming for then and where you'd like to go now. >From the MH-E README: * CVS MH-E INSTALL After checking out the src module, you must run `make emacs' or just `make' to check out the rest of the module from Savannah. Then follow the steps that apply to you in INSTALL above. Developers should run `make emacs-devel' which checks out all of Emacs using the $USER environment variable as their Savannah login. However, they can also get the minimum MH-E source with `make CVSMETHOD=ext CVSLOGIN=$USER emacs'. > Was the idea to have cutting-edge MH-E development happen on > Sourceforge and then occasionally push that to the GNU emacs people? > Or was it to isolate MH-E from any specific emacs variant (GNU emacs > vs xemacs)? It helps to know that SourceForge holds very little of the MH-E source. It only contains those files that can not be contained in the Emacs repository (Debian files, XEmacs files, etc.). As you might have gathered from the README excerpt above, the Makefile in the CVS repository at SourceForge is used to bootstrap the process. This does not apply to folks who install the tarball, it only affects those users who want to check out the bzr bits. > Would a branch be a feasible alternative here? If not, what are the > objections you have? I'm not sure what you mean by a branch in this context or how it could help. Ultimately, I will flip the SourceForge repository from CVS to bzr, and the Makefile will check out the rest of MH-E from the Emacs repository with bzr for CVS--now bzr--users and developers. The goal is for bzr users to avoid having to endure a 300 MB, 30 minute download. The developers will still need to download a bzr snapshot though. It would be interesting to know if this is a feature that MH-E users still desire. Maybe we could just drop it? This might be a quick and dirty solution for the bzr release. We could see if anyone notices :-). I'll start a conversation on mh-users. At any rate, I've appended a diff from the work I started before I got busy with buying a house to help you get started. There are bzr for Emacs CVS users web pages out there which I found useful. -- Bill Wohler <wo...@ne...> aka <Bil...@na...> http://www.newt.com/wohler/ GnuPG ID:610BD9AD --- src-8.2/Makefile 2008-08-18 21:55:38.000000000 -0700 +++ ./Makefile 2010-05-25 23:17:05.000000000 -0700 @@ -1,6 +1,6 @@ # Makefile for MH-E. -# Copyright (C) 2003, 2004, 2005, 2006 Bill Wohler +# Copyright (C) 2003, 2004, 2005, 2006, 2010 Bill Wohler # This file is part of MH-E. @@ -25,12 +25,9 @@ # TOP = .. -CVSROOT = cvs.savannah.gnu.org:/cvsroot/emacs +URL = http://bzr.savannah.gnu.org/r/emacs/trunk -CVSLOGIN = anoncvs - -# Developers can use "ext". -CVSMETHOD = pserver +DEV_URL = sftp://wo...@bz.../srv/bzr/emacs/trunk # Program to install files INSTALL = install -m 644 @@ -150,6 +147,12 @@ emacs/etc/images/zoom-out.pbm \ emacs/etc/images/zoom-out.xpm +# Other Emacs MH-E files +MH_E_EMACS_ETC = \ + emacs/etc/MH-E-NEWS \ + emacs/lisp/mh-e/ChangeLog \ + emacs/lisp/mh-e/ChangeLog.1 + # Other MH-E files. MH_E_ETC = \ COPYING \ @@ -157,9 +160,7 @@ ChangeLog.1 \ Makefile \ README \ - emacs/etc/MH-E-NEWS \ - emacs/lisp/mh-e/ChangeLog \ - emacs/lisp/mh-e/ChangeLog.1 + $(MH_E_EMACS_ETC) # MH-E maintainer files. MH_E_MAINT = \ @@ -239,13 +240,16 @@ # Check out emacs directory if necessary. emacs: - cvs -d :$(CVSMETHOD):$(CVSLOGIN)@$(CVSROOT) co emacs/lisp/mh-e - cvs -d :$(CVSMETHOD):$(CVSLOGIN)@$(CVSROOT) co -l emacs/etc/MH-E-NEWS \ - emacs/etc/NEWS emacs/etc/ChangeLog \ - emacs/etc/images emacs/etc/images/mail + bzr export $(URL)/lisp/mh-e + bzr export $(URL)$(MH_E_IMG) $(MH_E_EMACS_ETC) \ + emacs/etc/NEWS emacs-devel: - cvs -d $(USER)@$(CVSROOT) co emacs + bzr whoami + @echo Run bzr whoami \"Your Name <lo...@ho...>\" if this is not correct + echo bzr init-repo --2a emacs + @echo Checking out Emacs repository (will take about half an hour)... + echo bzr co $(DEV_URL) # The .PHONY targets are always considered to be out-of-date. # This rule needs to be after the ``all'' rule for compatibility |