Commit Graph
87 Commits
Author SHA1 Message Date
Maria Kraynyuk b48dd0df13 Make blas dependency public for cblas 2023-06-22 16:15:42 -07:00
Maria Kraynyuk ce3f662e12 Add Index-64 API as extended API with _64 suffix for CBLAS 2023-06-22 16:15:41 -07:00
langou 88aa204975 Revert "Add Index-64 API as extended API with _64 suffix for CBLAS" 2023-06-21 02:33:49 -06:00
Maria Kraynyuk 4c2236a536 Add Index-64 API as extended API with _64 suffix for CBLAS 2023-06-06 10:56:33 -07:00
Weslley S Pereira 633440e5d5 Adds tests for windows-latest on cmake.yml 2023-05-24 17:25:42 -06:00
Sébastien Villemot 776a0223b0 Fix CBLAS tests with 64-bit indexing
This patch replaces all instances of “int” by “CBLAS_INT” in CBLAS/testing/*.c
(except for RowMajorStrg which has must remain an “int”, since it is declared
as such in CBLAS main code).

Interestingly, the bug would not manifest on low endian architectures,
because interpreting an int64_t pointer as an int32_t pointer works there (as
long as the integers fits in 31 bits, which is the case here). But on big
endian architectures, this of course fails badly.
2022-11-27 13:18:46 +01:00
Simon Maertens 05043da7a6 Formatting. 2022-11-19 23:56:42 +01:00
Simon Maertens e7afed35fb Fixed usage of HAS_ATTRIBUTE_WEAK_SUPPORT. Formatted cblas_f77.h 2022-11-19 21:25:15 +01:00
Angelika Schwarz a8028e9ddc Fix undefined reference to cblas_[sd]cabs1
cblas.h defines

   double cblas_dcabs1(const void  *z);
   float  cblas_scabs1(const void  *c);

but does not provide an implementation. This commit adds
the missing implementation in the common CBLAS style and
eliminates the linker error when calling the above function.
2022-10-02 16:54:32 +02:00
Angelika Schwarz 02b71fcbc6 Add interfaces cblas_[c,z]rotg, cblas_[cs,zd]rot
Closes #473
2022-09-27 19:46:08 +02:00
Simon Maertens 86d37075ed Fixed CBLAS integer formats for 64bit build. 2022-08-08 16:41:04 +02:00
Markus Towara da11f0945b Fix CBLAS/src/CMakeLists.txt
remove spurious ../ from target_include_directories path
2022-04-27 18:05:39 +02:00
Larson, Eric d04553067e ILP support
long's in windows are 4 bytes (MSVS, intel compilers). Use int64_t and int32_t
to ensure 8 byte integers for ILP interface.

support 8 byte integer flag for intel ifort compiler
2021-09-27 10:22:49 -07:00
Quellyn Snead d2781152e1 Address issues with IBM XL builds (#606).
Be more explicit about selecting recursive fortran flags, as not
every compiler will correctly reject an incorrect option (e.g., XL).
2021-09-15 11:14:42 -06:00
Sébastien Villemot e6411157cb Fix CBLAS xerbla following hidden strlen argument changes
Commits 2d9fbdeecc and
628a2095c2 changed the function prototypes in the
cblas_f77.h.

However, the F77_xerbla case was not treated in the same way as the others. In
particular, the consequence is now that the xerbla function provided by the
CBLAS/src/xerbla.c file is never called at runtime (because it is identified as
“F77_xerbla” in the symbol table, instead of simply “xerbla”, since F77_xerbla
is *not* a macro).

This patch restores the symmetry between xerbla and the other functions.
2021-09-01 14:43:21 +02:00
Brian Jackson b488310e18 Link C libraries against build include folder 2021-08-31 13:30:21 -04:00
weslley.spereira 29c946d743 First attempt in getting (back) CBLAS_INDEX and CBLAS_INT integer types 2021-06-23 18:50:47 -03:00
langou 1c8d81aae9 Merge pull request #413 from derpda/master
Improvements of CMake (instalL) code for CBLAS, LAPACKE
2021-05-21 11:25:28 -06:00
weslley.spereira 666d1b866e Applies @mdarnold1's suggestions 2021-04-22 10:49:07 -03:00
Peter Spalthoff 61673db2d4 cblas targets added to Component Development
This is in line with LAPACKE cmake.
Also more consistent within the CBLAS CMakeLists.txt.
2021-04-13 11:16:01 +09:00
Peter Spalthoff 5806d9313b CBLAS cmake adapted even more to LAPACKE cmake 2021-04-13 11:15:21 +09:00
Peter Spalthoff c656a5f582 Code adapted more to LAPACKE/CMakeLists.txt
Just order of some lines changed.
2021-04-13 11:13:35 +09:00
Peter Spalthoff 676a02dca2 Unneeded ALL_TARGETS checks removed
The if-checks prevent proper installig of cblas-targets.cmake.
This may have been copied from main CMakeLists line 390 onwards.
2021-04-13 11:11:35 +09:00
Peter Spalthoff 3f6e1ade85 Redundant adding of blas to ALL_TARGETS removed
Already happens in the root CMakeLists.txt in line 377.
2021-04-13 11:08:58 +09:00
langou acbf97050f Merge pull request #499 from epsilon-0/master
fix redundant install of cblas_test.h
2021-04-06 09:03:48 -06:00
Weslley S. Pereira 3d67b01f4e Merge pull request #515 from weslleyspereira/try-flag--fcheck=bounds
Try flag -fcheck=all
2021-03-25 11:25:42 -03:00
weslley.spereira 628a2095c2 Fix bug thanks to @langou. Defines LAPACK_FORTRAN_STRLEN_END by default, following @mgates3 comments in @512 and LAPACK++ convention 2021-03-18 18:19:22 -03:00
weslley.spereira d3e64d6445 Change unsigned to size_t, thanks to @jabl 2021-03-18 16:10:09 -03:00
weslley.spereira 2d9fbdeecc Add hidden strlen argument in CBLAS and LAPACKE 2021-03-18 16:10:34 -03:00
Dmitry Kalinkin b4123cbc5d cblas: don't use link_xerbla hack if weak symbols are available 2021-03-18 15:02:06 -04:00
Dmitry Kalinkin 789197e1a5 cblas: mark cblas_xerbla and F77_xerbla symbols as weak 2021-03-18 14:01:22 -04:00
Aisha Tammy 0095825b56 fix redundant install of cblas_test.h
Signed-off-by: Aisha Tammy <gentoo@aisha.cc>
2021-02-26 22:31:42 +00:00
Aisha Tammy 5dd47be672 create INDEX64 target 2020-11-03 17:14:48 +00:00
Aisha Tammy 41779680d1 enable building the cblas64 library
changes all function signatures to use CBLAS_INDEX
also fixes internal variables to be CBLAS_INDEX
all tests are passing
2020-10-27 18:16:18 +00:00
Kyrylo Polezhaiev e21d6da9ba Fix error report about illegal argument 2019-11-25 00:02:36 +02:00
julielangou f9b5edfb74 Update CMakeLists.txt 2019-11-16 20:01:24 +01:00
Kelly (KT) Thompson ad09a2749e Patch to allow compilation with IBM XL and Cray. 2019-10-01 17:07:08 -06:00
Kyle Guinn dd2f632f2e Add PHONY targets 2019-07-27 23:07:37 -05:00
Kyle Guinn 90a58e6fe5 Avoid non-portable behavior of automatic variables
The variable $< should only be used when a suffix rule applies.
Otherwise, GNU Make extends its meaning to be the first prerequisite.
Avoid using it that way for portability.

This reverts commit 7fb9b8f128.
2019-07-27 18:48:52 -05:00
Kyle Guinn be23965929 Handle relative paths consistently
Place built libraries in $(TOPSRCDIR) and refer to their location by
using $(TOPSRCDIR).
2019-07-27 18:48:52 -05:00
Kyle Guinn 33258cb4b2 Switch to POSIX make variable names
Allows us to use the built-in suffix rules where appropriate.

  FORTRAN   -> FC            (POSIX)
  OPTS      -> FFLAGS        (POSIX)
  DRVOPTS   -> FFLAGS_DRV
  NOOPT     -> FFLAGS_NOOPT

  LOADER    -> FC            (use the compiler driver for linking)
  LOADOPTS  -> LDFLAGS       (POSIX)

  ARCH      -> AR            (POSIX)
  ARCHFLAGS -> ARFLAGS       (POSIX)
2019-07-27 18:48:52 -05:00
Jean-Christophe Fillion-Robin e070144ace cmake: Associate component with install rules
This commit updates all install rules explicitly associating either
the Development or RuntimeLibraries component. This allows to selectively
package components in user project by using variable like CPACK_INSTALL_CMAKE_PROJECTS [1]

To ensure all artifacts are packages in a single installer, this commit
also sets the variable CPACK_MONOLITHIC_INSTALL [2]

[1] https://cmake.org/cmake/help/latest/module/CPack.html#variable:CPACK_INSTALL_CMAKE_PROJECTS
[2] https://cmake.org/cmake/help/latest/module/CPack.html#variable:CPACK_MONOLITHIC_INSTALL
2018-08-15 06:19:48 -04:00
luzpaz 3fac41ca28 Fix misc. typos
Mostly trivial source code comments.
2017-12-01 06:55:48 -05:00
Rao Garimella d390d45005 fixed path in installed package config files for CBLAS and LAPACKE. These did not get caught in the cleanup of installation directory names (#e64606d). Fixes #21 2017-10-10 12:19:03 -06:00
Reinhold Gschweicher b883da3c59 cblas: add include directory to target 2017-06-30 13:07:01 +02:00
David Seifert c008398d49 Replace last occurrences of include install paths
* Distributions might need to change the header dir
* Also change the template paths in the `.pc` files to
  the idiomatic CMake `GNUInstallDirs` full paths,
  which are always correct, regardless of whether the
  user specified relative or absolute paths. This makes
  the build system somewhat easier and more idiomatic.
2017-04-16 00:59:28 +02:00
Kyle Guinn 8fce0e24bd Simplify the clean targets
cleanobj:  Remove object files
cleanlib:  Remove libraries
cleanexe:  Remove test and example executables
cleantest: Remove test output and core dumps
clean:     All of the above
2017-02-06 01:07:10 -06:00
Kyle Guinn 7daa32722f Use $(MAKE) -C for recursion 2017-02-05 03:09:06 -06:00
Kyle Guinn 9746cd7d82 Fix missing or unnecessary prerequisites 2017-02-05 02:54:37 -06:00
Kyle Guinn a203318e67 Add libraries as prerequisites
Use the automatic variable $^ to refer to all prerequisites when
linking or creating an archive.
2017-02-04 22:47:19 -06:00