Message ID | 20200604085441.103087-3-kbastian@mail.uni-paderborn.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/tcg: Add TriCore tests | expand |
Bastian Koppelmann <kbastian@mail.uni-paderborn.de> writes: > At least for the TriCore target no easily available c compiler exists. > Thus we need to rely on "as" and "ld". This allows us to run them > through the docker image. > > Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> > --- > tests/tcg/Makefile.qemu | 11 +++++++++++ > tests/tcg/configure.sh | 2 ++ > 2 files changed, 13 insertions(+) > > diff --git a/tests/tcg/Makefile.qemu b/tests/tcg/Makefile.qemu > index 9c23aeaa2a..e5b3a4bacc 100644 > --- a/tests/tcg/Makefile.qemu > +++ b/tests/tcg/Makefile.qemu > @@ -50,11 +50,22 @@ DOCKER_COMPILE_CMD="$(DOCKER_SCRIPT) cc \ > -i qemu:$(DOCKER_IMAGE) \ > -s $(SRC_PATH) -- " > > +DOCKER_AS_CMD="$(DOCKER_SCRIPT) cc \ > + --cc $(DOCKER_CROSS_AS_GUEST) \ > + -i qemu:$(DOCKER_IMAGE) \ > + -s $(SRC_PATH) -- " > + > +DOCKER_LD_CMD="$(DOCKER_SCRIPT) cc \ > + --cc $(DOCKER_CROSS_LD_GUEST) \ > + -i qemu:$(DOCKER_IMAGE) \ > + -s $(SRC_PATH) -- " > + > .PHONY: docker-build-guest-tests > docker-build-guest-tests: docker-image-$(DOCKER_IMAGE) > $(call quiet-command, \ > (mkdir -p tests/tcg/$(TARGET) && cd tests/tcg/$(TARGET) && \ > $(MAKE) -f $(TCG_MAKE) TARGET="$(TARGET)" CC=$(DOCKER_COMPILE_CMD) \ > + AS=$(DOCKER_AS_CMD) LD=$(DOCKER_LD_CMD) \ > SRC_PATH="$(SRC_PATH)" BUILD_STATIC=y \ > EXTRA_CFLAGS="$(CROSS_CC_GUEST_CFLAGS)"), \ > "BUILD","$(TARGET) guest-tests with docker qemu:$(DOCKER_IMAGE)") > diff --git a/tests/tcg/configure.sh b/tests/tcg/configure.sh > index 2326f97856..6e8659d488 100755 > --- a/tests/tcg/configure.sh > +++ b/tests/tcg/configure.sh > @@ -242,6 +242,8 @@ for target in $target_list; do > if test $got_cross_cc = no && test "$container" != no && test -n "$container_image"; then > echo "DOCKER_IMAGE=$container_image" >> $config_target_mak > echo "DOCKER_CROSS_CC_GUEST=$container_cross_cc" >> $config_target_mak > + echo "DOCKER_CROSS_AS_GUEST=$container_cross_as" >> $config_target_mak > + echo "DOCKER_CROSS_LD_GUEST=$container_cross_ld" >> $config_target_mak > fi > done We should keep parity with locally installed tools though. Can we emit a CROSS_LD_GUEST/CROSS_AS_GUEST for locally installed tools?
diff --git a/tests/tcg/Makefile.qemu b/tests/tcg/Makefile.qemu index 9c23aeaa2a..e5b3a4bacc 100644 --- a/tests/tcg/Makefile.qemu +++ b/tests/tcg/Makefile.qemu @@ -50,11 +50,22 @@ DOCKER_COMPILE_CMD="$(DOCKER_SCRIPT) cc \ -i qemu:$(DOCKER_IMAGE) \ -s $(SRC_PATH) -- " +DOCKER_AS_CMD="$(DOCKER_SCRIPT) cc \ + --cc $(DOCKER_CROSS_AS_GUEST) \ + -i qemu:$(DOCKER_IMAGE) \ + -s $(SRC_PATH) -- " + +DOCKER_LD_CMD="$(DOCKER_SCRIPT) cc \ + --cc $(DOCKER_CROSS_LD_GUEST) \ + -i qemu:$(DOCKER_IMAGE) \ + -s $(SRC_PATH) -- " + .PHONY: docker-build-guest-tests docker-build-guest-tests: docker-image-$(DOCKER_IMAGE) $(call quiet-command, \ (mkdir -p tests/tcg/$(TARGET) && cd tests/tcg/$(TARGET) && \ $(MAKE) -f $(TCG_MAKE) TARGET="$(TARGET)" CC=$(DOCKER_COMPILE_CMD) \ + AS=$(DOCKER_AS_CMD) LD=$(DOCKER_LD_CMD) \ SRC_PATH="$(SRC_PATH)" BUILD_STATIC=y \ EXTRA_CFLAGS="$(CROSS_CC_GUEST_CFLAGS)"), \ "BUILD","$(TARGET) guest-tests with docker qemu:$(DOCKER_IMAGE)") diff --git a/tests/tcg/configure.sh b/tests/tcg/configure.sh index 2326f97856..6e8659d488 100755 --- a/tests/tcg/configure.sh +++ b/tests/tcg/configure.sh @@ -242,6 +242,8 @@ for target in $target_list; do if test $got_cross_cc = no && test "$container" != no && test -n "$container_image"; then echo "DOCKER_IMAGE=$container_image" >> $config_target_mak echo "DOCKER_CROSS_CC_GUEST=$container_cross_cc" >> $config_target_mak + echo "DOCKER_CROSS_AS_GUEST=$container_cross_as" >> $config_target_mak + echo "DOCKER_CROSS_LD_GUEST=$container_cross_ld" >> $config_target_mak fi done
At least for the TriCore target no easily available c compiler exists. Thus we need to rely on "as" and "ld". This allows us to run them through the docker image. Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> --- tests/tcg/Makefile.qemu | 11 +++++++++++ tests/tcg/configure.sh | 2 ++ 2 files changed, 13 insertions(+)