These are notes Tim took while Nate was talking, so they’re a bit sketchy, but maybe worth something.
/usr/bin/env perl, and so we just make sure that
vdt-untarfixes any Perl #! lines to use
/usr/bin/env; this has the side-effect that any command-line switches to Perl are dropped, because env doesn’t support them.
vdt/bin/perlgoes through the PATH and execs the first perl that is NOT the broken SLF perl.
$VDT_LOCATION/perl/bin/perlis a wrapper that sets the Perl library path appropriately and calls perl/bin/perl.real. Why is it written in C? Because you can’t have a #! line that references another script with another #! line.
Perl/nmi/perl.ccontains a hard-coded reference to the version of Perl that is built. It must match the version declared in the defs file or 32-on-64-bit installs will fail right after the Perl package is installed. I know of no automatic way to synchronize perl.c and defs, so it must be done manually.
This update is due out in the next 6 months or so, is going to be relocatable and so this problem should go away. In which case, we would bring along Perl 5.10 for the 32-bit case only, but the wrapper wouldn’t be needed.