Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions F/finufft/build_tarballs.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,14 @@ using BinaryBuilderBase
include(joinpath(@__DIR__, "..", "..", "platforms", "microarchitectures.jl"))

name = "finufft"
version = v"2.2.0"
commit_hash = "51892059a4b457a99a2569ac11e9e91cd2e289e7";
version = v"2.3.0"
commit_hash = "fffdaeacb10d5d055ce5b313868a7e981cea594b"
# Collection of sources required to complete build
sources = [
GitSource("https://github.com/flatironinstitute/finufft.git", commit_hash)
]

# Bash recipe for building across all platforms - now using cmake which fixes the broken binaries for Apple Silicon
# Tests on Linux/x86_64 yielded a slow binary with avx512 for some reason, so disable that again?
# NOTE: This may have been due to use of GCC8, which is not recommended by FINUFFT
# TODO: Check performance on computer with AVX512, to see if we can remove this fix
# Bash recipe for building across all platforms
script = raw"""
cd $WORKSPACE/srcdir/finufft*/

Expand All @@ -27,13 +24,19 @@ cmake .. \
-DCMAKE_INSTALL_PREFIX="${prefix}" \
-DCMAKE_TOOLCHAIN_FILE="${CMAKE_TARGET_TOOLCHAIN}" \
-DFINUFFT_FFTW_SUFFIX="" \
-DFINUFFT_ARCH_FLAGS=""
-DFINUFFT_ARCH_FLAGS="" \
-DFINUFFT_STATIC_LINKING="OFF"
Comment thread
ludvigak marked this conversation as resolved.
cmake --build . --parallel $nproc
cmake --install .
"""

platforms = supported_platforms()
# xsimd library does not work with armv6, armv7, powerpc
filter!(p -> !(contains(arch(p), "armv") || contains(arch(p), "powerpc")), platforms)
# FreeBSD aarch64 does not build, remove for now
filter!(p -> !(p["os"]=="freebsd" && p["arch"]=="aarch64"), platforms)
# Expand for microarchitectures on x86_64 (library doesn't have CPU dispatching)
platforms = expand_cxxstring_abis(expand_microarchitectures(supported_platforms(), ["x86_64", "avx", "avx2", "avx512"]); skip=!Sys.iswindows)
platforms = expand_cxxstring_abis(expand_microarchitectures(platforms, ["x86_64", "avx", "avx2", "avx512"]); skip=!Sys.iswindows)

augment_platform_block = """
$(MicroArchitectures.augment)
Expand Down