diff mbox

[v2,1/4] tests/tcg: Move arm tests to arch specific folder

Message ID 20160829224920.16686-2-bobby.prani@gmail.com
State New
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/arm/Makefile                | 45 +++++++++++++++++++++++++++++++++++
 tests/tcg/{ => arm}/hello-arm.c       |  0
 tests/tcg/{ => arm}/test-arm-iwmmxt.s |  0
 3 files changed, 45 insertions(+)
 create mode 100644 tests/tcg/arm/Makefile
 rename tests/tcg/{ => arm}/hello-arm.c (100%)
 rename tests/tcg/{ => arm}/test-arm-iwmmxt.s (100%)

Comments

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

> Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
> ---
>  tests/tcg/arm/Makefile                | 45 +++++++++++++++++++++++++++++++++++
>  tests/tcg/{ => arm}/hello-arm.c       |  0
>  tests/tcg/{ => arm}/test-arm-iwmmxt.s |  0
>  3 files changed, 45 insertions(+)
>  create mode 100644 tests/tcg/arm/Makefile
>  rename tests/tcg/{ => arm}/hello-arm.c (100%)
>  rename tests/tcg/{ => arm}/test-arm-iwmmxt.s (100%)
>
> diff --git a/tests/tcg/arm/Makefile b/tests/tcg/arm/Makefile
> new file mode 100644
> index 0000000..da92305
> --- /dev/null
> +++ b/tests/tcg/arm/Makefile
> @@ -0,0 +1,45 @@
> +BUILD_DIR=../../../build/

I think this needs to come from the calling Makefile or be set if being
called direct:

BUILD_DIR?=$(CURDIR)

The BUILD_DIR can be outside of the tree.

> +SRC_PATH=../../../
> +include $(BUILD_DIR)/config-host.mak
> +include $(SRC_PATH)/rules.mak
> +
> +$(call set-vpath, $(SRC_PATH)/tests/tcg/arm)
> +
> +QEMU=$(BUILD_DIR)/arm-linux-user/qemu-arm
> +
> +QEMU_INCLUDES += -I$(BUILD_DIR)
> +CFLAGS=-Wall -O2 -g -fno-strict-aliasing
> +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=hello-arm arm-iwmmxt
> +
> +all: $(patsubst %,run-%,$(TESTS))
> +test: all
> +
> +# rules to run tests
> +
> +run-%: %
> +	$(QEMU) ./$*
> +
> +#.PHONY: $(patsubst %,run-%,$(TESTS))
> +
> +run-hello-arm: hello-arm
> +run-arm-iwmmxt: arm-iwmmxt
> +
> +# arm test
> +hello-arm: hello-arm.o
> +	arm-linux-gnueabi-ld -o $@ $<
> +
> +hello-arm.o: hello-arm.c
> +	arm-linux-gnueabi-gcc -Wall -g -O2 -c -o $@ $<
> +
> +arm-iwmmxt: test-arm-iwmmxt.s
> +	cpp < $< | arm-linux-gnueabi-gcc -Wall -static -march=iwmmxt -mabi=aapcs -x assembler - -o $@

The ld/gcc/cpp calls need to be done via env variables so they can be
changed easily.

> +
> +clean:
> +	rm -f *~ *.o $(TESTS)
> diff --git a/tests/tcg/hello-arm.c b/tests/tcg/arm/hello-arm.c
> similarity index 100%
> rename from tests/tcg/hello-arm.c
> rename to tests/tcg/arm/hello-arm.c
> diff --git a/tests/tcg/test-arm-iwmmxt.s b/tests/tcg/arm/test-arm-iwmmxt.s
> similarity index 100%
> rename from tests/tcg/test-arm-iwmmxt.s
> rename to tests/tcg/arm/test-arm-iwmmxt.s


--
Alex Bennée
diff mbox

Patch

diff --git a/tests/tcg/arm/Makefile b/tests/tcg/arm/Makefile
new file mode 100644
index 0000000..da92305
--- /dev/null
+++ b/tests/tcg/arm/Makefile
@@ -0,0 +1,45 @@ 
+BUILD_DIR=../../../build/
+SRC_PATH=../../../
+include $(BUILD_DIR)/config-host.mak
+include $(SRC_PATH)/rules.mak
+
+$(call set-vpath, $(SRC_PATH)/tests/tcg/arm)
+
+QEMU=$(BUILD_DIR)/arm-linux-user/qemu-arm
+
+QEMU_INCLUDES += -I$(BUILD_DIR)
+CFLAGS=-Wall -O2 -g -fno-strict-aliasing
+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=hello-arm arm-iwmmxt
+
+all: $(patsubst %,run-%,$(TESTS))
+test: all
+
+# rules to run tests
+
+run-%: %
+	$(QEMU) ./$*
+
+#.PHONY: $(patsubst %,run-%,$(TESTS))
+
+run-hello-arm: hello-arm
+run-arm-iwmmxt: arm-iwmmxt
+
+# arm test
+hello-arm: hello-arm.o
+	arm-linux-gnueabi-ld -o $@ $<
+
+hello-arm.o: hello-arm.c
+	arm-linux-gnueabi-gcc -Wall -g -O2 -c -o $@ $<
+
+arm-iwmmxt: test-arm-iwmmxt.s
+	cpp < $< | arm-linux-gnueabi-gcc -Wall -static -march=iwmmxt -mabi=aapcs -x assembler - -o $@
+
+clean:
+	rm -f *~ *.o $(TESTS)
diff --git a/tests/tcg/hello-arm.c b/tests/tcg/arm/hello-arm.c
similarity index 100%
rename from tests/tcg/hello-arm.c
rename to tests/tcg/arm/hello-arm.c
diff --git a/tests/tcg/test-arm-iwmmxt.s b/tests/tcg/arm/test-arm-iwmmxt.s
similarity index 100%
rename from tests/tcg/test-arm-iwmmxt.s
rename to tests/tcg/arm/test-arm-iwmmxt.s