Xorg upgrade & portmaster

FreeBSD-Ports FreeBSD-Ports at socruel.nu
Mon May 21 20:14:22 UTC 2007


Hello list,

For what it is worth .. Have doen an update of xorg-libraries port with
portmaster ...

Have a system (6.2-release) with xorg-libraries port (because of Lire
port) and run into the following message after trying to update it with
portmaster:

===>>> Dependency check complete for x11/xorg-libraries

===>  Cleaning for xorg-libraries-7.2
Read /usr/ports/UPDATING for the procedure to upgrade to xorg 7.2.
*** Error code 1

Stop in /usr/ports/x11/xorg-libraries.

===>>> make failed for x11/xorg-libraries
===>>> Aborting update

After reading /usr/ports/UPDATING I thought well just try what it says,
so I issued the command setenv XORG_UPGRADE yes as root and then did a
portmaster xorg-libraries. This update went fine. After that I issued
the command sh /usr/ports/Tools/scripts/mergebase.sh as the UPDATING
file says but it didn't make any sense to me.

If you need any more detailed information on this please feel free to
ask. I have another system for which I have to this also, but it's a 6.1
system.


Cheers,
Lars.



-----Original Message-----
From: owner-freebsd-ports at freebsd.org
[mailto:owner-freebsd-ports at freebsd.org] On Behalf Of Doug Barton
Posted At: Monday, May 21, 2007 9:19 PM
Posted To: FreeBSD-Ports
Conversation: Xorg upgrade & portmaster
Subject: Re: Xorg upgrade & portmaster


Vlad V. Teterya wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> from ports/UPDATING:
> - --skip--
> This upgrade procedure is for users of portupgrade.  Users of other
> 
> upgrade tools should contact the author for the corresponding upgrade
> 
> method for that tool.
> - --skip--
> 
> any portmaster-specific tips, Doug? :)

Yeah, don't use portmaster yet. :)

Seriously, I ran into a pretty big problem last night doing some
regression testing which I'm not sure how to address. What portmaster
does is this:

1. Get the list of dependencies for the port from
build/run-depends-list.
2. Build and install any dependencies from that list that are not up to
date (or installed at all).
3. run make in the port
4. pkg_delete any existing port
5. run make install in the port

Where this gets really exciting is in the xorg-libraries port, whose
run-depends installs a whole bunch of files in the same places as
existing files from the old library, all of which are deleted by the
subsequent pkg_delete of the old port. Followed by BAM, everything fails
after that.

What I'm considering at this time is to change the default order to:
1. Get the build-depends-list
2. Build and install those
3. Run make
4. pkg_delete
5. Get the run-depends-list
6. Build and install those
7. Run make install

This would fix this particular problem, but my concern is that it would
expose other problems (namely maintainers that don't correctly
differentiate between build and run depends). I also think it's
overkill, since this is the first time we've ever run into a situation
like this, and we're not likely to run into another one any time soon. 
There is also another issue in that if the -t option is used to use
all-depends-list instead of the other two, that HAS to run first, so
we'd still have this problem.

At this point I'm interested in feedback on what people think the right
answer should be here. I'll work on implementing the split of build and
run depends to see how hard it is to do (and whether it breaks anything
else), but I'm not convinced yet that I'll actually commit it.

Meanwhile, if someone is really interested in doing the upgrade right
away, the way I'd do it is:

1. Run portmaster -l > installed-ports-list 2. Save the list of root and
leaf ports 3. Download the new portmaster from
http://dougbarton.us/portmaster 4. Check the help for new options -R -x
and --force-config (portmaster -h) 5. pkg_delete * (seriously) 6. Use
portmaster to install the (non-xorg) root ports from your list in 1.
7. Install the x11/xorg meta-port
8. Install everything else from the list of leaf ports in 1.

hth,

Doug

-- 

     This .signature sanitized for your protection

_______________________________________________
freebsd-ports at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe at freebsd.org"


More information about the freebsd-ports mailing list