diff --git a/build_utils/build_libomp.sh b/build_utils/build_libomp.sh index fd25797..0912585 100644 --- a/build_utils/build_libomp.sh +++ b/build_utils/build_libomp.sh @@ -2,16 +2,18 @@ set -euo pipefail DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" build_dir=${DIR}/libs_build -LLVM_VERSION=${LLVM_VERSION:-19.1.1} +LLVM_VERSION=${LLVM_VERSION:-23.1.2} INSTALL_CMD=${INSTALL_CMD:-"sudo make install"} -echo MACOSX_DEPLOYMENT_TARGET $MACOSX_DEPLOYMENT_TARGET +echo MACOSX_DEPLOYMENT_TARGET ${MACOSX_DEPLOYMENT_TARGET:-} git clone --depth 1 --branch llvmorg-${LLVM_VERSION} https://github.com/llvm/llvm-project -pushd llvm-project/openmp +pushd llvm-project +# The legacy standalone build (cmake llvm-project/openmp) was removed in LLVM 23, +# openmp has to be built through the runtimes directory. mkdir build cd build -cmake -DCMAKE_C_COMPILER=${CC:-clang} -DCMAKE_CXX_COMPILER=${CXX:-clang++} ${CMAKE_FLAGS:-} .. +cmake -DCMAKE_C_COMPILER=${CC:-clang} -DCMAKE_CXX_COMPILER=${CXX:-clang++} -DLLVM_ENABLE_RUNTIMES=openmp ${CMAKE_FLAGS:-} ../runtimes make ${MAKE_FLAGS:-} ${INSTALL_CMD} diff --git a/pyproject.toml b/pyproject.toml index 52e1b96..ae19bf4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -133,6 +133,8 @@ build = "*64" enable = ["pypy"] [tool.cibuildwheel.macos] +# libomp (LLVM 23) uses aligned_alloc, available since macOS 10.15 +environment = { MACOSX_DEPLOYMENT_TARGET = "10.15" } before-all = [ "set", "bash {project}/build_utils/build_libomp.sh",