The current way of specifying Arm configuration options is insufficient since we can't identify the SoC we're building for from the MIDR information.
Instead use user input - the machine meson option to specify the SoC, e.g.: meson soc_test -Dmachine=thunderx meson soc_test --cross-file config/arm/thunderx/arm64_thunderx_linux_gcc We also want to be able to disable which drivers (and possibly libraries) are built without user input. This is useful when building: 1. on an SoC that is slow and we want to build only what is necessary without the user having to check which libraries they have installed 2. a cross build on a fast aarch64 machine but with target SoC which differs in capabilities or libraries. Juraj Linkeš (2): build: rework Arm build options build: disable drivers from file config/arm/arm64_armv8_linux_gcc | 28 ---- .../arm/{ => armada}/arm64_armada_linux_gcc | 2 +- config/arm/armada/meson.build | 31 ++++ config/arm/default/arm64_armv8_linux_gcc | 23 +++ config/arm/default/meson.build | 8 + config/arm/meson.build | 139 +++++++++++------- .../{ => thunderx}/arm64_thunderx_linux_gcc | 2 +- config/arm/thunderx/meson.build | 18 +++ .../thunderxt88/arm64_thunderxt88_linux_gcc | 16 ++ config/arm/thunderxt88/meson.build | 18 +++ config/meson.build | 9 +- drivers/meson.build | 13 +- 12 files changed, 218 insertions(+), 89 deletions(-) delete mode 100644 config/arm/arm64_armv8_linux_gcc rename config/arm/{ => armada}/arm64_armada_linux_gcc (93%) create mode 100644 config/arm/armada/meson.build create mode 100644 config/arm/default/arm64_armv8_linux_gcc create mode 100644 config/arm/default/meson.build rename config/arm/{ => thunderx}/arm64_thunderx_linux_gcc (92%) create mode 100644 config/arm/thunderx/meson.build create mode 100644 config/arm/thunderxt88/arm64_thunderxt88_linux_gcc create mode 100644 config/arm/thunderxt88/meson.build -- 2.20.1