test: create a link to the generated hw/xfree86/sdksyms.c at build time
authorGaetan Nadon <memsize@videotron.ca>
Fri, 4 Apr 2014 18:59:21 +0000 (14:59 -0400)
committerKeith Packard <keithp@keithp.com>
Fri, 18 Apr 2014 18:52:16 +0000 (11:52 -0700)
Automake 1.14 gives us warning about source code specified in _SOURCES
that comes from directories other than the current one. It suggests to enable
the subdir-objects feature which only supports code in sub directories.

The test directory needs source from hw/xfree86 which is neither under test
nor under a sub directory of test. In 1.14 we get a warning, in 2.0 it will
break as it will overwrite the object code in xfree86.

The solution in this case is to create a link to hw/xfree86/sdksyms.c at build
time. It's just like any other built source file.

There are no links created in git.

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
test/.gitignore
test/Makefile.am

index acbda7a..da86d6e 100644 (file)
@@ -4,6 +4,7 @@ input
 list
 misc
 os
+sdksyms.c
 string
 touch
 xfree86
index 3ad24d9..32edc7a 100644 (file)
@@ -41,7 +41,7 @@ os_LDADD=$(TEST_LDADD)
 libxservertest_la_LIBADD = $(XSERVER_LIBS)
 if XORG
 
-nodist_libxservertest_la_SOURCES = $(top_builddir)/hw/xfree86/sdksyms.c
+nodist_libxservertest_la_SOURCES = sdksyms.c
 libxservertest_la_LIBADD += \
             $(top_builddir)/hw/xfree86/loader/libloader.la \
             $(top_builddir)/hw/xfree86/os-support/libxorgos.la \
@@ -55,6 +55,12 @@ libxservertest_la_LIBADD += \
             $(top_builddir)/hw/xfree86/dixmods/libxorgxkb.la \
             @XORG_LIBS@
 
+BUILT_SOURCES = sdksyms.c
+CLEANFILES = sdksyms.c
+
+sdksyms.c: $(top_builddir)/hw/xfree86/sdksyms.c
+       $(AM_V_GEN)$(LN_S) $(top_builddir)/hw/xfree86/sdksyms.c
+
 if DRI
 libxservertest_la_LIBADD += $(top_builddir)/hw/xfree86/dri/libdri.la
 endif