Makefile: use "generate-perl.sh" to massage Perl library

Extend "generate-perl.sh" such that it knows to also massage the Perl
library files. There are two major differences:

  - We do not read in the Perl header. This is handled by matching on
    whether or not we have a Perl shebang.

  - We substitute some more variables, which we read in via our
    GIT-BUILD-OPTIONS.

Adapt both our Makefile and the CMake build instructions to use this.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Patrick Steinhardt
2024-12-06 14:24:44 +01:00
committed by Junio C Hamano
parent e4b488049a
commit ccfba9e0c4
4 changed files with 27 additions and 22 deletions

View File

@@ -18,10 +18,20 @@ OUTPUT="$5"
. "$GIT_VERSION_FILE"
sed -e '1{' \
-e " /^#!.*perl/!b" \
-e " s|#!.*perl|#!$PERL_PATH|" \
-e " r $PERL_HEADER" \
-e ' G' \
-e '}' \
-e "s/@GIT_VERSION@/$GIT_VERSION/g" \
-e "s|@GIT_VERSION@|$GIT_VERSION|g" \
-e "s|@LOCALEDIR@|$PERL_LOCALEDIR|g" \
-e "s|@NO_GETTEXT@|$NO_GETTEXT|g" \
-e "s|@NO_PERL_CPAN_FALLBACKS@|$NO_PERL_CPAN_FALLBACKS|g" \
"$INPUT" >"$OUTPUT"
chmod a+x "$OUTPUT"
case "$INPUT" in
*.perl)
chmod a+x "$OUTPUT";;
*)
;;
esac