perl upgrade broke 5.3 system

2005-02-07 Thread dave
Hello,
I just updated ports after being away for two weeks. The update process
itself went fine, my problem came when i ran the command to update
perl-dependent ports as suggested in /usr/ports/UPDATING. I got a bunch of
failed updates, php4-extensions, and any of my p5* ports, apache2,
subversion, ices, etc. I've tried manually running portupgrade packagename
but all i get is a prompt, it's as if portupgrade thinks everything is
updated, but dependent perl ports are not working. The noticer was when
MailScanner couldn't find SpamAssassin although the latest version of both
ports are installed.
On another question when i install a port if it installs dependencies
and those are only needed by that port, when i uninstall the port i'd like
to updte and remove those dependencies as well, is this doable?
Some urgency!
Thanks.
Dave.

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: perl upgrade broke 5.3 system

2005-02-07 Thread Joshua Tinnin
On Monday 07 February 2005 09:02 am, dave [EMAIL PROTECTED] 
wrote:
 Hello,
 I just updated ports after being away for two weeks. The update
 process itself went fine, my problem came when i ran the command to
 update perl-dependent ports as suggested in /usr/ports/UPDATING. I
 got a bunch of failed updates, php4-extensions, and any of my p5*
 ports, apache2, subversion, ices, etc. I've tried manually running
 portupgrade packagename but all i get is a prompt, it's as if
 portupgrade thinks everything is updated, but dependent perl ports
 are not working. The noticer was when MailScanner couldn't find
 SpamAssassin although the latest version of both ports are installed.

Well, it's always tricky. What I did this time is:

% pkg_info -R perl\*  ~/perlports

A list of dependencies is now in the text file perlports. In order to 
get a working environment, I did this first (I use xfce4 on this 
machine):

# portupgrade -rRf xfce

Then I force-upgraded all the rest of the xorg ports that weren't 
upgraded by that command, then all libraries, then individual programs, 
and finally the ports in meta ports, then the meta ports themselves. 
Most of this was done automatically; I copied perlports to a different 
file, edited out some lines, and added commands, put the list in the 
order stated previously, set the file as executable, then I ran it as a 
script. Most of the lines in the script look like this (yelp is an 
example):

portupgrade -f yelp-2.6.5 ;

It took a long time, as always, but I had zero problems. I also had 
xfce4, SpamAssassin, KMail and some other programs I use all the time 
up and running right away. I'm sure this could be done in a more 
automated fashion, but I've always run into dependency problems that 
way, if ports aren't upgraded in the right order, e.g., libraries 
first, so there's always clean up work to do. I avoided that this time, 
though it took a little longer to have each upgrade be a separate line 
in a script.

 On another question when i install a port if it installs
 dependencies and those are only needed by that port, when i uninstall
 the port i'd like to updte and remove those dependencies as well, is
 this doable? Some urgency!

Yes, as long as those dependencies aren't needed elsewhere. You can run 
the pkg_info -r command to find out, then run pkg_info -R on the 
dependencies, or you can run:

make pretty-print-run-depends-list
make pretty-print-build-depends-list

in the appropriate port folder (e.g., /usr/ports/www/firefox). There's 
also sysutils/pkg_cutleaves .

- jt
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: perl upgrade broke 5.3 system

2005-02-07 Thread Kris Kennaway
On Mon, Feb 07, 2005 at 12:02:08PM -0500, dave wrote:
 Hello,
 I just updated ports after being away for two weeks. The update process
 itself went fine, my problem came when i ran the command to update
 perl-dependent ports as suggested in /usr/ports/UPDATING. I got a bunch of
 failed updates, php4-extensions, and any of my p5* ports, apache2,
 subversion, ices, etc. I've tried manually running portupgrade packagename
 but all i get is a prompt, it's as if portupgrade thinks everything is
 updated, but dependent perl ports are not working.

portupgrade -f

 The noticer was when
 MailScanner couldn't find SpamAssassin although the latest version of both
 ports are installed.

It sounds like some of the ports are still installed in the perl 5.8.5
directory, so the newer ports that have been rebuilt against perl
5.8.6 cannot find them.  That was what the command in UPDATING was
supposed to fix though, so maybe there is a corner case that was not
covered.  If you can reproduce this, talk to the [EMAIL PROTECTED]
mailing list.

 On another question when i install a port if it installs dependencies
 and those are only needed by that port, when i uninstall the port i'd like
 to updte and remove those dependencies as well, is this doable?

Not automatically, because the system can't know if you're actually
using any of those build-time dependencies yourself (e.g. you might be
using gmake or gcc 3.4 for your own non-port projects), but the
pkg_cutleaves port can help to do this.

Kris


pgpcz5zAQYGAu.pgp
Description: PGP signature