]> mj.ucw.cz Git - eval.git/blobdiff - box/Makefile
Isolate: Polished help text
[eval.git] / box / Makefile
index 8cc8716aadee5e2068bffa2c4936b92d2519b210..c5d6b2a612402c8388ef9abaa8b9e22ed5963cb5 100644 (file)
@@ -1,11 +1,41 @@
 # Makefile for MO-Eval sandbox
-# (c) 2008 Martin Mares <mj@ucw.cz>
+# (c) 2008--2010 Martin Mares <mj@ucw.cz>
 
 DIRS+=box
 PROGS+=$(o)/box/box
 
+BOX_CFLAGS=
+ifdef CONFIG_BOX_KERNEL_AMD64
+BOX_CFLAGS += -m64
+endif
+
 $(o)/box/box: $(o)/box/box.o
 $(o)/box/box.o: $(o)/box/syscall-table.h
 
+$(o)/box/box: LDFLAGS+=$(BOX_CFLAGS)
+$(o)/box/box.o: CFLAGS+=$(BOX_CFLAGS)
+
 $(o)/box/syscall-table.h: $(s)/box/mk-syscall-table
-       sh $^ >$@
+       sh $^ >$@ $(CFLAGS) $(BOX_CFLAGS)
+
+box-tests: $(addprefix $(o)/box/test-sys,32-int80 64-int80 32-syscall 64-syscall 32-sysenter 64-sysenter)
+
+.PHONY: box-tests
+
+$(o)/box/test-sys32-int80: $(s)/box/test-syscalls.c
+       $(CC) -m32 $^ -o $@ -DTEST_INT80
+
+$(o)/box/test-sys64-int80: $(s)/box/test-syscalls.c
+       $(CC) -m64 $^ -o $@ -DTEST_INT80
+
+$(o)/box/test-sys32-syscall: $(s)/box/test-syscalls.c
+       $(CC) -m32 $^ -o $@ -DTEST_SYSCALL_32
+
+$(o)/box/test-sys64-syscall: $(s)/box/test-syscalls.c
+       $(CC) -m64 $^ -o $@ -DTEST_SYSCALL_64
+
+$(o)/box/test-sys32-sysenter: $(s)/box/test-syscalls.c
+       $(CC) -m32 $^ -o $@ -DTEST_SYSENTER_32
+
+$(o)/box/test-sys64-sysenter: $(s)/box/test-syscalls.c
+       $(CC) -m64 $^ -o $@ -DTEST_SYSENTER_32 #sic