diff mbox

[v2,3/4] tests/tcg: Create and populate misc tests for arch independent tests

Message ID 20160829224920.16686-4-bobby.prani@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Pranith Kumar Aug. 29, 2016, 10:49 p.m. UTC
Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
---
 tests/tcg/misc/Makefile           | 75 +++++++++++++++++++++++++++++++++++++++
 tests/tcg/{ => misc}/linux-test.c |  3 ++
 tests/tcg/{ => misc}/sha1.c       |  0
 tests/tcg/{ => misc}/test-mmap.c  |  0
 tests/tcg/{ => misc}/test_path.c  |  0
 tests/tcg/{ => misc}/testthread.c |  0
 6 files changed, 78 insertions(+)
 create mode 100644 tests/tcg/misc/Makefile
 rename tests/tcg/{ => misc}/linux-test.c (99%)
 rename tests/tcg/{ => misc}/sha1.c (100%)
 rename tests/tcg/{ => misc}/test-mmap.c (100%)
 rename tests/tcg/{ => misc}/test_path.c (100%)
 rename tests/tcg/{ => misc}/testthread.c (100%)

Comments

Alex Bennée Sept. 9, 2016, 2:55 p.m. UTC | #1
Pranith Kumar <bobby.prani@gmail.com> writes:

> Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
> ---
>  tests/tcg/misc/Makefile           | 75 +++++++++++++++++++++++++++++++++++++++
>  tests/tcg/{ => misc}/linux-test.c |  3 ++
>  tests/tcg/{ => misc}/sha1.c       |  0
>  tests/tcg/{ => misc}/test-mmap.c  |  0
>  tests/tcg/{ => misc}/test_path.c  |  0
>  tests/tcg/{ => misc}/testthread.c |  0
>  6 files changed, 78 insertions(+)
>  create mode 100644 tests/tcg/misc/Makefile
>  rename tests/tcg/{ => misc}/linux-test.c (99%)
>  rename tests/tcg/{ => misc}/sha1.c (100%)
>  rename tests/tcg/{ => misc}/test-mmap.c (100%)
>  rename tests/tcg/{ => misc}/test_path.c (100%)
>  rename tests/tcg/{ => misc}/testthread.c (100%)
>
> diff --git a/tests/tcg/misc/Makefile b/tests/tcg/misc/Makefile
> new file mode 100644
> index 0000000..39c316b
> --- /dev/null
> +++ b/tests/tcg/misc/Makefile
> @@ -0,0 +1,75 @@

I think the aim for misc is it can be built multiple times with whatever
compiler it is passed.

> +BUILD_DIR=../../../build/
> +SRC_PATH=../../../
> +include $(BUILD_DIR)/config-host.mak
> +include $(SRC_PATH)/rules.mak
> +
> +$(call set-vpath, $(SRC_PATH)/tests/tcg/misc)
> +
> +QEMU=$(BUILD_DIR)/$(ARCH)-linux-user/qemu-$(ARCH)
> +
> +QEMU_INCLUDES += -I$(BUILD_DIR)
> +CFLAGS=-Wall -O2 -g -fno-strict-aliasing -I$(SRC_PATH)/include -I$(BUILD_DIR)
> +#CFLAGS+=-msse2
> +LDFLAGS=
> +
> +# TODO: automatically detect ARM and MIPS compilers, and run those
> too

I think this is a holdover from the old Makefile. I suspect the best way
is to have a conditional setting of CC, LD etc so they can be overridden.

> +
> +# runcom maps page 0, so it requires root privileges
> +# also, pi_10.com runs indefinitely
> +
> +TESTS=linux-test \
> +      testthread \
> +      sha1 \
> +      test-mmap \
> +      test_path
> +      # runcom
> +
> +all: $(patsubst %,run-%,$(TESTS))
> +test: all
> +
> +# rules to run tests
> +
> +run-%: %
> +	-$(QEMU) ./$*
> +
> +run-linux-test: linux-test
> +run-testthread: testthread
> +run-sha1: sha1
> +run-test_path: test_path
> +
> +run-test-mmap: test-mmap
> +	-$(QEMU) ./test-mmap
> +	-$(QEMU) -p 8192 ./test-mmap 8192
> +	-$(QEMU) -p 16384 ./test-mmap 16384
> +	-$(QEMU) -p 32768 ./test-mmap 32768
> +
> +run-test_path: test_path
> +
> +# rules to compile tests
> +
> +test_path: test_path.o
> +	$(CC) $^ -o $@ -lglib-2.0
> +
> +test_path.o: test_path.c
> +	$(CC) $^ -c -o $@ $(QEMU_INCLUDES) `pkg-config --cflags --libs glib-2.0`
> +
> +testthread: testthread.c
> +	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lpthread
> +
> +# generic Linux and CPU test
> +linux-test: linux-test.c
> +	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lm
> +
> +test-mmap: test-mmap.c
> +	$(CC) $(CFLAGS) -Wall -O2 $(LDFLAGS) -o $@ $< -static
> +
> +# speed test
> +sha1: sha1.c
> +	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $<
> +
> +speed: sha1
> +	time ./sha1
> +	time $(QEMU) ./sha1
> +
> +clean:
> +	rm -f *~ *.o $(TESTS)
> diff --git a/tests/tcg/linux-test.c b/tests/tcg/misc/linux-test.c
> similarity index 99%
> rename from tests/tcg/linux-test.c
> rename to tests/tcg/misc/linux-test.c
> index 5070d31..41ad91c 100644
> --- a/tests/tcg/linux-test.c
> +++ b/tests/tcg/misc/linux-test.c
> @@ -39,6 +39,9 @@
>  #include <dirent.h>
>  #include <setjmp.h>
>  #include <sys/shm.h>
> +#include <stdbool.h>
> +#include <sys/resource.h>
> +#include "qemu/compiler.h"
>  #include "qemu/cutils.h"
>
>  #define TESTPATH "/tmp/linux-test.tmp"
> diff --git a/tests/tcg/sha1.c b/tests/tcg/misc/sha1.c
> similarity index 100%
> rename from tests/tcg/sha1.c
> rename to tests/tcg/misc/sha1.c
> diff --git a/tests/tcg/test-mmap.c b/tests/tcg/misc/test-mmap.c
> similarity index 100%
> rename from tests/tcg/test-mmap.c
> rename to tests/tcg/misc/test-mmap.c
> diff --git a/tests/tcg/test_path.c b/tests/tcg/misc/test_path.c
> similarity index 100%
> rename from tests/tcg/test_path.c
> rename to tests/tcg/misc/test_path.c
> diff --git a/tests/tcg/testthread.c b/tests/tcg/misc/testthread.c
> similarity index 100%
> rename from tests/tcg/testthread.c
> rename to tests/tcg/misc/testthread.c


--
Alex Bennée
diff mbox

Patch

diff --git a/tests/tcg/misc/Makefile b/tests/tcg/misc/Makefile
new file mode 100644
index 0000000..39c316b
--- /dev/null
+++ b/tests/tcg/misc/Makefile
@@ -0,0 +1,75 @@ 
+BUILD_DIR=../../../build/
+SRC_PATH=../../../
+include $(BUILD_DIR)/config-host.mak
+include $(SRC_PATH)/rules.mak
+
+$(call set-vpath, $(SRC_PATH)/tests/tcg/misc)
+
+QEMU=$(BUILD_DIR)/$(ARCH)-linux-user/qemu-$(ARCH)
+
+QEMU_INCLUDES += -I$(BUILD_DIR)
+CFLAGS=-Wall -O2 -g -fno-strict-aliasing -I$(SRC_PATH)/include -I$(BUILD_DIR)
+#CFLAGS+=-msse2
+LDFLAGS=
+
+# TODO: automatically detect ARM and MIPS compilers, and run those too
+
+# runcom maps page 0, so it requires root privileges
+# also, pi_10.com runs indefinitely
+
+TESTS=linux-test \
+      testthread \
+      sha1 \
+      test-mmap \
+      test_path
+      # runcom
+
+all: $(patsubst %,run-%,$(TESTS))
+test: all
+
+# rules to run tests
+
+run-%: %
+	-$(QEMU) ./$*
+
+run-linux-test: linux-test
+run-testthread: testthread
+run-sha1: sha1
+run-test_path: test_path
+
+run-test-mmap: test-mmap
+	-$(QEMU) ./test-mmap
+	-$(QEMU) -p 8192 ./test-mmap 8192
+	-$(QEMU) -p 16384 ./test-mmap 16384
+	-$(QEMU) -p 32768 ./test-mmap 32768
+
+run-test_path: test_path
+
+# rules to compile tests
+
+test_path: test_path.o
+	$(CC) $^ -o $@ -lglib-2.0
+
+test_path.o: test_path.c
+	$(CC) $^ -c -o $@ $(QEMU_INCLUDES) `pkg-config --cflags --libs glib-2.0`
+
+testthread: testthread.c
+	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lpthread
+
+# generic Linux and CPU test
+linux-test: linux-test.c
+	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lm
+
+test-mmap: test-mmap.c
+	$(CC) $(CFLAGS) -Wall -O2 $(LDFLAGS) -o $@ $< -static
+
+# speed test
+sha1: sha1.c
+	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $<
+
+speed: sha1
+	time ./sha1
+	time $(QEMU) ./sha1
+
+clean:
+	rm -f *~ *.o $(TESTS)
diff --git a/tests/tcg/linux-test.c b/tests/tcg/misc/linux-test.c
similarity index 99%
rename from tests/tcg/linux-test.c
rename to tests/tcg/misc/linux-test.c
index 5070d31..41ad91c 100644
--- a/tests/tcg/linux-test.c
+++ b/tests/tcg/misc/linux-test.c
@@ -39,6 +39,9 @@ 
 #include <dirent.h>
 #include <setjmp.h>
 #include <sys/shm.h>
+#include <stdbool.h>
+#include <sys/resource.h>
+#include "qemu/compiler.h"
 #include "qemu/cutils.h"
 
 #define TESTPATH "/tmp/linux-test.tmp"
diff --git a/tests/tcg/sha1.c b/tests/tcg/misc/sha1.c
similarity index 100%
rename from tests/tcg/sha1.c
rename to tests/tcg/misc/sha1.c
diff --git a/tests/tcg/test-mmap.c b/tests/tcg/misc/test-mmap.c
similarity index 100%
rename from tests/tcg/test-mmap.c
rename to tests/tcg/misc/test-mmap.c
diff --git a/tests/tcg/test_path.c b/tests/tcg/misc/test_path.c
similarity index 100%
rename from tests/tcg/test_path.c
rename to tests/tcg/misc/test_path.c
diff --git a/tests/tcg/testthread.c b/tests/tcg/misc/testthread.c
similarity index 100%
rename from tests/tcg/testthread.c
rename to tests/tcg/misc/testthread.c