Mixing Tiger X11 and Macports X11

Jeremy Huddleston jeremyhu at macports.org
Fri Dec 12 15:45:28 PST 2008


So, this brings up the same issue as #17558.  We have some problems  
with ports mix Tiger and macports versions of X11 libraries.  I  
haven't narrowed down the exact problem, but we have some conflicts  
when a some lib that an app uses pulls in one version and the app then  
links with the other version... example  these two cases fail:

cairo built using /usr/X11R6/lib/libX11.dylib
gtk2 built using /opt/local/lib/libX11.dylib

or similarly

cairo built using /opt/local/lib/libX11.dylib
gtk2 built using /usr/X11R6/lib/libX11.dylib

The first case results if you pull in cairo, then later pull in xorg- 
libX11, then pull in gtk2 (this also happens if we include "all" the  
gtk2 dependencies because some aren't in Tiger's X11... libCcomposite  
and libXdamage).

The second case results if we pull in xorg-libX11 first, then cairo,  
then the gtk2 from a couple days ago before I removed the '--x- 
includes --x-libs configure arg).

We get success if both cairo and gtk2 use the same version.

Any thoughts about the best way to solve this issue?

On Dec 12, 2008, at 15:11, Jeremy Huddleston wrote:

>
> On Dec 12, 2008, at 14:56, Rainer Müller wrote:
>
>>> --- trunk/dports/x11/gtk2/Portfile	2008-12-12 22:51:49 UTC (rev  
>>> 43648)
>>> +++ trunk/dports/x11/gtk2/Portfile	2008-12-12 22:52:30 UTC (rev  
>>> 43649)
>>> @@ -130,11 +130,15 @@
>>>
>>> variant x11 conflicts quartz description {Enable rendering in X11  
>>> (default)} {
>>>    depends_lib-append \
>>> -        lib:libXrandr.2:xorg-libXrandr \
>>> -        lib:libXcursor.1:xorg-libXcursor \
>>> -        lib:libXfixes.3:xorg-libXfixes \
>>>        lib:libXi.6:xorg-libXi
>>>
>>> +        # These are optional dependencies... variants?
>>> +        #lib:libXrandr.2:xorg-libXrandr \
>>> +        #lib:libXcursor.1:xorg-libXcursor \
>>> +        #lib:libXdamage.1:xorg-libXdamage \
>>> +        #lib:libXcomposite.1:xorg-libXcomposite \
>>> +        #lib:libXfixes.3:xorg-libXfixes \
>>> +
>>>    configure.args-append      --with-xinput
>>> }
>>
>> Will these libraries automatically be used when available?
>
> Yeah, they'll be used based on 'pkg-config --exists foo'
>
> http://git.testbit.eu/Gtk/tree/configure.in
>
> 1541	 if $PKG_CONFIG --exists "xrandr >= 1.2" ; then
> 1542	AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
> 1543	
> 1544	X_PACKAGES="$X_PACKAGES xrandr"
> 1545	fi
>
>> If so, we
>> either need to specify --without-foo or if that is not possible,
>
> It's not =/
>
>> include
>> them by default.
>
> ugg... ok.
>
>> Otherwise dependencies will not be correct in the
>> registry and ports can break when other ports are
>> deactivated/uninstalled, because no dependency was registered.
>
>
> _______________________________________________
> macports-dev mailing list
> macports-dev at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev



More information about the macports-dev mailing list