With a hint from Jarkko I got 5.4.5 to build on OS X. Here's how.
Step one: Copy hints/darwin.sh from 5.5.4. I chose 5.5.4 because its the
closest to 5.4.5 and yet still modern.
Step two: Fix the version discovery handling in the hints file. The 5.5.4
version looks for things like perl_revision and perl_version in patchlevel.h
but 5.4.5 has simply patchlevel and subversion.
Step three: Comment out the dlsrc choice of dl_dyld.xs. 5.4.5 doesn't
have that. Let it use the default, it seems to work.
Step four: Comment out the UU/archname.cbu generation. That stuff doesn't
exist in 5.4.5.
(Attached is a patch which does all this)
Step five: Run Configure and "make depend" normally.
Step six: "make" will bomb out complaining about
"*** No rule to make target `<built-in>', needed by `miniperlmain.o'."
This is "make depend" not knowing about certain GNUisms. You'll have to
strip them out of the GNUmakefile and x2p/GNUmakefile.
perl -i.bak -ne 'print unless /<(built-in|command line)>/' GNUmakefile x2p/GNUmakefile
Step seven: make, make test and make install. Bits of t/lib/db-recno.t will
fail but that's expected.

Signature
Michael G Schwern schwern@pobox.com http://www.pobox.com/~schwern
ROCKS FALL! EVERYONE DIES!
http://www.somethingpositive.net/sp05032002.shtml
Sherm Pendley - 04 Jul 2005 12:47 GMT
> With a hint from Jarkko I got 5.4.5 to build on OS X. Here's how.
Now *that* is taking regression testing to a new level. 5.4.5 is over
six years old now.
In case anyone's wondering what the point of porting such an old Perl
is, there's sure to be servers out there still running it. Now Mac
developers can test scripts that target those servers.
sherm--
Cocoa programming in Perl: http://camelbones.sourceforge.net
Hire me! My resume: http://www.dot-app.org
Ken Williams - 05 Jul 2005 01:28 GMT
> With a hint from Jarkko I got 5.4.5 to build on OS X. Here's how.
Do I hear a 5.4.6 in the future, then? ;-)
-Ken
Michael G Schwern - 05 Jul 2005 01:53 GMT
> >With a hint from Jarkko I got 5.4.5 to build on OS X. Here's how.
>
> Do I hear a 5.4.6 in the future, then? ;-)
Because we want to simultaneously maintain 1..2..3..4..5 tracks of Perl.
5.4.x, 5.5.x, 5.6.x, 5.8.x, 5.9.x. (8 if you include Pugs, PONIE and Perl 6).

Signature
Michael G Schwern schwern@pobox.com http://www.pobox.com/~schwern
'All anyone gets in a mirror is themselves,' she said. 'But what you
gets in a good gumbo is everything.'
-- "Witches Abroad" by Terry Prachett