The test-i386 test case is a little special as it includes assembler files. Add the additional compile magic to assemble these bits and link them to the final binary.
Signed-off-by: Alex Bennée <alex.ben...@linaro.org> --- tests/tcg/i386/Makefile.target | 19 +++++++++++++++++++ tests/tcg/i386/test-i386.c | 1 - 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target index 7dbb7992e7..1df69e0dab 100644 --- a/tests/tcg/i386/Makefile.target +++ b/tests/tcg/i386/Makefile.target @@ -8,3 +8,22 @@ ifdef CROSS_CC_GUEST_CFLAGS CFLAGS+=$(CROSS_CC_GUEST_CFLAGS) endif endif + +# +# test-386 includes a couple of additional objects that need to be linked together +# + +TEST_I386_DEPS=test-i386-code16.o test-i386-vm86.o + +# override the default compile and link in one go rule +test-i386.o: test-i386.c + $(CC) $(CFLAGS) -c $< -o $@ + +# and provide a rule to compile .S files +%.o: %.S + $(CC) $(CFLAGS) -c $< -o $@ + +test-i386: LDFLAGS+=-lm -lc +test-i386: test-i386.o $(TEST_I386_DEPS) + $(LD) -melf_i386 $(LDFLAGS) $< $(TEST_I386_DEPS) -o $@ + diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c index 9599204895..cae6a7773a 100644 --- a/tests/tcg/i386/test-i386.c +++ b/tests/tcg/i386/test-i386.c @@ -17,7 +17,6 @@ * along with this program; if not, see <http://www.gnu.org/licenses/>. */ #define _GNU_SOURCE -#include "qemu/compiler.h" #include <stdlib.h> #include <stdio.h> #include <string.h> -- 2.16.2