Skip to content
Draft
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_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_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
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:
- '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_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:
- '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_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:
- '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_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:
- '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_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_implblis.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
3 changes: 2 additions & 1 deletion recipe/bld.bat
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ set "LDFLAGS=/LIBPATH:%LIBRARY_PREFIX%\lib %LDFLAGS%"

set "PYTHON_EXEC=%BUILD_PREFIX%\python.exe"

%MINIFORGE_HOME%\Scripts\conda.exe create -p %NEW_ENV% --yes --quiet ^
%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 Down Expand Up @@ -61,6 +61,7 @@ if not "%lapack_impl_lib%"=="notapplicable" (
cmake -LAH -G Ninja .. ^
"-DBLAS_LIBRARIES=blas.lib;cblas.lib" ^
"-DLAPACK_LIBRARIES=lapack.lib;lapacke.lib" ^
-DBUILD_INDEX64_EXT_API=OFF ^
-DBUILD_TESTING=yes ^
-DPYTHON_EXECUTABLE=%PYTHON_EXEC% ^
-DCMAKE_BUILD_TYPE=Release
Expand Down
3 changes: 2 additions & 1 deletion recipe/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export LIBRARY_PATH="${LIBRARY_PREFIX}/lib"
export PYTHON_EXEC=$BUILD_PREFIX/bin/python

export CONDA_SUBDIR="${target_platform}"
conda create -p ${NEW_ENV} --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 @@ -28,6 +28,7 @@ unset CONDA_SUBDIR
cmake ${CMAKE_ARGS} -LAH -G "${CMAKE_GENERATOR}" .. \
"-DBLAS_LIBRARIES=libblas${SHLIB_EXT};libcblas${SHLIB_EXT}" \
"-DLAPACK_LIBRARIES=liblapack${SHLIB_EXT};liblapacke${SHLIB_EXT}" \
-DBUILD_INDEX64_EXT_API=OFF \
-DBUILD_TESTING=yes \
-DPYTHON_EXECUTABLE=$PYTHON_EXEC \
-DCMAKE_BUILD_TYPE=Release \
Expand Down
5 changes: 5 additions & 0 deletions recipe/conda_build_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,11 @@ c_compiler: # [win]
cxx_compiler: # [win]
- clangxx # [win]

# temporarily while we bring up LAPACK 3.12;
# only required for blis; rest installs directly in build.sh
channel_sources:
- conda-forge/label/lapack_rc,conda-forge

blas_impl:
- openblas
- openblas # [win]
Expand Down
10 changes: 3 additions & 7 deletions recipe/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{% set version = "3.11.0" %}
{% set version = "3.12.1" %}
# if build_num is reset to 0 (for new version), update increment for blas_minor below
{% set build_num = 8 %}
{% set build_num = 0 %}

{% set version_major = version.split(".")[0] %}
{% set version_minor = version.split(".")[1] %}
Expand Down Expand Up @@ -33,18 +33,14 @@ package:

source:
- url: https://github.com/Reference-LAPACK/lapack/archive/v{{ version }}.tar.gz
sha256: 4b9ba79bfd4921ca820e83979db76ab3363155709444a787979e81c22285ffa9
sha256: 2ca6407a001a474d4d4d35f3a61550156050c48016d949f0da0529c0aa052422
patches:
# Test BLAS and LAPACKE in addition to LAPACK
- patches/0001-Test-BLAS-and-LAPACKE-in-addition-to-LAPACK.patch
# avoid corruption of characters through implicit decode
- patches/0002-read-pipe-as-binary.patch
# make symbol RowMajorStrg visible through DLL boundary
- 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 Down
10 changes: 5 additions & 5 deletions recipe/patches/0002-read-pipe-as-binary.patch
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
From 3430230d700e7f34e70d727d9b21508728081a0c Mon Sep 17 00:00:00 2001
From 2cce8546b17c445de470d34fdf79a86a76ec340c Mon Sep 17 00:00:00 2001
From: "H. Vetinari" <h.vetinari@gmx.com>
Date: Sun, 18 Aug 2024 14:03:42 +1100
Subject: [PATCH 2/5] read pipe as binary
Subject: [PATCH 2/7] 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 abda36898..b638e7662 100755
index dc3c471b5..c4f312339 100755
--- a/lapack_testing.py
+++ b/lapack_testing.py
@@ -110,7 +110,7 @@ def run_summary_test( f, cmdline, short_summary):
Expand All @@ -33,8 +33,8 @@ index abda36898..b638e7662 100755
for line in pipe.readlines():
f.write(str(line))
words_in_line=line.split()
- if (line.find("run")!=-1):
+ if (line.find(b"run")!=-1):
- if (line.find("run)")!=-1):
+ if (line.find(b"run)")!=-1):
# print line
- whereisrun=words_in_line.index("run)")
+ whereisrun=words_in_line.index(b"run)")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
From 1a0a390be48a415b08103672f3b2d3d76865d23c Mon Sep 17 00:00:00 2001
From 5aa8b94a491e77e4d42f34be36566058856b1c2a Mon Sep 17 00:00:00 2001
From: "H. Vetinari" <h.vetinari@gmx.com>
Date: Fri, 8 Nov 2024 14:35:19 +1100
Subject: [PATCH 3/5] add DLL import/export machinery for RowMajorStrg
Subject: [PATCH 3/7] add DLL import/export machinery for RowMajorStrg

Suggested-By: Isuru Fernando <isuruf@gmail.com>
---
CBLAS/include/cblas.h | 9 +++++++++
CBLAS/src/CMakeLists.txt | 3 +++
CBLAS/src/CMakeLists.txt | 4 ++++
CBLAS/src/cblas_globals.c | 10 ++++++++--
3 files changed, 20 insertions(+), 2 deletions(-)
3 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/CBLAS/include/cblas.h b/CBLAS/include/cblas.h
index f7d411571..4ac2d7793 100644
index b8baf4eca..5ed6dc140 100644
--- a/CBLAS/include/cblas.h
+++ b/CBLAS/include/cblas.h
@@ -4,6 +4,15 @@
Expand All @@ -31,19 +31,20 @@ index f7d411571..4ac2d7793 100644
#ifdef __cplusplus
extern "C" { /* Assume C declarations for C++ */
diff --git a/CBLAS/src/CMakeLists.txt b/CBLAS/src/CMakeLists.txt
index a8152297a..e75d1e51d 100644
index 8dcb2f293..3d6027eda 100644
--- a/CBLAS/src/CMakeLists.txt
+++ b/CBLAS/src/CMakeLists.txt
@@ -124,6 +124,9 @@ set_target_properties(
VERSION ${LAPACK_VERSION}
SOVERSION ${LAPACK_MAJOR_VERSION}
@@ -176,6 +176,10 @@ set_target_properties(
POSITION_INDEPENDENT_CODE ON
)

+if(BUILD_SHARED_LIBS)
+ target_compile_definitions(cblas PRIVATE CBLAS_BUILDING_DLL)
+endif()
if(HAS_ATTRIBUTE_WEAK_SUPPORT)
target_compile_definitions(${CBLASLIB} PRIVATE HAS_ATTRIBUTE_WEAK_SUPPORT)
endif()
+
target_include_directories(${CBLASLIB} PUBLIC
$<INSTALL_INTERFACE:include>
)
diff --git a/CBLAS/src/cblas_globals.c b/CBLAS/src/cblas_globals.c
index 5d91a18c9..b7bf74e23 100644
--- a/CBLAS/src/cblas_globals.c
Expand Down

This file was deleted.

Loading
Loading