I need to clarify (Re: I'm having an awful time updating gdm2
and other ports)
Joe Marcus Clarke
marcus at marcuscom.com
Tue Jan 6 14:19:39 PST 2004
On Tue, 2004-01-06 at 17:15, Paul Seniura wrote:
> Here is the scenario:
> You don't have any p5-* pieces installed.
> You've freshly switched to 'use.perl port' from 'system'.
> Then comes a CVS update for x11/gdm2.
> You need to upgrade x11/gdm2; it's already installed.
> This time you need its configure/make/install scripts to run under perl-5.8.x.
> You hope gdm2's Makefile properly specifies what it requires, like other ports do.
> So you run portupgrade.
> And it breaks during gdm2's 'install' phase.
> What do you do?
You read the FAQ at http://www.freebsd.org/gnome, and do the update
correctly. It does work. Your problem is you tried to upgrade gdm2 on
a system were all the other ports were not up-to-date already. Bad idea
(for just about anything). Instead, you should have used portupgrade
-ra to do things properly, and in the correct order. Had you done that,
all your Perl dependencies would have been recorded correctly.
> Okay now allow me to expand on that scenario with some details, please.
> I did the switch from perl-5.6.x to perl-5.8.x last week
> without having any of the p5-* items installed beforehand.
> Never needed any p5-* before -- the only items needing perl at this stage
> are ports during their configure / make / install / run-time phases
> (I myself haven't needed perl).
> There's nothing _specifically_ telling you _what else_ to do
> when you do this 'use.perl port' switch. Specifically.
> I was 'assuming' that any port needing a perl module -- for whatever reason
> e.g. configure / make / install / run-time -- would have appropriate entries
> in that port's Makefile (some '.if's around BUILD_DEPENDS, LIB_DEPENDS, etc.,
> as appropriate, based on PERL_VERSION or SITE_PERL (unsure?)).
> Then came along some CTM deltas for x11/gdm2.
> The next time I ran portupgrade is what got broke.
> x11/gdm2's Makefile does *not* have checks for perl-anything
> but it *did* require certain perl modules for it to be
> installed successfully, as shown in my previous msgs
> e.g. gdm2 clearly needs the XML::Parser module
> during its install phase
> so an appropriate item should've been added to
> gdm2's Makefile -- probably in this case
> to the RUN_DEPENDS string
> (is there such a thing as INSTALL_DEPENDS ?).
> Suitable mechanisms _are_ available in the Makefile
> and many other ports use them,
> but gdm2 didn't say what it needed
> so I never got the requisite p5-* pieces it needed
> e.g. gdm2's Makefile should've caused the textproc/p5-XML-Parser port
> to be installed before gdm2 itself was installed.
> So I needed a workaround.
> To get those p5-* pieces needed by gdm2, I was 'hoping'
> the p5-GnomePrint port would pull in those missing pieces
> if _it_ had a correct Makefile.
> There I go 'assuming' again...
> (you know what 'assume' means... ;)
> > Any time you run "use.perl", do "env FORCE_PKG_REGISTER=1 portupgrade -f
> > p5-\*".
> It ran very quickly.
> It only re-installed the p5-XML-Parser and p5-XML-Writer ports
> because those were the only p5-* pieces I've managed to
> figure out being required by gdm2 and/or other ports -- after my
> assumption p5-GnomePrint properly pull in those missing pieces
> as noted.
> I'm running this portupgrade 'force' again on a list of ports that
> failed when I tried to install p5-GnomePrint, hoping it'll eventually
> fix other glitches, too.
> I ought to open a PR for gdm2 to be fixed --
> because other ports do check for "which perl" and
> adjust themselves accordingly.
> Probably a lot of other ports need to similarly
> check on other things besides "which perl", too. ;)
> -- Paul Seniura
> System Specialist
> State of Okla. D.O.T.
> freebsd-gnome at freebsd.org mailing list
> To unsubscribe, send any mail to "freebsd-gnome-unsubscribe at freebsd.org"
PGP Key : http://www.marcuscom.com/pgp.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 187 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20040106/0673fc3a/attachment.bin
More information about the freebsd-ports