[PATCH v4 00/12] tools/nolibc: add 32/64-bit powerpc support

From: Zhangjin Wu
Date: Tue Aug 01 2023 - 15:36:20 EST


Hi, Willy, Hi Thomas

v4 here is mainly with a new nolibc-test-config target from your
suggestions and with the reordering of some patches to make
nolibc-test-config be fast forward.

run-user tests for all of the powerpc variants:

$ for arch in ppc ppc64 ppc64le; do make run-user XARCH=$arch | grep status; done
165 test(s): 157 passed, 8 skipped, 0 failed => status: warning
165 test(s): 157 passed, 8 skipped, 0 failed => status: warning
165 test(s): 157 passed, 8 skipped, 0 failed => status: warning

and defconfig + run for ppc:

$ make nolibc-test-config XARCH=ppc
$ make run XARCH=ppc
165 test(s): 159 passed, 6 skipped, 0 failed => status: warning


* tools/nolibc: add support for powerpc
tools/nolibc: add support for powerpc64

No change.

* selftests/nolibc: fix up O= option support
selftests/nolibc: add macros to reduce duplicated changes

From tinyconfig-part1 patchset, required by our nolibc-test-config target

Let nolibc-test-config be able to use objtree and the kernel related
macros directly.

* selftests/nolibc: add XARCH and ARCH mapping support

Moved before nolibc-test-config, for the NOLIBC_TEST_CONFIG macro used by
nolibc-test-config target

Willy talked about this twice, let nolibc-test-config be able to use
nolibc-test-$(XARCH).config listed in NOLIBC_TEST_CONFIG directly.

* selftests/nolibc: add nolibc-test-config target
selftests/nolibc: add help for nolibc-test-config target

A new generic nolibc-test-config target is added, allows to enable
additional options for a top-level config target.

defconfig is reserved as an alias of nolibc-test-config.

As suggested by Thomas and Willy.

* selftests/nolibc: add test support for ppc
selftests/nolibc: add test support for ppc64le
selftests/nolibc: add test support for ppc64

Renamed from $(XARCH).config to nolibc-test-$(XARCH).config

As suggested by Willy.

* selftests/nolibc: allow customize CROSS_COMPILE by architecture
selftests/nolibc: customize CROSS_COMPILE for 32/64-bit powerpc

Moved here as suggested by Willy.

Best regards,
Zhangjin
---
[1]: https://lore.kernel.org/lkml/cover.1690468707.git.falcon@xxxxxxxxxxx/



Zhangjin Wu (12):
tools/nolibc: add support for powerpc
tools/nolibc: add support for powerpc64
selftests/nolibc: fix up O= option support
selftests/nolibc: add macros to reduce duplicated changes
selftests/nolibc: add XARCH and ARCH mapping support
selftests/nolibc: add nolibc-test-config target
selftests/nolibc: add help for nolibc-test-config target
selftests/nolibc: add test support for ppc
selftests/nolibc: add test support for ppc64le
selftests/nolibc: add test support for ppc64
selftests/nolibc: allow customize CROSS_COMPILE by architecture
selftests/nolibc: customize CROSS_COMPILE for 32/64-bit powerpc

tools/include/nolibc/arch-powerpc.h | 202 ++++++++++++++++++
tools/include/nolibc/arch.h | 2 +
tools/testing/selftests/nolibc/Makefile | 157 ++++++++++----
.../nolibc/configs/nolibc-test-ppc.config | 3 +
4 files changed, 327 insertions(+), 37 deletions(-)
create mode 100644 tools/include/nolibc/arch-powerpc.h
create mode 100644 tools/testing/selftests/nolibc/configs/nolibc-test-ppc.config

--
2.25.1