* Makevars handling in 'bootstrap'
@ 2019-05-05 19:30 Bruno Haible
2019-05-05 21:12 ` Paul Eggert
0 siblings, 1 reply; 3+ messages in thread
From: Bruno Haible @ 2019-05-05 19:30 UTC (permalink / raw)
To: bug-gnulib
Hi Paul,
Tim Rühsen tells me that one of the problems he had yesterday with Makevars
is that 'bootstrap' overwrites po/Makevars with one that substitutes values
from bootstrap.conf.
This has several drawbacks:
* In the gettext documentation, Makevars is documented [1] as a file that
the maintainer has to create. With 'bootstrap', it is not documented
what to do with the file.
* In the Makevars.template, there are comments explaining each variable
that can be set. 'bootstrap' allows the user to set EXTRA_LOCALE_CATEGORIES,
COPYRIGHT_HOLDER, MSGID_BUGS_ADDRESS, but none of these has a comment
in the template bootstrap.conf.
* In the Makevars.template, there are other variables: PACKAGE_GNU,
USE_MSGCTXT, MSGMERGE_OPTIONS, MSGINIT_OPTIONS. These cannot be set
through bootstrap.conf. Tim has had to find a workaround in order to
be able to set PACKAGE_GNU.
* The Makevars approach supports packages with multiple po/ directories
(and thus multiple domains). The 'bootstrap' does not. But it has a
special case, probably coming from bison's need, to handle a
$package-runtime domain.
I would suggest to entirely remove the Makevars handling from 'bootstrap',
and instead let the maintainers create a Makevars file by hand, according
to the documentation - like they also create configure.ac and Makefile.am
files by hand.
I'm not responsible for 'bootstrap'. But I'm responsible for gettext,
and here what I see is that 'bootstrap' attempts to offer similar customizations
as Makevars does but does so in a way that introduces drawbacks and conflicts
with the gettext documentation.
Bruno
[1] https://www.gnu.org/software/gettext/manual/html_node/po_002fMakevars.html
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Makevars handling in 'bootstrap'
2019-05-05 19:30 Makevars handling in 'bootstrap' Bruno Haible
@ 2019-05-05 21:12 ` Paul Eggert
2019-05-05 21:37 ` Bruno Haible
0 siblings, 1 reply; 3+ messages in thread
From: Paul Eggert @ 2019-05-05 21:12 UTC (permalink / raw)
To: Bruno Haible, bug-gnulib
Bruno Haible wrote:
> I would suggest to entirely remove the Makevars handling from 'bootstrap',
> and instead let the maintainers create a Makevars file by hand, according
> to the documentation - like they also create configure.ac and Makefile.am
> files by hand.
Sounds good to me; is that a trivial patch or am I missing something?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Makevars handling in 'bootstrap'
2019-05-05 21:12 ` Paul Eggert
@ 2019-05-05 21:37 ` Bruno Haible
0 siblings, 0 replies; 3+ messages in thread
From: Bruno Haible @ 2019-05-05 21:37 UTC (permalink / raw)
To: Paul Eggert; +Cc: bug-gnulib
Paul Eggert wrote:
> > I would suggest to entirely remove the Makevars handling from 'bootstrap',
> > and instead let the maintainers create a Makevars file by hand, according
> > to the documentation - like they also create configure.ac and Makefile.am
> > files by hand.
>
> Sounds good to me; is that a trivial patch or am I missing something?
The code removal from 'bootstrap' and 'bootstrap.conf' (XGETTEXT_OPTIONS)
would be trivial. However, there is a migration issue: How to notify
maintainers of packages that already use 'bootstrap' that they should
now commit the Makevars file in git and remove it from .gitignore.
Possible actions that 'bootstrap' could do to help this migration:
- Remove lines that match the regex '/Makevars$' from .gitignore.
- Print a sentence that explains that Makevars now should be added
into version control, with a reference to
<https://www.gnu.org/software/gettext/manual/html_node/po_002fMakevars.html>.
- Other actions?
Bruno
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-05-05 21:38 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-05 19:30 Makevars handling in 'bootstrap' Bruno Haible
2019-05-05 21:12 ` Paul Eggert
2019-05-05 21:37 ` Bruno Haible
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).