# vendored-date: 2023-05-08
# project: https://github.com/facebook/buck2
# commit-hash: 70412f219f513247e9b2577f2cb1d25553533b45
# commit-date: 2023-05-07T21:10:27-0700
# source: https://github.com/facebook/buck2/blob/70412f219f513247e9b2577f2cb1d25553533b45/shim/third-party/rust/fixups/blake3/fixups.toml
# Copyright (c) Meta Platforms, Inc. and affiliates.
#
# This source code is licensed under both the MIT license found in the
# LICENSE-MIT file in the root directory of this source tree and the Apache
# License, Version 2.0 found in the LICENSE-APACHE file in the root directory
# of this source tree.
buildscript.run = false
## The various X86 platform fixups
['cfg(target_arch = "x86_64")']
cfgs = ["blake3_sse2_ffi", "blake3_sse41_ffi", "blake3_avx2_ffi", "blake3_avx512_ffi"]
# , any(target_env = "fbcode", target_env = "gnu")
[['cfg(all(target_arch = "x86_64", any(target_os = "linux", target_os = "macos")))'.cxx_library]]
name = "simd_x86_unix"
srcs = [
"c/blake3.c",
"c/blake3_dispatch.c",
"c/blake3_portable.c",
"c/blake3_sse2_x86-64_unix.S",
"c/blake3_sse41_x86-64_unix.S",
"c/blake3_avx2_x86-64_unix.S",
"c/blake3_avx512_x86-64_unix.S"
]
# Older versions of Clang require these flags, even for assembly. See
# https://github.com/BLAKE3-team/BLAKE3/issues/79.
compiler_flags = ["-mavx512f", "-mavx512vl"]
headers = ["c/*.h"]
compatible_with = [
"prelude//os/constraints:linux",
"prelude//os/constraints:macos",
]
[['cfg(all(target_arch = "x86_64", target_os = "windows", target_env = "gnu"))'.cxx_library]]
name = "simd_x86_windows_gnu"
srcs = [
"c/blake3.c",
"c/blake3_dispatch.c",
"c/blake3_portable.c",
"c/blake3_sse2_x86-64_windows_gnu.S",
"c/blake3_sse41_x86-64_windows_gnu.S",
"c/blake3_avx2_x86-64_windows_gnu.S",
"c/blake3_avx512_x86-64_windows_gnu.S"
]
# Older versions of Clang require these flags, even for assembly. See
# https://github.com/BLAKE3-team/BLAKE3/issues/79.
compiler_flags = ["-mavx512f", "-mavx512vl"]
headers = ["c/*.h"]
compatible_with = ["prelude//os/constraints:windows"]
[['cfg(all(target_arch = "x86_64", target_os = "windows", target_env = "msvc"))'.cxx_library]]
name = "simd_x86_windows_msvc"
srcs = [
"c/blake3.c",
"c/blake3_dispatch.c",
"c/blake3_portable.c",
"c/blake3_sse2_x86-64_windows_msvc.asm",
"c/blake3_sse41_x86-64_windows_msvc.asm",
"c/blake3_avx2_x86-64_windows_msvc.asm",
"c/blake3_avx512_x86-64_windows_msvc.asm"
]
headers = ["c/*.h"]
compatible_with = ["prelude//os/constraints:windows"]
## ARM and AArch64 fixups
['cfg(any(target_arch = "aarch64", target_arch = "arm"))']
cfgs = ["blake3_neon"]
[['cfg(target_arch = "aarch64")'.cxx_library]]
name = "simd_neon-aarch64"
srcs = ["c/blake3_neon.c"]
headers = ["c/*.h"]
[['cfg(target_arch = "arm")'.cxx_library]]
name = "simd_neon-armv7"
srcs = ["c/blake3_neon.c"]
compiler_flags = ["-mfpu=neon-vfpv4", "-mfloat-abi=hard"]
headers = ["c/*.h"]