[ANNOUNCE] xorg-server 1.7.5.901
Alan Coopersmith
Alan.Coopersmith at Sun.COM
Fri Mar 5 08:15:59 PST 2010
Dan Nicholson wrote:
> Is X at least linked to the right libraries? If not, then I think what
> we need to do is add them Xext/libXextmodule.la. Something like the
> attached patch should work, but I'm not sure it's the right thing.
I've been carrying around some similar patches in our builds to add library
linking to the modules (not libselinux of course, but others) to resolve
symbols since we build most of the drivers with -z defs to catch missing
symbol errors at build time instead of runtime, and the modules they link
against thus need to resolve their symbols. I've been slacking on
upstreaming it, but it hasn't seemed to cause any problems in the several
years we've had it. (The -R path is to handle our multilib layout, and
that part is definitely Solaris-specific.)
--- hw/xfree86/dixmods/Makefile.am 2009-05-08 17:45:57.848078000 -0700
+++ hw/xfree86/dixmods/Makefile.am 2009-05-08 17:46:07.162324000 -0700
@@ -36,6 +36,7 @@ libdbe_la_SOURCES = dbemodule.c
libfb_la_LDFLAGS = -avoid-version
libfb_la_LIBADD = $(top_builddir)/fb/libfb.la
+libfb_la_LIBADD += -lpixman-1
libfb_la_SOURCES = $(top_builddir)/fb/fbcmap_mi.c fbmodule.c
libfb_la_CFLAGS = $(AM_CFLAGS)
@@ -47,6 +48,8 @@ libwfb_la_CFLAGS = $(AM_CFLAGS) -DFB_ACC
libglx_la_LDFLAGS = -avoid-version -mimpure-text
if AIGLX
GLXDRI_LIBRARY = $(top_builddir)/glx/libglxdri.la
+libglx_la_LDFLAGS += -R$(extsmoduledir:amd64/extensions=extensions/amd64)
+libglx_la_LDFLAGS += -Wl,-N,libdri.so -Wl,-N,libdri2.so
endif
libglx_la_LIBADD = \
$(top_builddir)/glx/libglx.la \
diff -urp -x '*~' -x '*.orig' hw/xfree86/int10/Makefile.am
hw/xfree86/int10/Makefile.am
--- hw/xfree86/int10/Makefile.am 2007-10-17 07:01:23.000000000 -0700
+++ hw/xfree86/int10/Makefile.am 2009-05-08 17:46:07.162854000 -0700
@@ -42,3 +42,5 @@ libint10_la_SOURCES = stub.c xf86int10mo
endif
EXTRA_DIST = xf86x86emu.h INT10.HOWTO
+
+libint10_la_LIBADD = $(PCIACCESS_LIBS)
There's also a bunch to add a ton of -l flags to every driver too, but full
-z defs linking of those relies on us building a linker mapfile in our builds
that lists the symbols exported from the Xorg binary so that the linker can
record those as resolved already, and I've not checked to see if the way I've
done that is portable at all. An example of just adding the -l flags:
http://src.opensolaris.org/source/xref/x-cons/xnv-clone/open-src/driver/xf86-video-intel/libraries.patch
--
-Alan Coopersmith- alan.coopersmith at sun.com
Oracle Solaris Platform Engineering: X Window System
More information about the xorg-devel
mailing list