emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Makefile restructuring


From: Achim Gratz
Subject: Re: [O] Makefile restructuring
Date: Sun, 30 Oct 2011 08:33:16 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.90 (gnu/linux)

Michael Brand <address@hidden> 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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]