This is done -- I split these up in Jerry's boot.efs setup, and it worked fine.
We can now built these independently. Jerry, I'll walk you through how I did this tomorrow. On Mon, Oct 11, 2010 at 2:11 PM, Phillip Moore <[email protected]>wrote: > Rebuilding the perl5/core releases over and over and over.... just to > tweak and fix the EPD code is getting insane. This is not a sustainable way > to manage this. I really think EPD is going undergo several natural > evolutionary steps, and it's rate of change will be FAR greater than > perl5/core, and that's really what drives splitting them up. There are a > number of other side benefits to splitting it up, too. We can standardize > on Module::Install and the same xt/* tests across all repos, for example. > We can go back to using English.pm, too, although that's very minor. > > Fortunately, decoupling them is trivial. Here's how you bootstrap it.... > > First we build EFS-Perl as a normal CPAN release, say into > perl5/EFS-Perl/1.002_001, and dist it. > > Build the perl5/core releases with only the sitecustomize.pl patch we > need, but do NOT install EPD and sitecustomize.pl as part of the release. > Instead, just install this symlink using an install-post hook: > > ..../install/.exec/lib/perl5/sitecustomize.pl -> > /efs/dist/perl5/EFS-Perl/5.10/.exec/$platform/5.10/lib/perl5/ > sitecustomize.pl > > When you first dist this perl5/core release, that symlink doesn't resolve, > and thus perl will ignore it. > > You couple perl5/core to perl5/EFS-Perl through the 5.10 and 5.12 > releasealiases. > > efs create releasealias perl5 EFS-Perl 5.10 1.002_001 > efs create releasealias perl5 EFS-Perl 5.12 1.002_001 > > sitecustomize.pl will need to be changed, so that is knows where to load > the EPD code. perl will load sitecustomize.pl by following the symlink > we installed, NOT by adding: > > /efs/dist/perl5/EFS-Perl/5.10/.exec/$platform/5.10/lib/perl5 > > to @INC, so sitecustomize.pl will require something to make perl5/EFS-Perl > releases self-referential. > > Hmm... It would be simpler if we used TWO sitecustomize.pl scripts here. > Instead of a symlink, install a very simple one that manages this > indirection in perl5/core. This first script just checks for the existence > of the perl5/EFS-Perl release, and then sets @INC for *just* that release, > then requires the second sitecustomize.pl, loaded from perl5/EFS-Perl. > > There are two perfectly good solutions, and either one is manageable. We > need to try one or both out tomorrow, and get things split up, otherwise, > we're going to be beating ourselves to death trying to develop EPD. > > > > > > >
_______________________________________________ EFS-dev mailing list [email protected] http://mailman.openefs.org/mailman/listinfo/efs-dev
