diff --git a/.github/workflows/posix.yml b/.github/workflows/posix.yml index a6a1cf1..111508c 100644 --- a/.github/workflows/posix.yml +++ b/.github/workflows/posix.yml @@ -28,8 +28,8 @@ jobs: - { os: ubuntu-latest, PLAT: x86_64, INTERFACE64: '0', MB_ML_VER: '2014', MB_ML_LIBC: manylinux} - { os: ubuntu-latest, PLAT: x86_64, INTERFACE64: '1', MB_ML_VER: '2014', MB_ML_LIBC: manylinux} - - { os: macos-latest, PLAT: x86_64, INTERFACE64: '0', MB_ML_LIBC: macosx} - - { os: macos-latest, PLAT: x86_64, INTERFACE64: '1', MB_ML_LIBC: macosx} + - { os: macos-14, PLAT: x86_64, INTERFACE64: '0', MB_ML_LIBC: macosx} + - { os: macos-14, PLAT: x86_64, INTERFACE64: '1', MB_ML_LIBC: macosx} - { os: macos-latest, PLAT: arm64, INTERFACE64: '0', MB_ML_LIBC: macosx} - { os: macos-latest, PLAT: arm64, INTERFACE64: '1', MB_ML_LIBC: macosx} @@ -59,10 +59,15 @@ jobs: fetch-depth: 0 - uses: maxim-lobanov/setup-xcode@v1.6.0 - if: ${{ contains(matrix.os, 'macos') }} + if: ${{ matrix.os == 'macos-latest' }} with: xcode-version: '16.0' + - uses: maxim-lobanov/setup-xcode@v1.6.0 + if: ${{ matrix.os == 'macos-14' }} + with: + xcode-version: '15.4' + - name: Print some Environment variable run: | echo "PLAT: ${PLAT}" diff --git a/.gitmodules b/.gitmodules index 546361d..7b8f5ca 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "OpenBLAS"] path = OpenBLAS url = https://github.com/xianyi/OpenBLAS.git +[submodule "gfortran-install"] + path = gfortran-install + url = https://github.com/MacPython/gfortran-install.git diff --git a/gfortran-install b/gfortran-install new file mode 160000 index 0000000..3dd38d9 --- /dev/null +++ b/gfortran-install @@ -0,0 +1 @@ +Subproject commit 3dd38d9ce78b3890598cb0eff18a7bec50c06f5e diff --git a/pyproject.toml b/pyproject.toml index a2a3b4d..9f6c047 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta" [project] name = "scipy-openblas64" # v0.3.30 -version = "0.3.30.0.5" +version = "0.3.30.0.6" requires-python = ">=3.7" description = "Provides OpenBLAS for python packaging" readme = "README.md" diff --git a/tools/build_steps.sh b/tools/build_steps.sh index b651c82..0d77b93 100644 --- a/tools/build_steps.sh +++ b/tools/build_steps.sh @@ -150,10 +150,18 @@ function do_build_lib { Darwin-x86_64) local bitness=64 local target="CORE2" - # Pick up the gfortran runtime libraries + # Use gfortran-11 + unalias gfortran + # Since install_fortran uses `uname -a` to determine arch, + # force the architecture + arch -${PLAT} bash -s << EOF +source ${ROOT_DIR}/gfortran-install/gfortran_utils.sh +install_gfortran +EOF export DYLD_LIBRARY_PATH=/usr/local/lib:$DYLD_LIBRARY_PATH CFLAGS="$CFLAGS -arch x86_64" export SDKROOT=${SDKROOT:-$(xcrun --show-sdk-path)} + local dynamic_list="CORE2 NEHALEM SANDYBRIDGE HASWELL SKYLAKEX" ;; *-i686) local bitness=32