Skip to content

Commit f65e4b4

Browse files
authored
* Add openblas_full class giving access to all of OpenBLAS (pull #1571)
1 parent 56229de commit f65e4b4

File tree

6 files changed

+102891
-6
lines changed

6 files changed

+102891
-6
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11

2+
* Add `openblas_full` class giving access to all of OpenBLAS ([pull #1571](https://github.com/bytedeco/javacpp-presets/pull/1571))
23
* Introduce `macosx-arm64` builds for ARPACK-NG, CMINPACK, FFTW, GSL, TensorFlow Lite, ONNX, ONNX Runtime ([issue #1069](https://github.com/bytedeco/javacpp-presets/issues/1069))
34
* Upgrade presets for OpenCV 4.11.0, DNNL 3.6.2, CPython 3.13.1, NumPy 2.2.1, SciPy 1.15.1, LLVM 19.1.6, ONNX Runtime 1.20.1
45

openblas/src/gen/java/org/bytedeco/openblas/global/openblas.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Targeted by JavaCPP version 1.5.11: DO NOT EDIT THIS FILE
1+
// Targeted by JavaCPP version 1.5.12-SNAPSHOT: DO NOT EDIT THIS FILE
22

33
package org.bytedeco.openblas.global;
44

openblas/src/gen/java/org/bytedeco/openblas/global/openblas_full.java

Lines changed: 102836 additions & 0 deletions
Large diffs are not rendered by default.

openblas/src/gen/java/org/bytedeco/openblas/global/openblas_nolapack.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Targeted by JavaCPP version 1.5.11: DO NOT EDIT THIS FILE
1+
// Targeted by JavaCPP version 1.5.12-SNAPSHOT: DO NOT EDIT THIS FILE
22

33
package org.bytedeco.openblas.global;
44

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
/*
2+
* Copyright (C) 2025 Samuel Audet, Dragan Djuric
3+
*
4+
* Licensed either under the Apache License, Version 2.0, or (at your option)
5+
* under the terms of the GNU General Public License as published by
6+
* the Free Software Foundation (subject to the "Classpath" exception),
7+
* either version 2, or any later version (collectively, the "License");
8+
* you may not use this file except in compliance with the License.
9+
* You may obtain a copy of the License at
10+
*
11+
* http://www.apache.org/licenses/LICENSE-2.0
12+
* http://www.gnu.org/licenses/
13+
* http://www.gnu.org/software/classpath/license.html
14+
*
15+
* or as provided in the LICENSE.txt file that accompanied this code.
16+
* Unless required by applicable law or agreed to in writing, software
17+
* distributed under the License is distributed on an "AS IS" BASIS,
18+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19+
* See the License for the specific language governing permissions and
20+
* limitations under the License.
21+
*/
22+
23+
package org.bytedeco.openblas.presets;
24+
25+
import org.bytedeco.javacpp.annotation.NoException;
26+
import org.bytedeco.javacpp.annotation.Platform;
27+
import org.bytedeco.javacpp.annotation.Properties;
28+
29+
/**
30+
*
31+
* @author Samuel Audet
32+
* @author Dragan Djuric
33+
*/
34+
@Properties(inherit = openblas.class, global = "org.bytedeco.openblas.global.openblas_full", value = {
35+
@Platform(
36+
include = {"openblas_config.h", "cblas.h", "lapacke_config.h", "lapacke_mangling.h", "lapack.h", "lapacke.h", "lapacke_utils.h"})})
37+
@NoException
38+
public class openblas_full extends openblas {
39+
40+
@Override public String[] functionsToSkip() {
41+
return new String[0];
42+
}
43+
}

openblas/src/main/java/org/bytedeco/openblas/presets/openblas_nolapack.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -128,9 +128,16 @@ public class openblas_nolapack implements LoadEnabled, InfoMapper {
128128
.put(new Info("openblas_complex_float", "lapack_complex_float").cast().pointerTypes("FloatPointer", "FloatBuffer", "float[]"))
129129
.put(new Info("openblas_complex_double", "lapack_complex_double").cast().pointerTypes("DoublePointer", "DoubleBuffer", "double[]"));
130130

131+
for (String f : functionsToSkip()) {
132+
infoMap.put(new Info(f, "LAPACK_" + f, "LAPACK_" + f + "_base", "LAPACKE_" + f, "LAPACKE_" + f + "_work").skip());
133+
}
134+
}
135+
136+
public String[] functionsToSkip() {
131137
String[] functions = {
132138
// not available in Accelerate
133-
"cblas_caxpby", "cblas_daxpby", "cblas_saxpby", "cblas_zaxpby", "cblas_caxpyc", "cblas_zaxpyc",
139+
"cblas_caxpby", "cblas_daxpby", "cblas_saxpby", "cblas_zaxpby",
140+
"cblas_caxpyc", "cblas_zaxpyc",
134141
"cblas_sgemmt", "cblas_dgemmt", "cblas_cgemmt", "cblas_zgemmt",
135142
"cblas_cgemm_batch", "cblas_dgemm_batch", "cblas_sgemm_batch", "cblas_zgemm_batch",
136143
"cblas_samax", "cblas_damax", "cblas_scamax", "cblas_dzamax",
@@ -162,9 +169,7 @@ public class openblas_nolapack implements LoadEnabled, InfoMapper {
162169
"cgbrfsx", "cporfsx", "dgerfsx", "sgbrfsx", "ssyrfsx", "zherfsx", "cgerfsx", "csyrfsx", "dporfsx", "sgerfsx", "zgbrfsx", "zporfsx",
163170
"cherfsx", "dgbrfsx", "dsyrfsx", "sporfsx", "zgerfsx", "zsyrfsx", "cgbsvxx", "cposvxx", "dgesvxx", "sgbsvxx", "ssysvxx", "zhesvxx",
164171
"cgesvxx", "csysvxx", "dposvxx", "sgesvxx", "zgbsvxx", "zposvxx", "chesvxx", "dgbsvxx", "dsysvxx", "sposvxx", "zgesvxx", "zsysvxx"};
165-
for (String f : functions) {
166-
infoMap.put(new Info(f, "LAPACK_" + f, "LAPACK_" + f + "_base", "LAPACKE_" + f, "LAPACKE_" + f + "_work").skip());
167-
}
172+
return functions;
168173
}
169174

170175
static int maxThreads = -1;

0 commit comments

Comments
 (0)