This adds an appropriate "-Darchname" value for cross-building (arm32v7 builds on an arm64v8 kernel, i386 builds on an amd64 kernel, etc), and conditionally converts "-Duse64bitall" into "-Duse64bitint" (which is what Debian uses when compiling Perl).
See also https://sources.debian.net/src/perl/stretch/debian/config.debian/#L115 and https://sources.debian.net/src/perl/stretch/debian/config.debian/#L130.
> *** You have chosen a maximally 64-bit build,
> *** but your pointers are only 4 bytes wide.
> *** Please rerun Configure without -Duse64bitall.
> *** Since you have quads, you could possibly try with -Duse64bitint.
We seem to be using www.cpan.org for getting the Perl tarballs for
patching with Devel::PatchPerl, yet in our generated Dockerfiles we are
using cpan.metacpan.org instead. Since the former location is listed in
www.perl.org as the canonical Perl source location, let's base from that
as our single source of truth.
This also means we can depend less on finding which PAUSE account has
which Perl release, so let's remove that from the Releases.yaml as well.
`MAINTAINER` Dockerfile directive is now deprecated (see
https://github.com/moby/moby/pull/25466) so update generate.pl to use
`LABEL` instead. This is also a good time to add myself :)
Regenerate the Dockerfiles as well for sync.
Let `vendorprefix=/usr/local` so `vendorlib` and `vendorarch` can point
to paths in `/usr/local/lib/perl5/vendor_perl`. Extend the generator.pl
also so we can add more `Configure` settings if we needed it later.
Fixes#32.
Perl's ./Configure can be asked to build a shared library, libperl.so,
which is required by some modules from CPAN (like Imagemagick), or when
you want to embed the Perl interpreter in your own programs.
However, because there may be a performance penalty, the "old" static
builds have not been removed.
More information can be found in the installation manual at
https://metacpan.org/pod/distribution/perl/INSTALL#Building-a-shared-Perl-library
1. Allow multiple patches
2. For the Devel::PatchPerl patches, use git diff instead
of format-patch. This removes the ever-changing committer/
subject/etc details and leaves just the actual changes