This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Prepare VMS linker GSMATCH for 5.32.
authorCraig A. Berry <craigberry@mac.com>
Sun, 25 Aug 2019 18:50:46 +0000 (13:50 -0500)
committerCraig A. Berry <craigberry@mac.com>
Sun, 25 Aug 2019 19:52:34 +0000 (14:52 -0500)
commit8b4039846548684eda3376f80a4a5cb7a47ccc94
treef352ca91fad69185cc0d3888464bef364f02d519
parentc6f37d61adb39a6d7764b1bcb6bb67accb22a0a0
Prepare VMS linker GSMATCH for 5.32.

GSMATCH in the linker options file tells the image activator
whether a dynamic library being loaded is compatible with what it
originally linked against.  Ideally we would like to encode the
version number and all the options that can make a build binary
incompatible with another build of the same version, but there
are about 30 such options and only 8 bits (on Alpha) in which to
store both the version number and the options.

We've lived with only 3 bits reserved for 3 options, but as of
version 32 of Perl 5, we'll need 6 bits for the version number:

    $ perl -e "$v = 31; printf('%b', $v);"
    11111
    $ perl -e "$v = 32; printf('%b', $v);"
    100000

leaving us only 2 bits for options.

The code modified here only kicks in when PERLSHR_USE_GSMATCH is
defined in the environment.
vms/gen_shrfls.pl