first? patch [ HEADS UP: xorg 7.2 ready for testing ]

Sam Lawrance boris at brooknet.com.au
Mon May 14 12:29:49 UTC 2007


On 13/05/2007, at 5:26 PM, Kris Kennaway wrote:

> On Sun, May 13, 2007 at 05:20:53PM +1000, Sam Lawrance wrote:
>>
>> On 13/05/2007, at 5:13 PM, Kris Kennaway wrote:
>>
>>> On Sun, May 13, 2007 at 05:04:29PM +1000, Sam Lawrance wrote:
>>>>
>>>> On 12/05/2007, at 11:12 AM, Kris Kennaway wrote:
>>>>
>>>>> On Sat, May 12, 2007 at 02:35:00AM +0200, Danny Pansters wrote:
>>>>>
>>>>>> I ran into a little problem with the gstreamer-plugins, to be
>>>>>> exact with
>>>>>> the 'bad' plugin. What's in a name. Attached patch to gstreamer-
>>>>>> plugins which
>>>>>> eliminates X11BASE from configure args fixes it.
>>>>>
>>>>> This actually seems to indicate that something you have installed
>>>>> references /usr/X11R6 in a .la file.  I actually built this
>>>>> successfully myself during the upgrade tests, so I guess something
>>>>> went wrong with the upgrade on your machine.  Can you please  
>>>>> provide
>>>>> the full log, as well as the result of
>>>>>
>>>>> find /usr/local/lib -name \*.la | xargs grep /usr/X11R6/lib/
>>>>> libfontconfig.la
>>>>
>>>> Just a quick "me too".  Last night I installed 6.2-RELEASE with  
>>>> gnome
>>>> and goffice from the release packageset, then proceeded to  
>>>> follow the
>>>> xorg upgrade instructions.  The two errors I got are listed  
>>>> below.  I
>>>> will try to investigate tonight.
>>>
>>> OK, still waiting for the log from Danny, so maybe you'll get in  
>>> first
>>> with yours.
>>
>> I hope there's a nice prize, or showgirls springing out of big cakes.
>>
>> http://people.freebsd.org/~lawrance/xorg-upgrade.bz2

I think I have figured this out.  In short: portupgrade does not  
include new, previously not installed, dependencies in its list of  
tasks when updating.   In this particular case, gstreamer-plugins-bad  
was built before one of its dependencies was updated, and we end up  
with a crufty old reference to X11R6.

Less short:

Before the xorg upgrade, gstreamer-plugins-bad was not installed on  
my system.   It was installed during the upgrade as part of running  
"portupgrade -a".

Upon further inspection of the xorg-upgrade log above I noticed that  
there were two build attempts for gstreamer-plugins-bad, and neither  
was directly performed by portupgrade (ie. the ports framework did  
it).  The first attempt was as a dependency of gstreamer-plugins- 
dts.  The second (and successful) attempt was as a dependency of  
gstreamer-plugins-xvid.

I reverted the system to its original state and ran "portupgrade -an"  
to show the order of updates that portupgrade would perform.   
gstreamer-plugins-bad was not in the list.  I think this means is  
that if a port being upgraded has a new dependency, that dependency  
will _not_ be included in the list portupgrade uses to determine  
which packages to update and at what point.

Using portupgrade with the flags -aRn made no difference.

A few people have reported their systems updating correctly after a  
several attempts with "portupgrade -a";  this is possibly one of the  
reasons.  It seems like an effective workaround for the moment.

The only issue I can think of is if an out of order build succeeds,  
and the later update of a dependency breaks something at runtime.






More information about the freebsd-ports mailing list