git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v2 0/6] Makefile/perl: correctly re-generate build/* + speed up under NO_GETTEXT=Y

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
May 10, 2021, 10:50 UTC
Message-ID
<cover-0.6-00000000000-20210510T104937Z-avarab@gmail.com>
In-Reply-To
<cover-0.4-00000000000-20210505T121857Z-avarab@gmail.com>
The summary, from v1:
    These patches are relatively trivial fixes for bugs noticed when I was
    working on recent send-email patches. We don't re-build perl/build/*
    assets when variables that affect them are changed, and needlessly use
    our non-mock gettext Perl i18n framework under NO_GETTEXT=Y if the
    system happens to have Locale::Messages installed.
Changes since v1:
The only change to the end-state is the trivial change-on-top of:
    -PERL_DEFINES :=
    +PERL_DEFINES =

I.e. the PERL_DEFINES is now also refactored away from a simply-expanded variable. The re-arrangement and split-up of patches in this v2 just makes for a more incremental way to get there, per the discussion on v1.

Ævar Arnfjörð Bjarmason (6):
  Makefile: regenerate perl/build/* if GIT-PERL-DEFINES changes
  Makefile: don't re-define PERL_DEFINES
  Makefile: make PERL_DEFINES recursively expanded
  Makefile: split up the deceleration of PERL_DEFINES
  Makefile: regenerate *.pm on NO_PERL_CPAN_FALLBACKS change
  perl: use mock i18n functions under NO_GETTEXT=Y
 Makefile         | 13 +++++++++----
 perl/Git/I18N.pm | 10 ++++++++++
 2 files changed, 19 insertions(+), 4 deletions(-)
Range-diff against v1:
2:  49339028db4 = 1:  8b899364916 Makefile: regenerate perl/build/* if GIT-PERL-DEFINES changes
-:  ----------- > 2:  c15887bbc93 Makefile: don't re-define PERL_DEFINES
-:  ----------- > 3:  7919ae0e546 Makefile: make PERL_DEFINES recursively expanded
1:  ed2005a2fbf ! 4:  2cdefbe920c Makefile: don't re-define PERL_DEFINES
    @@ Metadata
     Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
      ## Commit message ##
    -    Makefile: don't re-define PERL_DEFINES
    +    Makefile: split up the deceleration of PERL_DEFINES
     
    -    Since 07d90eadb50 (Makefile: add Perl runtime prefix support,
    -    2018-04-10) we have been declaring PERL_DEFINES right after assigning
    -    to it, with the effect that the first PERL_DEFINES was ignored.
    +    Split the declaration of PERL_DEFINES across multiple line, making
    +    this easier to read.
     
    -    That bug didn't matter in practice since the first line had all the
    -    same variables as the second, so we'd correctly re-generate
    -    everything. It just made for confusing reading.
    -
    -    Let's remove that first assignment, and while we're at it split these
    -    across lines to make them more maintainable.
    +    In 07d90eadb50 (Makefile: add Perl runtime prefix support, 2018-04-10)
    +    when PERL_DEFINES was added only the RUNTIME_PREFIX was put on its own
    +    line the rest weren't formatted like that for consistency. Let's do
    +    that to make this consistent with most of the rest of this Makefile.
     
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
    @@ Makefile: perl_localedir_SQ = $(localedir_SQ)
      
      ifndef NO_PERL
      PERL_HEADER_TEMPLATE = perl/header_templates/fixed_prefix.template.pl
    --PERL_DEFINES = $(PERL_PATH_SQ):$(PERLLIB_EXTRA_SQ):$(perllibdir_SQ)
    --
    --PERL_DEFINES := $(PERL_PATH_SQ) $(PERLLIB_EXTRA_SQ) $(perllibdir_SQ)
    -+PERL_DEFINES :=
    +-PERL_DEFINES = $(PERL_PATH_SQ) $(PERLLIB_EXTRA_SQ) $(perllibdir_SQ)
    ++PERL_DEFINES =
     +PERL_DEFINES += $(PERL_PATH_SQ)
     +PERL_DEFINES += $(PERLLIB_EXTRA_SQ)
     +PERL_DEFINES += $(perllibdir_SQ)
3:  06e25bc1db3 = 5:  1171b73256e Makefile: regenerate *.pm on NO_PERL_CPAN_FALLBACKS change
4:  97247cb72a5 = 6:  7a5e7cf39a5 perl: use mock i18n functions under NO_GETTEXT=Y
-- 
2.31.1.838.g924d365b763
Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 14 of 26 in “Makefile/perl: correctly re-generate build/* + speed up under NO_GETTEXT=Y”
  1. 0/4 Makefile/perl: correctly re-generate build/* + speed up under NO_GETTEXT=YÆvar Arnfjörð Bjarmason, May 5, 2021
  2. 1/4 Makefile: don't re-define PERL_DEFINESÆvar Arnfjörð Bjarmason, May 5, 2021
  3. Jeff KingMay 5, 2021
  4. Junio C HamanoMay 6, 2021
  5. Jeff KingMay 6, 2021
  6. Ævar Arnfjörð BjarmasonMay 6, 2021
  7. Junio C HamanoMay 6, 2021
  8. Ævar Arnfjörð BjarmasonMay 6, 2021
  9. Jeff KingMay 6, 2021
  10. Junio C HamanoMay 7, 2021
  11. 3/4 Makefile: regenerate *.pm on NO_PERL_CPAN_FALLBACKS changeÆvar Arnfjörð Bjarmason, May 5, 2021
  12. 2/4 Makefile: regenerate perl/build/* if GIT-PERL-DEFINES changesÆvar Arnfjörð Bjarmason, May 5, 2021
  13. 4/4 perl: use mock i18n functions under NO_GETTEXT=YÆvar Arnfjörð Bjarmason, May 5, 2021
  14. 0/6 Makefile/perl: correctly re-generate build/* + speed up under NO_GETTEXT=YÆvar Arnfjörð Bjarmason, May 10, 2021
  15. 1/6 Makefile: regenerate perl/build/* if GIT-PERL-DEFINES changesÆvar Arnfjörð Bjarmason, May 10, 2021
  16. 2/6 Makefile: don't re-define PERL_DEFINESÆvar Arnfjörð Bjarmason, May 10, 2021
  17. 4/6 Makefile: split up the deceleration of PERL_DEFINESÆvar Arnfjörð Bjarmason, May 10, 2021
  18. 3/6 Makefile: make PERL_DEFINES recursively expandedÆvar Arnfjörð Bjarmason, May 10, 2021
  19. 6/6 perl: use mock i18n functions under NO_GETTEXT=YÆvar Arnfjörð Bjarmason, May 10, 2021
  20. 5/6 Makefile: regenerate *.pm on NO_PERL_CPAN_FALLBACKS changeÆvar Arnfjörð Bjarmason, May 10, 2021
  21. Junio C HamanoMay 10, 2021
  22. Ævar Arnfjörð BjarmasonMay 11, 2021
  23. Junio C HamanoMay 11, 2021
  24. Makefile: make PERL_DEFINES recursively expandedÆvar Arnfjörð Bjarmason, May 12, 2021
  25. Jeff KingMay 12, 2021
  26. Junio C HamanoMay 12, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.