lilypond-devel
[Top][All Lists]
Advanced

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

Re: PATCHES: Brain surgery on the build system, first stage


From: John Mandereau
Subject: Re: PATCHES: Brain surgery on the build system, first stage
Date: Mon, 06 Aug 2012 00:58:19 +0200

Hi Han-Wen,

Thanks for these comments, I'll submit another patch as soon as I get
back to my faster laptop to retest changes extensively.
Le samedi 04 août 2012 à 12:00 -0300, Han-Wen Nienhuys a écrit :
> * is there a need for vc-clean at all? People can just git clone the
> repo when they want to have a clean tree.

Right, so cvs-clean can die together with maintainerclean.


> * you may want to reindent this properly and use && for sequential execution
> 
>         case "$(OUT_DIST_FILES)x" in x) ;; *) \
>                 mkdir -p $(distdir)/$(localdir)/$(outdir); \
>                 $(LN) $(OUT_DIST_FILES) $(distdir)/$(localdir)/$(outdir);;

This is old code, but right '&&' is better (';' means sequential
execution too, doesn't it?  I guess you recommend '&&' to stop the
sequence of commands at first failure).


> +.gitfilelist: $(top-src-dir)/.git/index
> +       cd $(top-src-dir) && git ls-files >$(top-build-dir)/$@
> 
> * I would run git-status before dist (to enforce that the tree is
> clean) and take the file list exclusively from committed, so we can
> link the tarball and the git versions more strongly.

Agreed, then we could even append

GIT_COMMIT = committish

to VERSION (or a dedicated file).


> * If you want to go the extra mile, you can try to make the .tar.gz
> deterministic for a given git commit; you'd have to eliminate all
> timestamps (set them to the ts from the latest git commit for
> example).

As for the timestamps, this should be easy: such a ts can be obtained
with something like

git log --format=format:%cD |head -1

However, the contents of some files generated with Bison and makeinfo
might depend on the version of these programs, so I'm not sure we can
have a fully deterministic tarball; as tarballs we generate are made
with GUB, this is practically not a big deal, though.

Best,
John




reply via email to

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