bug-gnulib@gnu.org mirror (unofficial)
 help / color / mirror / Atom feed
* 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).