diff --git a/.github/workflows/build_wheels.yml b/.github/workflows/build_wheels.yml index 3e4330b10..5285629d2 100644 --- a/.github/workflows/build_wheels.yml +++ b/.github/workflows/build_wheels.yml @@ -1,6 +1,6 @@ name: swiftest -on: push +on: [push, pull_request] jobs: build_wheels: @@ -8,16 +8,25 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-20.04, macos-11, macos-12, macos-13] + os: [ubuntu-latest, macos-11, macos-12, macos-13] + cibw_archs: [x86_64] + include: + - os: ubuntu-latest + cibw_archs: "aarch64" + env: + SYSTEM_VERSION_COMPAT: 0 steps: + - name: Set up QEMU + if: matrix.cibw_archs == 'aarch64' + uses: docker/setup-qemu-action@v2 + with: + platforms: arm64 - uses: actions/checkout@v3 - - name: Build wheels uses: pypa/cibuildwheel@v2.15.0 env: - CIBW_ARCHS_MACOS: x86_64 arm64 - CIBW_ARCHS_LINUX: x86_64 aarch64 + CIBW_ARCHS: ${{ matrix.cibw_archs }} with: package-dir: . output-dir: wheelhouse @@ -27,7 +36,6 @@ jobs: with: path: ./wheelhouse/*.whl - build_sdist: name: Build source distribution runs-on: ubuntu-latest diff --git a/.gitignore b/.gitignore index ab0e8d718..8135a42d5 100644 --- a/.gitignore +++ b/.gitignore @@ -57,4 +57,4 @@ netcdf-c-* netcdf-fortran-* zlib-* - +actions-runner* \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 8d8eb8761..052b2ac32 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -62,18 +62,19 @@ build-verbosity = 1 [tool.cibuildwheel.macos.environment] ROOT_DIR="$(pwd)" -ARCH="$(uname -m)" MACOSX_DEPLOYMENT_TARGET="$(sw_vers -productVersion)" PREFIX="${ROOT_DIR}" HOMEBREW_PREFIX="$(brew --prefix)" +ARCH="$(uname -m)" LD_LIBRARY_PATH="/usr/local/lib:${PREFIX}/lib:${HOMEBREW_PREFIX}/lib" LDFLAGS="-Wl,-rpath,${ROOT_DIR}/lib -Wl,-no_compact_unwind -L${PREFIX}/lib -L${HOMEBREW_PREFIX}/lib" CPATH="/usr/local/include:${PREFIX}/include:${HOMEBREW_PREFIX}/include:${ROOT_DIR}/include" CPPFLAGS="-isystem ${PREFIX}/include -isystem /usr/local/include" LIBS="-lomp" -CFLAGS="-mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET} -Wno-deprecated-non-prototype -arch ${ARCH}" FCFLAGS="-mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET} -arch ${ARCH}" -FFFLAGS="-mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET} -arch ${ARCH}" +FFFLAGS="${FCFLAGS}" +CFLAGS="${FCFLAGS} -Wno-deprecated-non-prototype -arch ${ARCH}" +CXXFLAGS="${CFLAGS}" HDF5_ROOT="${PREFIX}" HDF5_LIBDIR="${HDF5_ROOT}/lib" HDF5_INCLUDE_DIR="${HDF5_ROOT}/include" @@ -83,6 +84,7 @@ NETCDF_INCLUDE="${PREFIX}" NCDIR="${PREFIX}" NFDIR="${PREFIX}" FC="$(command -v gfortran-12)" +F77="${FC}" CC="/usr/bin/clang" CXX="/usr/bin/clang++" CPP="/usr/bin/cpp"