X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=blobdiff_plain;f=Makefile.PL;h=ccf4bbb8e0c0cfd68b9b4a5e7140891443eed588;hp=a9b15cabe845ec649dc2d60325d5d549d711570f;hb=42359e39a591dcf68ce02a5fc2dd703ba68f0f77;hpb=dbcc775378359cf41e57b9e9aa0ca6553722b479 diff --git a/Makefile.PL b/Makefile.PL index a9b15cab..ccf4bbb8 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -3,14 +3,16 @@ # License: AGPLv3 or later (https://www.gnu.org/licenses/agpl-3.0.txt) use strict; use ExtUtils::MakeMaker; +my @EXE_FILES = split("\n", `git ls-files 'public-inbox*' 2>/dev/null`); +my $PM_FILES = `git ls-files lib '*.pm' 2>/dev/null`; +$PM_FILES =~ tr/\n/ /; + WriteMakefile( NAME => 'public-inbox', VERSION => '0.0.0', AUTHOR => 'Eric Wong ', ABSTRACT => 'public-inbox server infrastructure', - EXE_FILES => [qw/public-inbox-mda public-inbox.cgi - public-inbox-learn public-inbox-init - public-inbox-index/], + EXE_FILES => \@EXE_FILES, PREREQ_PM => { # note: we use ssoma(1) and spamc(1), NOT the Perl modules # We also depend on git through ssoma. @@ -32,11 +34,19 @@ WriteMakefile( ); sub MY::postamble { - <<'EOF'; + </dev/null || echo 2) + 1))) +my_syntax := \$(addsuffix .syntax, $PM_FILES \$(EXE_FILES)) + +N := \$(shell echo \$\$(( \$\$(nproc 2>/dev/null || echo 2) + 1))) + +%.syntax :: + @\$(PERL) -I lib -c \$(subst .syntax,,\$@) + +syntax:: \$(my_syntax) + check:: pure_all - prove -lv -j$(N) + prove -lv -j\$(N) EOF }