I hope that you're not being told to port to older versions
that you don't have access to -- the task would be a bit too
speculative if you can't test the scripts against particular
older perl releases that you can still run yourself.
Assuming that you only need to port to versions that you
have on hand, the obvious starting point is to make a list
of the available relevant versions, remove the initial
"shebang" line from your scripts, and run them through the
older versions like this:
/path/to/perl5.006/bin/perl -cw script1 > script1.5.006.errs 2>&1
/path/to/perl5.005/bin/perl -cw script1 > script1.5.005.errs 2>&1
etc.
Store each version's error report in a
separate file, then take the union of the messages in all files
to assess what damage needs to be done to each script. Or
it might be better to work on the intersections -- where
multiple versions report the same problem -- fix those first
before altering lines that only cause a problem in one version,
or that cause different error reports in different versions.
Don't do any more research on perl version
lore than you have to -- just check the line numbers of the error
messages, and grep through the perldelta docs for relevant hints based
on the errors.
Bear in mind that some errors may be due to extra modules
that are present in your up-to-date perl release but are
not installed for the older versions. Adding those modules to the
older versions might be tricky (esp. if you have to find
older versions of the modules :P). |