libxorg.la served to collect all the Xorg convenience libraries into one massive archive to link into Xorg. This made things easy for symbol resolution, but it tremendously slowed down the build since each change caused libxorg.la to be rebuilt. This is an extremely slow process of extracting all the objects from the sub-libraries and recombining them. Instead, the archives are linked directly into Xorg. The order of the libraries had to be tweaked a bit to make symbols resolve correctly with the lower level code moving later in the link command. As a side effect, since the dtrace objects are now being linked directly into Xorg, we don't need the SPECIAL_DTRACE_OBJECTS hack to add them twice. Signed-off-by: Dan Nicholson <dbn.lists@gmail.com> Tested-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Daniel Stone <daniel@fooishbar.org> Tested-by: Peter Hutterer <peter.hutterer@who-t.net>
45 lines
1.6 KiB
Makefile
45 lines
1.6 KiB
Makefile
if ENABLE_UNIT_TESTS
|
|
if HAVE_LD_WRAP
|
|
SUBDIRS= . xi2
|
|
noinst_PROGRAMS = xkb input xtest list misc fixes
|
|
check_LTLIBRARIES = libxservertest.la
|
|
|
|
TESTS=$(noinst_PROGRAMS)
|
|
|
|
AM_CFLAGS = $(DIX_CFLAGS) @XORG_CFLAGS@
|
|
INCLUDES = $(XORG_INCS) -I$(top_srcdir)/hw/xfree86/parser \
|
|
-I$(top_srcdir)/miext/cw -I$(top_srcdir)/hw/xfree86/ddc \
|
|
-I$(top_srcdir)/hw/xfree86/i2c -I$(top_srcdir)/hw/xfree86/modes \
|
|
-I$(top_srcdir)/hw/xfree86/ramdac
|
|
TEST_LDADD=libxservertest.la $(XORG_SYS_LIBS) $(XSERVER_SYS_LIBS)
|
|
|
|
if SPECIAL_DTRACE_OBJECTS
|
|
TEST_LDADD += $(OS_LIB) $(DIX_LIB)
|
|
endif
|
|
|
|
xkb_LDADD=$(TEST_LDADD)
|
|
input_LDADD=$(TEST_LDADD)
|
|
xtest_LDADD=$(TEST_LDADD)
|
|
list_LDADD=$(TEST_LDADD)
|
|
misc_LDADD=$(TEST_LDADD)
|
|
fixes_LDADD=$(TEST_LDADD)
|
|
|
|
nodist_libxservertest_la_SOURCES = $(top_builddir)/hw/xfree86/sdksyms.c
|
|
libxservertest_la_LIBADD = \
|
|
$(XSERVER_LIBS) \
|
|
$(top_builddir)/hw/xfree86/loader/libloader.la \
|
|
$(top_builddir)/hw/xfree86/os-support/libxorgos.la \
|
|
$(top_builddir)/hw/xfree86/common/libcommon.la \
|
|
$(top_builddir)/hw/xfree86/parser/libxf86config_internal.la \
|
|
$(top_builddir)/hw/xfree86/dixmods/libdixmods.la \
|
|
$(top_builddir)/hw/xfree86/modes/libxf86modes.la \
|
|
$(top_builddir)/hw/xfree86/ramdac/libramdac.la \
|
|
$(top_builddir)/hw/xfree86/ddc/libddc.la \
|
|
$(top_builddir)/hw/xfree86/i2c/libi2c.la \
|
|
$(top_builddir)/hw/xfree86/dixmods/libxorgxkb.la \
|
|
$(top_builddir)/mi/libmi.la \
|
|
$(top_builddir)/os/libos.la \
|
|
@XORG_LIBS@
|
|
endif
|
|
endif
|