1f7df2e56Smrgif ENABLE_UNIT_TESTS
2f7df2e56SmrgSUBDIRS= .
37e31ba66SmrgAM_CFLAGS = $(DIX_CFLAGS) @XORG_CFLAGS@
47e31ba66SmrgAM_CPPFLAGS = $(XORG_INCS)
57e31ba66Smrg
67e31ba66Smrgtests_CPPFLAGS=
77e31ba66SmrgCLEANFILES=
87e31ba66Smrg
97e31ba66Smrgtests_SOURCES = \
107e31ba66Smrg        tests-common.c \
117e31ba66Smrg	tests-common.h \
127e31ba66Smrg        list.c \
137e31ba66Smrg        string.c \
147e31ba66Smrg        tests.c \
157e31ba66Smrg	tests.h
167e31ba66Smrg
177e31ba66Smrgnoinst_PROGRAMS = simple-xinit tests
187e31ba66Smrg
197e31ba66Smrgif XVFB
207e31ba66SmrgXVFB_TESTS = scripts/xvfb-piglit.sh
217e31ba66Smrgif XEPHYR
227e31ba66Smrgif GLAMOR
237e31ba66SmrgXEPHYR_GLAMOR_TESTS = scripts/xephyr-glamor-piglit.sh
247e31ba66Smrgendif
25f7df2e56Smrgendif
26f7df2e56Smrgendif
276747b715Smrg
287e31ba66SmrgSCRIPT_TESTS = \
297e31ba66Smrg	$(XVFB_TESTS) \
307e31ba66Smrg	$(XEPHYR_GLAMOR_TESTS) \
317e31ba66Smrg	$(NULL)
327e31ba66Smrg
337e31ba66SmrgTESTS = tests \
347e31ba66Smrg	$(SCRIPT_TESTS) \
357e31ba66Smrg	$(NULL)
367e31ba66Smrg
377e31ba66SmrgTESTS_ENVIRONMENT = \
387e31ba66Smrg	XSERVER_DIR=$(abs_top_srcdir) \
397e31ba66Smrg	XSERVER_BUILDDIR=$(abs_top_builddir) \
407e31ba66Smrg	$(XORG_MALLOC_DEBUG_ENV) \
417e31ba66Smrg	$(NULL)
427e31ba66Smrg
437e31ba66Smrgtests_LDADD =
446747b715Smrg
45f7df2e56Smrgif XORG
467e31ba66Smrg
477e31ba66Smrg# Tests that require at least some DDX functions in order to fully link
487e31ba66Smrg# For now, requires xf86 ddx, could be adjusted to use another
497e31ba66Smrg
507e31ba66SmrgAM_CPPFLAGS += \
517e31ba66Smrg	-I$(srcdir)/xi1 \
527e31ba66Smrg	-I$(srcdir)/xi2 \
537e31ba66Smrg	-I$(top_srcdir)/hw/xfree86/common \
547e31ba66Smrg	-I$(top_srcdir)/hw/xfree86/parser \
55f7df2e56Smrg	-I$(top_srcdir)/hw/xfree86/ddc \
56f7df2e56Smrg	-I$(top_srcdir)/hw/xfree86/i2c -I$(top_srcdir)/hw/xfree86/modes \
57f7df2e56Smrg	-I$(top_srcdir)/hw/xfree86/ramdac -I$(top_srcdir)/hw/xfree86/dri \
58f7df2e56Smrg	-I$(top_srcdir)/hw/xfree86/dri2 -I$(top_srcdir)/dri3
597e31ba66Smrgtests_CPPFLAGS += $(AM_CPPFLAGS)
607e31ba66Smrg
617e31ba66Smrgtests_SOURCES += \
627e31ba66Smrg        fixes.c \
637e31ba66Smrg        input.c \
647e31ba66Smrg        misc.c \
657e31ba66Smrg        signal-logging.c \
667e31ba66Smrg        touch.c \
677e31ba66Smrg        xfree86.c \
687e31ba66Smrg        test_xkb.c \
697e31ba66Smrg        xtest.c
707e31ba66Smrgtests_CPPFLAGS += -DXORG_TESTS
716747b715Smrg
727e31ba66Smrgif RES
737e31ba66Smrgtests_SOURCES += hashtabletest.c
747e31ba66Smrgtests_CPPFLAGS += -DRES_TESTS
756747b715Smrgendif
766747b715Smrg
777e31ba66Smrgendif XORG
787e31ba66Smrg
797e31ba66Smrgif HAVE_LD_WRAP
807e31ba66Smrg
817e31ba66Smrgtests_CPPFLAGS += -DLDWRAP_TESTS
827e31ba66Smrg
837e31ba66Smrgif XORG
847e31ba66Smrgtests_SOURCES += \
857e31ba66Smrg	xi1/protocol-xchangedevicecontrol.c \
867e31ba66Smrg	xi2/protocol-common.c \
877e31ba66Smrg	xi2/protocol-xiqueryversion.c \
887e31ba66Smrg	xi2/protocol-xiquerydevice.c \
897e31ba66Smrg	xi2/protocol-xiselectevents.c \
907e31ba66Smrg	xi2/protocol-xigetselectedevents.c \
917e31ba66Smrg	xi2/protocol-xisetclientpointer.c \
927e31ba66Smrg	xi2/protocol-xigetclientpointer.c \
937e31ba66Smrg	xi2/protocol-xiquerypointer.c \
947e31ba66Smrg	xi2/protocol-xipassivegrabdevice.c \
957e31ba66Smrg	xi2/protocol-xiwarppointer.c \
967e31ba66Smrg	xi2/protocol-eventconvert.c \
977e31ba66Smrg	xi2/xi2.c \
987e31ba66Smrg	xi2/protocol-common.h
997e31ba66Smrg
1007e31ba66Smrgtests_LDFLAGS = \
1017e31ba66Smrg	-Wl,-wrap,dixLookupWindow \
1027e31ba66Smrg	-Wl,-wrap,dixLookupClient \
1037e31ba66Smrg	-Wl,-wrap,WriteToClient \
1047e31ba66Smrg	-Wl,-wrap,dixLookupWindow \
1057e31ba66Smrg	-Wl,-wrap,XISetEventMask \
1067e31ba66Smrg	-Wl,-wrap,AddResource \
1077e31ba66Smrg	-Wl,-wrap,GrabButton \
1087e31ba66Smrg	$()
1097e31ba66Smrgendif XORG
1107e31ba66Smrg
1117e31ba66Smrgelse !HAVE_LD_WRAP
1127e31ba66Smrg
1137e31ba66Smrg# Print that xi1-tests were skipped (exit code 77 for automake test harness)
1147e31ba66SmrgTESTS += xi1-tests
1157e31ba66SmrgCLEANFILES += xi1-tests
1167e31ba66Smrg
1177e31ba66Smrgxi1-tests:
1187e31ba66Smrg	@echo 'echo "ld -wrap support required for xi1 unit tests, skipping"' > $@
1197e31ba66Smrg	@echo 'exit 77' >> $@
1207e31ba66Smrg	$(AM_V_GEN)chmod +x $@
1217e31ba66Smrg
1227e31ba66Smrg# Print that xi2-tests were skipped (exit code 77 for automake test harness)
1237e31ba66SmrgTESTS += xi2-tests
1247e31ba66SmrgCLEANFILES += xi2-tests
1257e31ba66Smrg
1267e31ba66Smrgxi2-tests:
1277e31ba66Smrg	@echo 'echo "ld -wrap support required for xi2 unit tests, skipping"' > $@
1287e31ba66Smrg	@echo 'exit 77' >> $@
1297e31ba66Smrg	$(AM_V_GEN)chmod +x $@
1307e31ba66Smrg
1317e31ba66Smrgendif !HAVE_LD_WRAP
1327e31ba66Smrg
133f7df2e56Smrgif XORG
1346747b715Smrg
1357e31ba66Smrgnodist_tests_SOURCES = sdksyms.c
1367e31ba66Smrg
1377e31ba66Smrgtests_LDADD += \
1386747b715Smrg            $(top_builddir)/hw/xfree86/loader/libloader.la \
1396747b715Smrg            $(top_builddir)/hw/xfree86/common/libcommon.la \
1407e31ba66Smrg            $(top_builddir)/hw/xfree86/os-support/libxorgos.la \
141f7df2e56Smrg            $(top_builddir)/hw/xfree86/parser/libxf86config.la \
1426747b715Smrg            $(top_builddir)/hw/xfree86/dixmods/libdixmods.la \
1436747b715Smrg            $(top_builddir)/hw/xfree86/modes/libxf86modes.la \
1446747b715Smrg            $(top_builddir)/hw/xfree86/ramdac/libramdac.la \
1456747b715Smrg            $(top_builddir)/hw/xfree86/ddc/libddc.la \
1466747b715Smrg            $(top_builddir)/hw/xfree86/i2c/libi2c.la \
1477e31ba66Smrg            $(top_builddir)/hw/xfree86/xkb/libxorgxkb.la \
148f7df2e56Smrg            $(top_builddir)/Xext/libXvidmode.la \
1495a112b11Smrg            $(top_builddir)/fb/libfb.la \
1507e31ba66Smrg            $(XSERVER_LIBS) \
1517e31ba66Smrg            $(XORG_LIBS)
1527e31ba66Smrg
1537e31ba66Smrgif !SPECIAL_DTRACE_OBJECTS
1547e31ba66Smrgtests_LDADD += $(top_builddir)/os/libos.la
1557e31ba66Smrgendif
1567e31ba66Smrg
1577e31ba66Smrgif GLX
1587e31ba66Smrgtests_LDADD += $(top_builddir)/glx/libglxvnd.la
1597e31ba66Smrgendif
160f7df2e56Smrg
161f7df2e56SmrgBUILT_SOURCES = sdksyms.c
1627e31ba66SmrgCLEANFILES += sdksyms.c
163f7df2e56Smrg
164f7df2e56Smrgsdksyms.c: $(top_builddir)/hw/xfree86/sdksyms.c
165f7df2e56Smrg	$(AM_V_GEN)$(LN_S) $(top_builddir)/hw/xfree86/sdksyms.c
166f7df2e56Smrg
167f7df2e56Smrgif DRI
1687e31ba66Smrgtests_LDADD += $(top_builddir)/hw/xfree86/dri/libdri.la
169f7df2e56Smrgendif
170f7df2e56Smrg
171f7df2e56Smrgif DRI2
1727e31ba66Smrgtests_LDADD += $(top_builddir)/hw/xfree86/dri2/libdri2.la
173f7df2e56Smrgendif
174f7df2e56Smrg
175f7df2e56Smrgif DRI3
1767e31ba66Smrgtests_LDADD += $(top_builddir)/dri3/libdri3.la
177f7df2e56Smrgendif
178f7df2e56Smrg
1797e31ba66Smrgendif XORG
180f7df2e56Smrg
1817e31ba66Smrg# GNU LD scans only in one direction, add the following dependencies at the end
1827e31ba66Smrg# so as they get picked up by the previously-linked libraries
1837e31ba66Smrgtests_LDADD += $(XORG_SYS_LIBS) $(XSERVER_SYS_LIBS) $(GLX_SYS_LIBS)
184f7df2e56Smrg
1857e31ba66Smrgendif ENABLE_UNIT_TESTS
1866747b715Smrg
1877e31ba66SmrgEXTRA_DIST = \
1887e31ba66Smrg	scripts/xvfb-piglit.sh \
1897e31ba66Smrg	scripts/xephyr-glamor-piglit.sh \
1907e31ba66Smrg	scripts/xinit-piglit-session.sh \
1917e31ba66Smrg	scripts/run-piglit.sh \
1927e31ba66Smrg	$(NULL)
1936747b715Smrg
194