guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 1/2] bootstrap: Break automake dependency on generated files.


From: Julien Lepiller
Subject: Re: [PATCH 1/2] bootstrap: Break automake dependency on generated files. (was Re: Let’s translate!)
Date: Wed, 24 Apr 2019 12:37:19 +0200

Le Wed, 24 Apr 2019 00:51:37 +0200,
Miguel <address@hidden> a écrit :

> Hi,
> 
> El Tue, 23 Apr 2019 16:30:26 +0200
> Ludovic Courtès <address@hidden> escribió:
> > Hello,
> > 
> > Julien Lepiller <address@hidden> skribis:
> >   
> > > This is a very good idea, but I think it leaves a stub texi that
> > > won't get rebuilt because it's younger than po files. What if we
> > > add a toucgh invocation to reset the modification time of these
> > > stubs, to ensure make will want to rebuild them?    
> > 
> > Also, I don’t actually use the ./bootstrap script.  :-)  
> 
> Currently it is only a call to autoreconf -fvi, but it's there for a
> reason, isn't it?
> 
> > Shouldn’t we instead replace the existing %.texi targets in
> > doc/local.mk with a phony target like ‘update-texi’, and then add:
> > 
> >   dist-hook: update-texi
> > 
> > ?  
> 
> The procedure needed currently to a new translation for the manual is:
>   1. modify doc/local.mk, po/doc/local.mk and so on. 
>   2. guix.LL.texi must be manually generated somehow even though it is
>   listed in BUILT_SOURCES.
>   3. automake can run without errors with the rules in order to
> generate the actual translated file.
>   4. The resulting files are committed.
> 
> The problem is that automake parses .texi files for the @setfilename
> tag. On the other hand, guix.LL.texi and contributing.LL.texi are
> generated files, and they shouldn't be on the VCS, just like neither
> configure nor Makefile.in are, though they are distributed. My patch
> tries to avoid this issue creating stub files that will be overwritten
> with the actual content. This has the advantage of keeping clean git
> status from other modifications than .po files changes.
> 
> This may sound familiar to this community, it actually is a bootstrap
> problem. Running autoreconf -fvi actually tells you that that file is
> missing, so that part is easy to fix. On the other hand, as far as I
> tested if it does not contain a line with version-LL.texi,
> version-LL.texi won't be generated.
> 
> Happy hacking,
> Miguel

I actually agree with Miguel here. The phony target would not allow us
to update the manual. It's probably a matter of preferences, but I
prefer an up to date manual with some English sentences than a fully
translated but outdated manual. I wouldn't use a manual that could
refer to an older version.

Also Miguel's solution looks a lot more clean in the bootstrapping
point of view, and I think this is a strong argument in this
community :)

You will only be bothered when new translations appear, in which case
you'll have to run ./bootstrap again, but on the other hand, you will
never be bothered by *.texi files being changed all the time.



reply via email to

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