Hello all,
I found an item in the perl docs that makes KB article 2449 obsolete.
That being: the BEGIN{ shift
@INC ... } call is deprecated.
But never fear, we have a good working solution and involves 3 easy steps:
1) Create the directory to use out side of the iw-perl directory structure. For this example we'll use /path/to/custom/teamsite/modules.
2) Reinstall any non-standard perl packages with the command:
/some/path/to/bin/iwperl Makefile.PL LIB=/path/to/custom/teamsite/modules INSTALLMAN1DIR=/path/to/custom/teamsite/modules/man/man1 INSTALLMAN3DIR=/path/to/custom/teamsite/modules/man/man3 INSTALLBIN=/path/to/custom/teamsite/modules/bin INSTALLSCRIPT=/path/to/custom/teamsite/modules/scripts
(The above command is all on one line)
The use the normal
make
make test
make install
to finish the install.
3) replace the old
BEGIN { unshift(
@INC, /path/to/old/custom/teamsite/modules/Custom"); use Package;}
command with
use lib '/path/to/custom/teamsite/modules';
use Custom:

ackage;
See page 850 of the 3rd Ed. Programming Perl book for more info.
And your done.
Now, your asking yourself, what does this get me?
Well, first you are now compliant with the new versions of perl when they come around. Second, when you install a new item in the new custom location, the man pages, binaries, and OS specific stuff is all handled quite nicely and finally, when you go to upgrade TS you don't need to worry about moving things around or if they got blown away or what have you.
I use this quite extensively and it works just fine!
Any thoughts, comments, whatever are welcome.