Skip to content
Open
Show file tree
Hide file tree
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
2 changes: 1 addition & 1 deletion .ci_support/linux_64_blas_implblis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ c_stdlib:
c_stdlib_version:
- '2.17'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
docker_image:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/linux_64_blas_implmkl.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ c_stdlib:
c_stdlib_version:
- '2.17'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
docker_image:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/linux_64_blas_implopenblas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ c_stdlib:
c_stdlib_version:
- '2.17'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
docker_image:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/linux_aarch64_blas_implnvpl.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ c_stdlib:
c_stdlib_version:
- '2.17'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
docker_image:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/linux_aarch64_blas_implopenblas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ c_stdlib:
c_stdlib_version:
- '2.17'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
docker_image:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/linux_ppc64le_.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ c_stdlib:
c_stdlib_version:
- '2.17'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
docker_image:
Expand Down
10 changes: 10 additions & 0 deletions .ci_support/migrations/mkl2025.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
__migrator:
build_number: 1
commit_message: Rebuild for mkl 2025
kind: version
migration_number: 1
migrator_ts: 1731082955.2367358
mkl:
- '2025'
mkl_devel:
- '2025'
2 changes: 1 addition & 1 deletion .ci_support/osx_64_blas_implaccelerate.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ c_stdlib:
c_stdlib_version:
- '10.13'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/osx_64_blas_implblis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ c_stdlib:
c_stdlib_version:
- '10.13'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/osx_64_blas_implnewaccelerate.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ c_stdlib:
c_stdlib_version:
- '10.13'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/osx_64_blas_implopenblas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ c_stdlib:
c_stdlib_version:
- '10.13'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/osx_arm64_blas_implaccelerate.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ c_stdlib:
c_stdlib_version:
- '11.0'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/osx_arm64_blas_implnewaccelerate.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ c_stdlib:
c_stdlib_version:
- '11.0'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/osx_arm64_blas_implopenblas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ c_stdlib:
c_stdlib_version:
- '11.0'
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/win_64_blas_implblis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ c_compiler:
c_stdlib:
- vs
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/win_64_blas_implmkl.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ c_compiler:
c_stdlib:
- vs
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
2 changes: 1 addition & 1 deletion .ci_support/win_64_blas_implopenblas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ c_compiler:
c_stdlib:
- vs
channel_sources:
- conda-forge
- conda-forge/label/lapack_rc,conda-forge
channel_targets:
- conda-forge main
fortran_compiler:
Expand Down
5 changes: 4 additions & 1 deletion recipe/bld.bat
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ set "CFLAGS=-I%LIBRARY_PREFIX%\include %CFLAGS%"
set "FFLAGS=-I%LIBRARY_PREFIX%\include %FFLAGS%"
set "LDFLAGS=/LIBPATH:%LIBRARY_PREFIX%\lib %LDFLAGS%"

%MINIFORGE_HOME%\Scripts\conda.exe create -p %NEW_ENV% -c conda-forge --yes --quiet ^
set "PYTHON_EXEC=%BUILD_PREFIX%\python.exe"

%MINIFORGE_HOME%\Scripts\conda.exe create -p %NEW_ENV% -c conda-forge/label/lapack_rc -c conda-forge --yes --quiet ^
libblas=%PKG_VERSION%=*netlib ^
libcblas=%PKG_VERSION%=*netlib ^
liblapack=%PKG_VERSION%=*netlib ^
Expand All @@ -35,6 +37,7 @@ cmake -LAH -G Ninja .. ^
"-DBLAS_LIBRARIES=blas.lib;cblas.lib" ^
"-DLAPACK_LIBRARIES=lapack.lib;lapacke.lib" ^
-DBUILD_TESTING=yes ^
-DPYTHON_EXECUTABLE=%PYTHON_EXEC% ^
-DCMAKE_BUILD_TYPE=Release
if %ERRORLEVEL% neq 0 (type .\CMakeFiles\CMakeError.log && type .\CMakeFiles\CMakeOutput.log && exit 1)

Expand Down
5 changes: 4 additions & 1 deletion recipe/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,10 @@ export LDFLAGS="-L${LIBRARY_PREFIX}/lib -Wl,-rpath,${LIBRARY_PREFIX}/lib $LDFLAG
export CPATH="${LIBRARY_PREFIX}/include"
export LIBRARY_PATH="${LIBRARY_PREFIX}/lib"

export PYTHON_EXEC=$BUILD_PREFIX/bin/python

export CONDA_SUBDIR="${target_platform}"
conda create -p ${NEW_ENV} -c conda-forge --yes --quiet \
conda create -p ${NEW_ENV} -c conda-forge/label/lapack_rc -c conda-forge --yes --quiet \
libblas=${PKG_VERSION}=*netlib \
libcblas=${PKG_VERSION}=*netlib \
liblapack=${PKG_VERSION}=*netlib \
Expand All @@ -27,6 +29,7 @@ cmake ${CMAKE_ARGS} -LAH -G "${CMAKE_GENERATOR}" .. \
"-DBLAS_LIBRARIES=libblas${SHLIB_EXT};libcblas${SHLIB_EXT}" \
"-DLAPACK_LIBRARIES=liblapack${SHLIB_EXT};liblapacke${SHLIB_EXT}" \
-DBUILD_TESTING=yes \
-DPYTHON_EXECUTABLE=$PYTHON_EXEC \
-DCMAKE_BUILD_TYPE=Release \
|| (cat $SRC_DIR/build/CMakeFiles/CMakeError.log && $SRC_DIR/build/CMakeFiles/CMakeOutput.log && exit 1)

Expand Down
7 changes: 4 additions & 3 deletions recipe/conda_build_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@ c_compiler: # [win]
cxx_compiler: # [win]
- clangxx # [win]

# TODO: move this to migrator
mkl:
- 2025
# temporarily while we bring up LAPACK 3.10.1;
# only required for blis; rest installs directly in build.sh
channel_sources:
- conda-forge/label/lapack_rc,conda-forge

blas_impl:
- openblas
Expand Down
27 changes: 17 additions & 10 deletions recipe/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
{% set version = "3.9.0" %}
{% set version = "3.11.0" %}
# if build_num is reset to 0 (for new version), update increment for blas_minor below
{% set build_num = 38 %}
{% set build_num = 0 %}

{% set version_major = version.split(".")[0] %}
# blas_major denotes major infrastructural change to how blas is managed
{% set blas_major = "2" %}
# make sure we do not create colliding version strings of output "blas"
# for builds across lapack-versions within the same blas_major
{% set blas_minor = build_num + 100 %}
{% set blas_minor = build_num + 300 %}

# versions of pinned blas implementation flavours
{% set blis_version = "0.9.0" %}
Expand All @@ -31,17 +32,18 @@ package:

source:
- url: https://github.com/Reference-LAPACK/lapack/archive/v{{ version }}.tar.gz
sha256: 106087f1bb5f46afdfba7f569d0cbe23dacb9a07cd24733765a0e89dbe1ad573
sha256: 4b9ba79bfd4921ca820e83979db76ab3363155709444a787979e81c22285ffa9
patches:
# Test BLAS and LAPACKE in addition to LAPACK
- patches/0001-Test-BLAS-and-LAPACKE-in-addition-to-LAPACK.patch
# backport https://github.com/Reference-LAPACK/lapack/pull/391
# to fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114304
- patches/0002-remove-extraneous-semicolon.patch
# avoid corruption of characters through implicit decode
- patches/0003-read-pipe-as-binary.patch
- patches/0002-read-pipe-as-binary.patch
# make symbol RowMajorStrg visible through DLL boundary
- patches/0004-add-DLL-import-export-machinery-for-RowMajorStrg.patch
- patches/0003-add-DLL-import-export-machinery-for-RowMajorStrg.patch
# backport https://github.com/Reference-LAPACK/lapack/pull/758, can be dropped for 3.12
- patches/0004-fixed-bug-in-array-bounds-in-complex-syl01-test.patch
# backport https://github.com/Reference-LAPACK/lapack/pull/854, can be dropped for 3.12
- patches/0005-Use-dynamic-allocation-in-SYL01-tests.patch

- url: https://github.com/isuruf/vecLibFort/archive/99af8640e98c829b41c3235e3706760cd5696fe4.tar.gz
sha256: 80de7c6e83d1d84d016b4cb299f2c15f5a82b9d36865dd5c16bf221fe9a303ad
Expand All @@ -58,7 +60,9 @@ requirements:
- cmake <4
- make # [not win]
- ninja # [win]
- python * # [win]
# in testing we end up calling a python script, see
# https://github.com/Reference-LAPACK/lapack/blame/master/lapack_testing.py
- python *
# The following are actual build dependencies of this recipe; however, they
# only get installed by the build scripts, since they must be installed in a
# different environment (otherwise there'd be a variant collision)! The build
Expand Down Expand Up @@ -296,6 +300,9 @@ outputs:
- {{ compiler("fortran") }}
- cmake <4
- ninja # [win]
# we end up calling a python script, see
# https://github.com/Reference-LAPACK/lapack/blame/master/lapack_testing.py
- python *
- llvm-openmp # [linux and ((blas_impl == "openblas") or (blas_impl == "mkl"))]
- python * # [win]
host:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
From 48c2ace8dcd69883470c67562d0e0b36ee1ddd90 Mon Sep 17 00:00:00 2001
From 31cf871fc5670c90dc76ab8aba508458f90da46f Mon Sep 17 00:00:00 2001
From: Isuru Fernando <[email protected]>
Date: Mon, 7 Jan 2019 00:23:59 -0600
Subject: [PATCH 1/4] Test BLAS and LAPACKE in addition to LAPACK
Subject: [PATCH 1/5] Test BLAS and LAPACKE in addition to LAPACK

---
CMakeLists.txt | 2 ++
1 file changed, 2 insertions(+)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index d9dbf9746..dabab4c02 100644
index 68a7767b8..91047636e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -295,6 +295,8 @@ endif()
@@ -394,6 +394,8 @@ endif()

if(BUILD_TESTING)
add_subdirectory(TESTING)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
From abcff0c3b75bfb2d78749cf68f61b2c2013554bb Mon Sep 17 00:00:00 2001
From 3430230d700e7f34e70d727d9b21508728081a0c Mon Sep 17 00:00:00 2001
From: "H. Vetinari" <[email protected]>
Date: Sun, 18 Aug 2024 14:03:42 +1100
Subject: [PATCH 3/4] read pipe as binary
Subject: [PATCH 2/5] read pipe as binary

---
lapack_testing.py | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/lapack_testing.py b/lapack_testing.py
index 8b0af0de1..a6ce1ae72 100755
index abda36898..b638e7662 100755
--- a/lapack_testing.py
+++ b/lapack_testing.py
@@ -114,7 +114,7 @@ def run_summary_test( f, cmdline, short_summary):
@@ -110,7 +110,7 @@ def run_summary_test( f, cmdline, short_summary):
r=1
if short_summary: return [nb_test_run,nb_test_fail,nb_test_illegal,nb_test_info]
else:
Expand All @@ -20,7 +20,7 @@ index 8b0af0de1..a6ce1ae72 100755
r=0
else:
cmdline = os.path.join(abs_bin_dir, cmdline)
@@ -125,7 +125,7 @@ def run_summary_test( f, cmdline, short_summary):
@@ -121,7 +121,7 @@ def run_summary_test( f, cmdline, short_summary):
p.wait()
#pipe.close()
r=p.returncode
Expand All @@ -29,7 +29,7 @@ index 8b0af0de1..a6ce1ae72 100755
error_message=cmdline+" did not work"

if r != 0 and not with_file:
@@ -140,18 +140,18 @@ def run_summary_test( f, cmdline, short_summary):
@@ -136,18 +136,18 @@ def run_summary_test( f, cmdline, short_summary):
for line in pipe.readlines():
f.write(str(line))
words_in_line=line.split()
Expand All @@ -41,16 +41,16 @@ index 8b0af0de1..a6ce1ae72 100755
nb_test_run+=int(words_in_line[whereisrun-2])
- if (line.find("out of")!=-1):
+ if (line.find(b"out of")!=-1):
if (short_summary==0): print(line, end=' ')
if not short_summary: print(line, end=' ')
- whereisout= words_in_line.index("out")
+ whereisout= words_in_line.index(b"out")
nb_test_fail+=int(words_in_line[whereisout-1])
- if ((line.find("illegal")!=-1) or (line.find("Illegal")!=-1)):
+ if ((line.find(b"illegal")!=-1) or (line.find(b"Illegal")!=-1)):
if (short_summary==0):print(line, end=' ')
if not short_summary: print(line, end=' ')
nb_test_illegal+=1
- if (line.find(" INFO")!=-1):
+ if (line.find(b" INFO")!=-1):
if (short_summary==0):print(line, end=' ')
if not short_summary: print(line, end=' ')
nb_test_info+=1
if (with_file==1):
if with_file:
22 changes: 0 additions & 22 deletions recipe/patches/0002-remove-extraneous-semicolon.patch

This file was deleted.

Loading