[v12,0/6] aarch64 -> aarch32 cross compilation support

Message ID 1607675213-12061-1-git-send-email-juraj.linkes@pantheon.tech (mailing list archive)


Juraj LinkeŇ° Dec. 11, 2020, 8:26 a.m. UTC
  Add support for aarch32 cross build in meson and add aarch64 -> aarch32
cross build to Travis.

Aarch32 is an execution state that allows execution of 32-bit code on
armv8 machines. This execution state contains a superset of previous
armv7 32-bit instructions and features. Thus the aarch32 build is distinct
from arvm7 build.

Removed disabled drivers which actually build on arm32.
Also tested the patchset with series 9609 which fixes underlying failures.

Changed the condition for running test-null.sh in ci.
Re-uploaded after underlying fixes have been committed.

Changed the condition for running test-null.sh again.
Reworked the patch to do aarch32 build instead of arvm7-a build.
Simplified meson build flags. Changed commit msgs.
Added 32b qualifier to .travis.yml.
Added a patch with fixes for bnxt.
Added a patch with cross compilation docs.

Rebased the patchset.

Removed Makefile additions from net/bnxt patch.

Changed ci test-null.sh condition, only run it if not cross-compiling
aarch64 nor aarch32.
Cleaned up docs.

Fixed doc: add aarch32 build guidance commit message.

Rebase and fix scf and bnxt after rebase.

Dropped one superfluous net/bnxt patch.

Acked-by: Aaron Conole <aconole@redhat.com>

Juraj LinkeŇ° (3):
  build: add aarch32 meson build flags
  build: add aarch32 to meson cross-compilation
  ci: add aarch64 -> aarch32 cross compiling jobs

Phil Yang (1):
  doc: add aarch32 build guidance

Ruifeng Wang (2):
  net/sfc: fix aarch32 build
  net/bnxt: fix aarch32 build

 .ci/linux-build.sh                            |  7 +++-
 .travis.yml                                   | 19 +++++++++++
 config/arm/arm32_armv8a_linux_gcc             | 17 ++++++++++
 config/arm/meson.build                        | 22 ++++++++++--
 .../linux_gsg/cross_build_dpdk_for_arm64.rst  | 34 +++++++++++++------
 drivers/common/sfc_efx/meson.build            |  2 +-
 drivers/net/bnxt/meson.build                  |  2 +-
 drivers/net/sfc/meson.build                   |  2 +-
 8 files changed, 88 insertions(+), 17 deletions(-)
 create mode 100644 config/arm/arm32_armv8a_linux_gcc