Re: [PATCH v6] Makefile: replace perl/Makefile.PL with simple make rules
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Jan 2, 2018, 19:17 UTC
- Message-ID
- <20180102191720.GB131371@aiede.mtv.corp.google.com>
- In-Reply-To
- <20171220182419.16865-1-avarab@gmail.com>
Hi,
Ævar Arnfjörð Bjarmason wrote:
> +++ b/Makefile
[...]
Show 13 quoted lines
> -PERL_DEFINES = $(PERL_PATH_SQ):$(PERLLIB_EXTRA_SQ)
> -$(SCRIPT_PERL_GEN): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE
> +PERL_DEFINES = $(PERL_PATH_SQ):$(PERLLIB_EXTRA_SQ):$(perllibdir_SQ)
> +$(SCRIPT_PERL_GEN): % : %.perl GIT-PERL-DEFINES GIT-VERSION-FILE
> $(QUIET_GEN)$(RM) $@ $@+ && \
> - INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \
> INSTLIBDIR_EXTRA='$(PERLLIB_EXTRA_SQ)' && \
> INSTLIBDIR="$$INSTLIBDIR$${INSTLIBDIR_EXTRA:+:$$INSTLIBDIR_EXTRA}" && \
> sed -e '1{' \
> -e ' s|#!.*perl|#!$(PERL_PATH_SQ)|' \
> -e ' h' \
> - -e ' s=.*=use lib (split(/$(pathsep)/, $$ENV{GITPERLLIB} || "'"$$INSTLIBDIR"'"));=' \
> + -e ' s=.*=use lib (split(/$(pathsep)/, $$ENV{GITPERLLIB} || "'"$$INSTLIBDIR"'" || "'"$(perllibdir_SQ)"'"));=' \This appears to have broken a build with INSTLIBDIR set.
$ head -2 /usr/local/git/current/libexec/git-core/git-add--interactive
#!/usr/bin/perl
use lib (split(/:/, $ENV{GITPERLLIB} || ":/Applications/Xcode.app/Contents/Developer/Library/Perl/5.@{[sub{use Config; $Config{api_version}}->()]}/darwin-thread-multi-2level" || "/usr/local/git/current/share/perl5"));(forgive the hackiness there).
Is there a reason we don't do
INSTLIBDIR='$(perllibdir_SQ)' && \ INSTLIBDIR_EXTRA=... && INSTLIBDIR=...
and
use lib ... || "'"$$INSTLIBDIR"'"));=' \
?
Thanks, Jonathan