From mboxrd@z Thu Jan 1 00:00:00 1970 From: Achim Gratz Subject: Re: Makefile restructuring Date: Sun, 30 Oct 2011 08:33:16 +0100 Message-ID: <87ehxvlyrn.fsf@Rainer.invalid> References: <87k4bqwkyw.fsf@gnu.org> <87sjqejvob.fsf@Rainer.invalid> <87k4bqjnwu.fsf@Rainer.invalid> <87fwmdkind.fsf@Rainer.invalid> <874o2t81qu.fsf@gnu.org> <87liw43iys.fsf@Rainer.invalid> <8762n8d4ys.fsf@gnu.org> <87ei1u6u3q.fsf_-_@Rainer.invalid> <87hb6i3z1l.fsf@Rainer.invalid> <87bot1ph9h.fsf@Rainer.invalid> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([140.186.70.92]:59356) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RKPte-0001vR-2Z for emacs-orgmode@gnu.org; Sun, 30 Oct 2011 03:33:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RKPtc-000758-JP for emacs-orgmode@gnu.org; Sun, 30 Oct 2011 03:33:34 -0400 Received: from lo.gmane.org ([80.91.229.12]:47740) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RKPtc-00072V-8u for emacs-orgmode@gnu.org; Sun, 30 Oct 2011 03:33:32 -0400 Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1RKPta-0002Ig-PW for emacs-orgmode@gnu.org; Sun, 30 Oct 2011 08:33:30 +0100 Received: from p57aab460.dip.t-dialin.net ([87.170.180.96]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sun, 30 Oct 2011 08:33:30 +0100 Received: from Stromeko by p57aab460.dip.t-dialin.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sun, 30 Oct 2011 08:33:30 +0100 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Michael Brand writes: > I have looked into your branch only now. I think it is uncommon for > Makefiles how clean they look now and I appreciate how the Makefile > has been split up plus one is in doc/ and one in lisp/, that there are > no explicit xy.el any more and so on. Thank you for this work. Thank you for your comments. > Some comments: > > There is no @value{DATE}, missing already on master. Would it be ok to > remove setting the DATE or to include it in org.texi like the commit > message subject anticipates? I don't know why the DATE is currently unused, it looks like it never was as long as the git repository existed. I expect that when the Makefile starts to take care of it, it will become more useful. I did not yet change org.texi to keep the changeset minimal. > In the latter case it could be labeled > "build date" and optionally when available be enriched with "release > date", looked up from the git tag when make is running in a git repo > not dirty and if git is installed. Maybe "release date" could also > become visible in org-version when running from .el in a git repo not > dirty and if git is installed or when running from .elc built with the > same git requirement. Both would help users to be aware of how > outdated their version is and more. These are only suggestions, else > I'm fine with removing DATE. Right now git-describe.texi is re-built when org.texi changes, but the date recorded and the git-describe are of the build time/version. I need to figure out how to get the actual date of the last change plus the git describe for that. If that doesn't work I will just change it to always record the build date and version, just like org-version. > I would prefer the file/target name variables.texi instead of > git-describe.texi as git describe is not necessarily involved and must > not be a requirement. Sure, this is just a first suggestion to demonstrate how it might work. > Did you check this?: > - make info when not in a git repo No, and currently it probably breaks. But it isn't too difficult to keep the old file in that case. > - make info when in a git repo but git is not installed Ditto. > In case the errors are confirmed: My guess is that again you have a > better solution than me and I don't propose a patch yet. (org-version) > uses (file-exists-p (expand-file-name ".git" dir)) and > (executable-find "git") for this. You are talking about org-version here? That code is not mine (I only added another defconst to be able to record the version string during install). I have never tried what happens when not installed and no git is present... so please if that does indeed break put a patch to master, as the problem should already be present there. AFAIK the code should just drop down to no appending the description string. > The default make target has been changed from "all" to "targets help". > Is this standard? I assume that you considered that this can break the > target "org-mode" of some upper level Makefile from users (and > Emacs?). GNU Makefile standards ask that a help target be available and that make without arguments should show the help rather than freak you out with starting to do something you may not have wanted to do. One could certainly decide on a different standard if there's a good reason for that. Again, Emacs has its own, totally unrelated build system. Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Wavetables for the Terratec KOMPLEXER: http://Synth.Stromeko.net/Downloads.html#KomplexerWaves