[PATCH] Fix build of unit tests when dtrace probes are enabled
Alan Coopersmith
alan.coopersmith at sun.com
Tue Sep 15 21:13:01 PDT 2009
ar loses the dtrace probe magic when building static libraries, so we
have to link with the .O files in order to resolve the dtrace probe symbols.
Signed-off-by: Alan Coopersmith <alan.coopersmith at sun.com>
---
configure.ac | 2 ++
dix/Makefile.am | 4 ++--
test/Makefile.am | 4 ++++
test/xi2/Makefile.am | 4 ++++
4 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 9541a59..485b9b0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1213,6 +1213,8 @@ else
DIX_LIB='$(top_builddir)/dix/libdix.la'
OS_LIB='$(top_builddir)/os/libos.la'
fi
+AC_SUBST([DIX_LIB])
+AC_SUBST([OS_LIB])
MAIN_LIB='$(top_builddir)/dix/libmain.la'
AC_SUBST([MAIN_LIB])
diff --git a/dix/Makefile.am b/dix/Makefile.am
index 13e5ded..764860c 100644
--- a/dix/Makefile.am
+++ b/dix/Makefile.am
@@ -56,12 +56,12 @@ Xserver-dtrace.h: $(srcdir)/Xserver.d
# Generate dtrace object code for probes in libdix
dtrace-dix.o: $(top_srcdir)/dix/Xserver.d $(am_libdix_la_OBJECTS)
- $(DTRACE) -G -C -o $@ -s $(top_srcdir)/dix/Xserver.d .libs/*.o
+ $(DTRACE) -G -C -o $@ -s $(top_srcdir)/dix/Xserver.d $(am_libdix_la_OBJECTS:%.lo=.libs/%.o)
noinst_PROGRAMS = dix.O
dix.O: dtrace-dix.o $(am_libdix_la_OBJECTS)
- ld -r -o $@ .libs/*.o
+ ld -r -o $@ $(am_libdix_la_OBJECTS:%.lo=.libs/%.o)
endif
dix.c:
diff --git a/test/Makefile.am b/test/Makefile.am
index d8d8985..1bd76f5 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -9,6 +9,10 @@ AM_CFLAGS = $(DIX_CFLAGS) $(GLIB_CFLAGS) @XORG_CFLAGS@
INCLUDES = @XORG_INCS@
TEST_LDADD=libxservertest.la $(XORG_SYS_LIBS) $(XSERVER_SYS_LIBS) $(GLIB_LIBS)
+if XSERVER_DTRACE
+TEST_LDADD += $(OS_LIB) $(DIX_LIB)
+endif
+
xkb_LDADD=$(TEST_LDADD)
input_LDADD=$(TEST_LDADD)
xtest_LDADD=$(TEST_LDADD)
diff --git a/test/xi2/Makefile.am b/test/xi2/Makefile.am
index b8362ca..ef6d0f0 100644
--- a/test/xi2/Makefile.am
+++ b/test/xi2/Makefile.am
@@ -17,6 +17,10 @@ INCLUDES = @XORG_INCS@
TEST_LDADD=../libxservertest.la $(XORG_SYS_LIBS) $(XSERVER_SYS_LIBS) $(GLIB_LIBS)
COMMON_SOURCES=protocol-common.h protocol-common.c
+if XSERVER_DTRACE
+TEST_LDADD += $(OS_LIB) $(DIX_LIB)
+endif
+
protocol_xiqueryversion_LDADD=$(TEST_LDADD)
protocol_xiquerydevice_LDADD=$(TEST_LDADD)
protocol_xiselectevents_LDADD=$(TEST_LDADD)
--
1.5.6.5
More information about the xorg-devel
mailing list