mbox series

[0/3] config/x86: improve AVX512 availability check

Message ID 20211112214826.333853-1-dmitry.kozliuk@gmail.com (mailing list archive)
Headers
Series config/x86: improve AVX512 availability check |

Message

Dmitry Kozlyuk Nov. 12, 2021, 9:48 p.m. UTC
  The goal of this series is to enable cross-compilation
of Windows binaries from Linux using MinGW with Meson 0.49 used in CI.
It also aims to reduce difference between Unix and Windows build code.

AVX512 was switched off for MinGW cross builds,
but unfortunately in a way that is not usable with meson 0.49.
Also, c_args was used instead of machine_args for -mno-avx512f.
After patch 3/3, AVX512 support for MinGW cross builds
is configured exactly the same way as for Unix builds.
This required rewriting a Unix-specific script in patch 2/3.
Patch 1/3 skips check of GNU binutils when LLVM suite is used:
it is useful in general [1], and also simplifies patch 2/3.

[1]: https://inbox.dpdk.org/dev/20211112160837.131994aa@sovereign

Dmitry Kozlyuk (3):
  config/x86: skip GNU binutils bug check for LLVM
  buildtools: make AVX512 check script portable
  config/x86: fix MinGW cross build with meson 0.49

 buildtools/binutils-avx512-check.py | 21 +++++++++++++++++++++
 buildtools/binutils-avx512-check.sh | 16 ----------------
 buildtools/meson.build              |  4 +++-
 config/x86/cross-mingw              |  4 +---
 config/x86/meson.build              |  7 ++++---
 lib/acl/meson.build                 |  2 +-
 lib/fib/meson.build                 |  2 +-
 7 files changed, 31 insertions(+), 25 deletions(-)
 create mode 100644 buildtools/binutils-avx512-check.py
 delete mode 100755 buildtools/binutils-avx512-check.sh
  

Comments

Thomas Monjalon Nov. 17, 2021, 8:42 a.m. UTC | #1
12/11/2021 22:48, Dmitry Kozlyuk:
> The goal of this series is to enable cross-compilation
> of Windows binaries from Linux using MinGW with Meson 0.49 used in CI.
> It also aims to reduce difference between Unix and Windows build code.
> 
> AVX512 was switched off for MinGW cross builds,
> but unfortunately in a way that is not usable with meson 0.49.
> Also, c_args was used instead of machine_args for -mno-avx512f.
> After patch 3/3, AVX512 support for MinGW cross builds
> is configured exactly the same way as for Unix builds.
> This required rewriting a Unix-specific script in patch 2/3.
> Patch 1/3 skips check of GNU binutils when LLVM suite is used:
> it is useful in general [1], and also simplifies patch 2/3.
> 
> [1]: https://inbox.dpdk.org/dev/20211112160837.131994aa@sovereign
> 
> Dmitry Kozlyuk (3):
>   config/x86: skip GNU binutils bug check for LLVM
>   buildtools: make AVX512 check script portable
>   config/x86: fix MinGW cross build with meson 0.49

Applied, thanks.

Note 1: MAINTAINERS was updated for the new script.
Note 2: patch 3 cannot be backported without patch 2, so no Cc:stable on purpose.