# Meson cross-compilation file for OHOS aarch64 (arm64-v8a) # # Usage: # cd numpy-1.26.4 # meson setup build \ # --cross-file /path/to/ohos-aarch64-cross.ini \ # -Dallow-noblas=true \ # -Ddisable-threading=true \ # -Ddisable-optimization=true # # NOTE: numpy 1.26.x requires VENDORED meson (not system meson). # Use: python3 vendored-meson/meson/meson.py setup ... # # Toolchain path (adjust as needed): # /home/program/tools/command-line-tools/sdk/default/openharmony/native/llvm # # Sysroot: # /home/program/tools/command-line-tools/sdk/default/openharmony/native/sysroot [binaries] c = '/home/program/tools/command-line-tools/sdk/default/openharmony/native/llvm/bin/clang' cpp = '/home/program/tools/command-line-tools/sdk/default/openharmony/native/llvm/bin/clang++' ar = '/home/program/tools/command-line-tools/sdk/default/openharmony/native/llvm/bin/llvm-ar' strip = '/home/program/tools/command-line-tools/sdk/default/openharmony/native/llvm/bin/llvm-strip' ld = '/home/program/tools/command-line-tools/sdk/default/openharmony/native/llvm/bin/ld.lld' [built-in options] c_args = ['--target=aarch64-linux-ohos', '--sysroot=/home/program/tools/command-line-tools/sdk/default/openharmony/native/sysroot', '-D__MUSL__'] c_link_args = ['--target=aarch64-linux-ohos', '--sysroot=/home/program/tools/command-line-tools/sdk/default/openharmony/native/sysroot'] cpp_args = ['--target=aarch64-linux-ohos', '--sysroot=/home/program/tools/command-line-tools/sdk/default/openharmony/native/sysroot', '-D__MUSL__'] cpp_link_args = ['--target=aarch64-linux-ohos', '--sysroot=/home/program/tools/command-line-tools/sdk/default/openharmony/native/sysroot'] [properties] skip_sanity_check = true allow-noblas = true # aarch64-linux-ohos uses MUSL which defines IEEE quad (128-bit) long double longdouble_format = 'IEEE_QUAD_LE' [host_machine] system = 'linux' cpu_family = 'aarch64' cpu = 'armv8-a' endian = 'little'