Xorg 7.3 and cyclic dependencies (6.2-RELEASE)

riscman riscman at gmail.com
Sun Sep 16 11:48:22 PDT 2007


Hello fellows

A few days ago, I portsnap fetch updated before installing new ports. (I'm
using FreeBSD-6.2-RELEASE with a custom kernel) I did a pkgdb -F and found
out that the new autotools superseeded gnu-autoconfig and gnu-automake, in
UPDATING it recommended a portupgrade -a after fetching the new autotools
release. I saw the xorg 7.3 as well, so i tossed it in before the massive
portupgrade (-pa) (bad idea), since, what the hell, xorg is already modular,
<sarcasm>it would be a snap to upgrade</sarcasm>.

The portupgrade had gone unusually slow (delaying a lot installation
registration and packaging), so I started to lose my patience. The old
gnu-autoconfig and automake still appeared while doing a pkgdb -F, I did a
pkgdb -fu, and still there. But the cyclic dependencies appeared too. Many
things went wrong and I didn't know where to start, was it the autotools
upgrade, the xorg upgrade, the massive portupgrade -a? Did I had to rebuild
something?

I did some quick googling and found in lucky.freebsd.ports that the issue
was a linke in the gtk20 makefile (USE_XPM=yes), and oh, THEY insisted so
much even though that was not the problem, both in the google.groups and in
the freebsd-ports mail list. I checked the makefile, and the revision was
the latest, so that offending line was not there. Anyway I gave a try and
recompiled. This didn't worked out either.

The following workaround in google groups seemed reasonable both at the time
and after knowing what really happened, though it was ignored at the time,
it gave hints to what was really wrong:
"
#cat /usr/ports/x11/pixman/Makefile.local
.undef WANT_GNOME
"
It worked out the dependency symptom, not the cause... so I started to check
the cvsweb for direct solutions and found out that upgrading xorg to 7.3did:

*Break my working xorg (ABI issue) by not telling ANYWHERE that the i810
driver(i915GM chipset) had to be upgraded as well, which I didn't noticed
until two days later when, in a naive attempt to try to fix things, I
rebooted.

*Brought a cycling dependency conflict (started as a cairo->pango->cairo,
and then the xorg-libs tossed in the mix) caused by _pixman_ depending on
gtk20 (WTF!?),

*And not until 3 hours ago, this was fixed by additionally bumping
PORTREVISION in xorg-libraries for the exact offending pixman issue.

In order to fix this what I had to do, just this morning, was:

Update: portsnap fetch update
ABI issue: portupgrade x11-drivers/xf86-video-i810
Cyclic dependencies: portupgrade -f x11/pixman && portupgrade -f
x11/xorg-libs && pkgdb -fu && pkgdb -L && pkgdb -F
(if you have an gtk20 with the XPM issue, do a portupgrade as well before
pkgdb)

Hope this helps.

-riscman

p.s. The thread at google groups:
http://groups.google.com/group/lucky.freebsd.ports/browse_thread/thread/b3726d9e6095dc8a/0816fcbc11fc4d38


More information about the freebsd-ports mailing list