[PATCH v2] Record some additional library dependencies in xf86 modules

Alan Coopersmith alan.coopersmith at oracle.com
Sun Jun 6 12:22:06 PDT 2010


Helps with symbol resolution when building with -z defs

Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
---
 configure.ac                 |    8 +++++++-
 fb/Makefile.am               |    2 ++
 hw/xfree86/int10/Makefile.am |    1 +
 3 files changed, 10 insertions(+), 1 deletions(-)

Changes since v1:

 - Added the PKG_CHECK_MODULES(PIXMAN) as suggested by Julien Cristau.

 - Move the addition of PIXMAN_LIBS up to the top-level fb Makefile.am
   and let libtool propogate it down to everything that links against 
   libfb.la or libwfb.la from there.

diff --git a/configure.ac b/configure.ac
index c8b49de..dc35bf7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -794,7 +794,7 @@ APPLEWMPROTO="applewmproto >= 1.4"
 
 dnl Core modules for most extensions, et al.
 REQUIRED_MODULES="[randrproto >= 1.2.99.3] [renderproto >= 0.11] [fixesproto >= 4.1] [damageproto >= 1.1] [xcmiscproto >= 1.2.0] [xextproto >= 7.0.99.3] [xproto >= 7.0.17] [xtrans >= 1.2.2] [bigreqsproto >= 1.1.0] fontsproto [inputproto >= 1.9.99.902] [kbproto >= 1.0.3]"
-REQUIRED_LIBS="xfont xau [pixman-1 >= 0.15.20]"
+REQUIRED_LIBS="xfont xau"
 
 dnl List of libraries that require a specific version
 LIBAPPLEWM="applewm >= 1.4"
@@ -809,6 +809,12 @@ LIBPCIACCESS="pciaccess >= 0.8.0"
 LIBGLIB="glib-2.0 >= 2.16"
 LIBUDEV="libudev >= 143"
 LIBSELINUX="libselinux >= 2.0.86"
+LIBPIXMAN="pixman-1 >= 0.15.20"
+
+dnl Pixman is always required, but we separate it out so we can link
+dnl specific modules against it
+PKG_CHECK_MODULES(PIXMAN, $LIBPIXMAN)
+REQUIRED_LIBS="$REQUIRED_LIBS [$LIBPIXMAN]"
 
 if test "x$CONFIG_UDEV" = xyes &&
  { test "x$CONFIG_DBUS_API" = xyes || test "x$CONFIG_HAL" = xyes; }; then
diff --git a/fb/Makefile.am b/fb/Makefile.am
index 64e49f3..2f3073d 100644
--- a/fb/Makefile.am
+++ b/fb/Makefile.am
@@ -11,8 +11,10 @@ sdk_HEADERS = fb.h fbrop.h fboverlay.h wfbrename.h fbpict.h
 endif
 
 libfb_la_CFLAGS = $(AM_CFLAGS)
+libfb_la_LIBADD = $(PIXMAN_LIBS)
 
 libwfb_la_CFLAGS = $(AM_CFLAGS) -DFB_ACCESS_WRAPPER
+libwfb_la_LIBADD = $(PIXMAN_LIBS)
 
 libfb_la_SOURCES = 	\
 	fb.h		\
diff --git a/hw/xfree86/int10/Makefile.am b/hw/xfree86/int10/Makefile.am
index 36d2ad0..f5ece69 100644
--- a/hw/xfree86/int10/Makefile.am
+++ b/hw/xfree86/int10/Makefile.am
@@ -5,6 +5,7 @@ sdk_HEADERS = xf86int10.h
 EXTRA_CFLAGS =
 
 libint10_la_LDFLAGS = -avoid-version
+libint10_la_LIBADD = $(PCIACCESS_LIBS)
 
 COMMON_SOURCES = \
 	helper_exec.c \
-- 
1.5.6.5



More information about the xorg-devel mailing list