From 8377d44046ade5becb21f71e4d1d68dd6ae2bbf0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C3=86var=20Arnfj=C3=B6r=C3=B0=20Bjarmason?= Date: Tue, 19 Oct 2021 13:13:52 +0200 Subject: [PATCH] Makefile.PL: drop generated lib/PublicInbox.pm in blib/ Running "make test" on this project doesn't pass unless you've got an existing PublicInbox.pm in your @INC, presumably nobody's set this up on a fresh machine in a while. This Makefile.PL trickery seems to do it, I've validated this with this ad-hoc test of committing blib/ and Makefile to the repository: git clean -dxf; perl Makefile.PL && make -j8 all && git add -f blib Makefile.PL Makefile && git commit -m"now" Running that in interactive rebase before/after shows that only the PublicInbox.pm file was added to blib/lib/. We use $(INST_LIB) instead of a hardcoded 'blib/lib' now, but it's what ExtUtils::MakeMaker recommends, so it's probably for the better. As far as I can tell this broke with 1fae720d (build: generate PublicInbox.pm with $VERSION, 2021-04-01), but I have not tested that. See also 1fae720d (build: generate PublicInbox.pm with $VERSION, 2021-04-01) which made the PublicInbox.pm a generated file. --- Makefile.PL | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile.PL b/Makefile.PL index 348a343d..b3ac59be 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -190,6 +190,16 @@ WriteMakefile( FILES => 't/home*/setup* t/home*/t* t/home*/.public-inbox '. 't/data-gen/*' }, + PM => { + map { + s[^lib/][]s; + +('lib/' . $_ => '$(INST_LIB)/' . $_); + } grep { + # Will include *.pod and an *.h file, but so + # would ExtUtils::MakeMaker. + m[^lib/]; + } @manifest + }, ); sub MY::postamble { -- 2.44.0