From bfc4ff549375ae70a219e0c78f75e3c5cf8d9020 Mon Sep 17 00:00:00 2001 From: Mario Emmenlauer Date: Mon, 31 Mar 2025 15:55:56 +0200 Subject: [PATCH 01/11] Updated include paths for xtensor 0.26.0 --- CMakeLists.txt | 2 +- benchmark/benchmark_blas.hpp | 6 +++--- include/xtensor-blas/xblas.hpp | 10 +++++----- include/xtensor-blas/xblas_utils.hpp | 2 +- include/xtensor-blas/xlapack.hpp | 12 ++++++------ include/xtensor-blas/xlinalg.hpp | 18 +++++++++--------- test/test_blas.cpp | 8 ++++---- test/test_dot.cpp | 8 ++++---- test/test_dot_extended.cpp | 4 ++-- test/test_float_norm.cpp | 8 ++++---- .../cppy_source/test_dot_extended.cppy | 4 ++-- .../test_generator/cppy_source/test_lstsq.cppy | 12 ++++++------ test/test_generator/cppy_source/test_qr.cppy | 12 ++++++------ test/test_lapack.cpp | 10 +++++----- test/test_linalg.cpp | 12 ++++++------ test/test_lstsq.cpp | 12 ++++++------ test/test_qr.cpp | 12 ++++++------ test/test_tensordot.cpp | 8 ++++---- 18 files changed, 80 insertions(+), 80 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index eaf10e2..8886cda 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -44,7 +44,7 @@ message(STATUS "xtensor-blas v${${PROJECT_NAME}_VERSION}") # Dependencies # ============ -set(xtensor_REQUIRED_VERSION 0.25.0) +set(xtensor_REQUIRED_VERSION 0.26.0) if(TARGET xtensor) set(xtensor_VERSION ${XTENSOR_VERSION_MAJOR}.${XTENSOR_VERSION_MINOR}.${XTENSOR_VERSION_PATCH}) # Note: This is not SEMVER compatible comparison diff --git a/benchmark/benchmark_blas.hpp b/benchmark/benchmark_blas.hpp index 97a0828..434e52c 100644 --- a/benchmark/benchmark_blas.hpp +++ b/benchmark/benchmark_blas.hpp @@ -11,9 +11,9 @@ #include -#include "xtensor/xarray.hpp" -#include "xtensor/xnoalias.hpp" -#include "xtensor/xtensor.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/core/xnoalias.hpp" +#include "xtensor/containers/xtensor.hpp" #include "xtensor-blas/xlinalg.hpp" diff --git a/include/xtensor-blas/xblas.hpp b/include/xtensor-blas/xblas.hpp index 371842c..1b6887e 100644 --- a/include/xtensor-blas/xblas.hpp +++ b/include/xtensor-blas/xblas.hpp @@ -12,11 +12,11 @@ #include -#include "xtensor/xarray.hpp" -#include "xtensor/xcomplex.hpp" -#include "xtensor/xio.hpp" -#include "xtensor/xtensor.hpp" -#include "xtensor/xutils.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/misc/xcomplex.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/containers/xtensor.hpp" +#include "xtensor/utils/xutils.hpp" #include "xflens/cxxblas/cxxblas.cxx" #include "xtensor-blas/xblas_config.hpp" diff --git a/include/xtensor-blas/xblas_utils.hpp b/include/xtensor-blas/xblas_utils.hpp index dad99a5..a9ab531 100644 --- a/include/xtensor-blas/xblas_utils.hpp +++ b/include/xtensor-blas/xblas_utils.hpp @@ -14,7 +14,7 @@ #include #include -#include "xtensor/xutils.hpp" +#include "xtensor/utils/xutils.hpp" #include "xflens/cxxblas/typedefs.h" #include "xtensor-blas/xblas_config.hpp" diff --git a/include/xtensor-blas/xlapack.hpp b/include/xtensor-blas/xlapack.hpp index af86971..7966267 100644 --- a/include/xtensor-blas/xlapack.hpp +++ b/include/xtensor-blas/xlapack.hpp @@ -12,12 +12,12 @@ #include -#include "xtensor/xarray.hpp" -#include "xtensor/xcomplex.hpp" -#include "xtensor/xio.hpp" -#include "xtensor/xstorage.hpp" -#include "xtensor/xtensor.hpp" -#include "xtensor/xutils.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/misc/xcomplex.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/containers/xstorage.hpp" +#include "xtensor/containers/xtensor.hpp" +#include "xtensor/utils/xutils.hpp" #include "xflens/cxxlapack/cxxlapack.cxx" #include "xtensor-blas/xblas_config.hpp" diff --git a/include/xtensor-blas/xlinalg.hpp b/include/xtensor-blas/xlinalg.hpp index 77cfb3b..07ce528 100644 --- a/include/xtensor-blas/xlinalg.hpp +++ b/include/xtensor-blas/xlinalg.hpp @@ -15,15 +15,15 @@ #include #include -#include "xtensor/xarray.hpp" -#include "xtensor/xcomplex.hpp" -#include "xtensor/xeval.hpp" -#include "xtensor/xio.hpp" -#include "xtensor/xmanipulation.hpp" -#include "xtensor/xstrided_view.hpp" -#include "xtensor/xtensor.hpp" -#include "xtensor/xutils.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/misc/xcomplex.hpp" +#include "xtensor/core/xeval.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/misc/xmanipulation.hpp" +#include "xtensor/views/xstrided_view.hpp" +#include "xtensor/containers/xtensor.hpp" +#include "xtensor/utils/xutils.hpp" +#include "xtensor/views/xview.hpp" #include "xtensor-blas/xblas.hpp" #include "xtensor-blas/xblas_utils.hpp" diff --git a/test/test_blas.cpp b/test/test_blas.cpp index 88e1eed..e1e5a52 100644 --- a/test/test_blas.cpp +++ b/test/test_blas.cpp @@ -7,10 +7,10 @@ * The full license is in the file LICENSE, distributed with this software. * ****************************************************************************/ -#include "xtensor/xarray.hpp" -#include "xtensor/xbuilder.hpp" -#include "xtensor/xrandom.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/generators/xbuilder.hpp" +#include "xtensor/generators/xrandom.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xblas.hpp" diff --git a/test/test_dot.cpp b/test/test_dot.cpp index 6a83cb7..63acf68 100644 --- a/test/test_dot.cpp +++ b/test/test_dot.cpp @@ -7,10 +7,10 @@ * The full license is in the file LICENSE, distributed with this software. * ****************************************************************************/ -#include "xtensor/xarray.hpp" -#include "xtensor/xbuilder.hpp" -#include "xtensor/xstrided_view.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/generators/xbuilder.hpp" +#include "xtensor/views/xstrided_view.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xlinalg.hpp" diff --git a/test/test_dot_extended.cpp b/test/test_dot_extended.cpp index ea1906f..c93bc1e 100644 --- a/test/test_dot_extended.cpp +++ b/test/test_dot_extended.cpp @@ -12,8 +12,8 @@ #include -#include "xtensor/xarray.hpp" -#include "xtensor/xtensor.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/containers/xtensor.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xlinalg.hpp" diff --git a/test/test_float_norm.cpp b/test/test_float_norm.cpp index 6d7f8f9..c087238 100644 --- a/test/test_float_norm.cpp +++ b/test/test_float_norm.cpp @@ -9,10 +9,10 @@ // this test is for https://github.com/xtensor-stack/xtensor-blas/issues/206 -#include "xtensor/xarray.hpp" -#include "xtensor/xbuilder.hpp" -#include "xtensor/xrandom.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/generators/xbuilder.hpp" +#include "xtensor/generators/xrandom.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xblas.hpp" diff --git a/test/test_generator/cppy_source/test_dot_extended.cppy b/test/test_generator/cppy_source/test_dot_extended.cppy index 15969f5..20cbd20 100644 --- a/test/test_generator/cppy_source/test_dot_extended.cppy +++ b/test/test_generator/cppy_source/test_dot_extended.cppy @@ -10,8 +10,8 @@ #include #include "gtest/gtest.h" -#include "xtensor/xarray.hpp" -#include "xtensor/xtensor.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/containers/xtensor.hpp" #include "xtensor-blas/xlinalg.hpp" diff --git a/test/test_generator/cppy_source/test_lstsq.cppy b/test/test_generator/cppy_source/test_lstsq.cppy index 727c358..ce504eb 100644 --- a/test/test_generator/cppy_source/test_lstsq.cppy +++ b/test/test_generator/cppy_source/test_lstsq.cppy @@ -10,12 +10,12 @@ #include #include "gtest/gtest.h" -#include "xtensor/xarray.hpp" -#include "xtensor/xfixed.hpp" -#include "xtensor/xnoalias.hpp" -#include "xtensor/xstrided_view.hpp" -#include "xtensor/xtensor.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/containers/xfixed.hpp" +#include "xtensor/core/xnoalias.hpp" +#include "xtensor/views/xstrided_view.hpp" +#include "xtensor/containers/xtensor.hpp" +#include "xtensor/views/xview.hpp" #include "xtensor-blas/xlinalg.hpp" diff --git a/test/test_generator/cppy_source/test_qr.cppy b/test/test_generator/cppy_source/test_qr.cppy index 7ed03bb..b81573e 100644 --- a/test/test_generator/cppy_source/test_qr.cppy +++ b/test/test_generator/cppy_source/test_qr.cppy @@ -10,12 +10,12 @@ #include #include "gtest/gtest.h" -#include "xtensor/xarray.hpp" -#include "xtensor/xfixed.hpp" -#include "xtensor/xnoalias.hpp" -#include "xtensor/xstrided_view.hpp" -#include "xtensor/xtensor.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/containers/xfixed.hpp" +#include "xtensor/core/xnoalias.hpp" +#include "xtensor/views/xstrided_view.hpp" +#include "xtensor/containers/xtensor.hpp" +#include "xtensor/views/xview.hpp" #include "xtensor-blas/xlinalg.hpp" diff --git a/test/test_lapack.cpp b/test/test_lapack.cpp index 2a1ae35..688ff48 100644 --- a/test/test_lapack.cpp +++ b/test/test_lapack.cpp @@ -7,11 +7,11 @@ * The full license is in the file LICENSE, distributed with this software. * ****************************************************************************/ -#include "xtensor/xarray.hpp" -#include "xtensor/xbuilder.hpp" -#include "xtensor/xcomplex.hpp" -#include "xtensor/xio.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/generators/xbuilder.hpp" +#include "xtensor/misc/xcomplex.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xblas.hpp" diff --git a/test/test_linalg.cpp b/test/test_linalg.cpp index 5df2feb..2cc9433 100644 --- a/test/test_linalg.cpp +++ b/test/test_linalg.cpp @@ -7,12 +7,12 @@ * The full license is in the file LICENSE, distributed with this software. * ****************************************************************************/ -#include "xtensor/xarray.hpp" -#include "xtensor/xbuilder.hpp" -#include "xtensor/xcomplex.hpp" -#include "xtensor/xio.hpp" -#include "xtensor/xrandom.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/generators/xbuilder.hpp" +#include "xtensor/misc/xcomplex.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/generators/xrandom.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xblas.hpp" diff --git a/test/test_lstsq.cpp b/test/test_lstsq.cpp index 8a2ea4e..b3d88c4 100644 --- a/test/test_lstsq.cpp +++ b/test/test_lstsq.cpp @@ -12,12 +12,12 @@ #include -#include "xtensor/xarray.hpp" -#include "xtensor/xfixed.hpp" -#include "xtensor/xnoalias.hpp" -#include "xtensor/xstrided_view.hpp" -#include "xtensor/xtensor.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/containers/xfixed.hpp" +#include "xtensor/core/xnoalias.hpp" +#include "xtensor/views/xstrided_view.hpp" +#include "xtensor/containers/xtensor.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xlinalg.hpp" diff --git a/test/test_qr.cpp b/test/test_qr.cpp index 11667a0..3aa055c 100644 --- a/test/test_qr.cpp +++ b/test/test_qr.cpp @@ -12,12 +12,12 @@ #include -#include "xtensor/xarray.hpp" -#include "xtensor/xfixed.hpp" -#include "xtensor/xnoalias.hpp" -#include "xtensor/xstrided_view.hpp" -#include "xtensor/xtensor.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/containers/xfixed.hpp" +#include "xtensor/core/xnoalias.hpp" +#include "xtensor/views/xstrided_view.hpp" +#include "xtensor/containers/xtensor.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xlinalg.hpp" diff --git a/test/test_tensordot.cpp b/test/test_tensordot.cpp index 240818f..74a99c6 100644 --- a/test/test_tensordot.cpp +++ b/test/test_tensordot.cpp @@ -7,10 +7,10 @@ * The full license is in the file LICENSE, distributed with this software. * ****************************************************************************/ -#include "xtensor/xarray.hpp" -#include "xtensor/xbuilder.hpp" -#include "xtensor/xstrided_view.hpp" -#include "xtensor/xview.hpp" +#include "xtensor/containers/xarray.hpp" +#include "xtensor/generators/xbuilder.hpp" +#include "xtensor/views/xstrided_view.hpp" +#include "xtensor/views/xview.hpp" #include "gtest/gtest.h" #include "xtensor-blas/xlinalg.hpp" From e224abecf3fd8e6acb6e1f377b277c41295e9f2b Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 14:43:33 +0200 Subject: [PATCH 02/11] Upgraded xtensor dependency in environment file --- environment-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environment-dev.yml b/environment-dev.yml index ea65f05..a86cef4 100644 --- a/environment-dev.yml +++ b/environment-dev.yml @@ -3,4 +3,4 @@ channels: - conda-forge dependencies: - cmake -- xtensor>=0.25.0,<0.26 +- xtensor>=0.26.0,<0.27 From e04b7b39db5fd80415ca4037eb29ef22281b1a88 Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 14:52:57 +0200 Subject: [PATCH 03/11] Upgraded to c++17 --- test/CMakeLists.txt | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 2b555dc..46a453a 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -33,27 +33,27 @@ string(TOUPPER "${CMAKE_BUILD_TYPE}" U_CMAKE_BUILD_TYPE) include(set_compiler_flag.cmake) -if(CPP17) - # User requested C++17, but compiler might not oblige. +if(CPP20) + # User requested C++20, but compiler might not oblige. set_compiler_flag( _cxx_std_flag CXX - "-std=c++17" # this should work with GNU, Intel, PGI - "/std:c++17" # this should work with MSVC + "-std=c++20" # this should work with GNU, Intel, PGI + "/std:c++20" # this should work with MSVC ) if(_cxx_std_flag) - message(STATUS "Building with C++17") + message(STATUS "Building with C++20") endif() else() set_compiler_flag( _cxx_std_flag CXX REQUIRED - "-std=c++14" # this should work with GNU, Intel, PGI - "/std:c++14" # this should work with MSVC + "-std=c++17" # this should work with GNU, Intel, PGI + "/std:c++17" # this should work with MSVC ) - message(STATUS "Building with C++14") + message(STATUS "Building with C++17") endif() if(NOT _cxx_std_flag) - message(FATAL_ERROR "xtensor-blas needs a C++14-compliant compiler.") + message(FATAL_ERROR "xtensor-blas needs a C++17-compliant compiler.") endif() if(CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR (CMAKE_CXX_COMPILER_ID MATCHES "Intel" AND NOT WIN32)) From 030b0b9541d230d80269db80d458b3817556132d Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 15:27:23 +0200 Subject: [PATCH 04/11] Debugging OSX build --- .github/workflows/osx.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/osx.yml b/.github/workflows/osx.yml index 41ac08c..0bf2bd3 100644 --- a/.github/workflows/osx.yml +++ b/.github/workflows/osx.yml @@ -39,7 +39,7 @@ jobs: run: micromamba install 'openblas==0.3.29=openmp*' blas-devel - name: Configure using CMake - run: cmake -Bbuild -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib + run: cmake -Bbuild -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib - name: Build working-directory: build From 2e8e974a97946120ebc4b6a087dfc24ca97a1042 Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 15:41:09 +0200 Subject: [PATCH 05/11] Setting global flags to override gtest --- test/CMakeLists.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 46a453a..5db8dba 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -33,7 +33,9 @@ string(TOUPPER "${CMAKE_BUILD_TYPE}" U_CMAKE_BUILD_TYPE) include(set_compiler_flag.cmake) -if(CPP20) +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17") + +#[[if(CPP20) # User requested C++20, but compiler might not oblige. set_compiler_flag( _cxx_std_flag CXX @@ -55,6 +57,7 @@ endif() if(NOT _cxx_std_flag) message(FATAL_ERROR "xtensor-blas needs a C++17-compliant compiler.") endif() +]] if(CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR (CMAKE_CXX_COMPILER_ID MATCHES "Intel" AND NOT WIN32)) CHECK_CXX_COMPILER_FLAG(-march=native arch_native_supported) From 2132bb630cac1f3a780cd4b5e3b06e9bbf3b8470 Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 16:04:41 +0200 Subject: [PATCH 06/11] .. --- benchmark/CMakeLists.txt | 8 +------- test/CMakeLists.txt | 5 +---- xtensor-blasConfig.cmake.in | 2 +- 3 files changed, 3 insertions(+), 12 deletions(-) diff --git a/benchmark/CMakeLists.txt b/benchmark/CMakeLists.txt index aeb40ea..1b66d74 100644 --- a/benchmark/CMakeLists.txt +++ b/benchmark/CMakeLists.txt @@ -28,13 +28,7 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU" set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native") endif() set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wunused-parameter -Wextra -Wreorder") - CHECK_CXX_COMPILER_FLAG("-std=c++14" HAS_CPP14_FLAG) - - if (HAS_CPP14_FLAG) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") - else() - message(FATAL_ERROR "Unsupported compiler -- xtensor requires C++14 support!") - endif() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17") # Enable link time optimization and set the default symbol # visibility to hidden (very important to obtain small binaries) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 5db8dba..46a453a 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -33,9 +33,7 @@ string(TOUPPER "${CMAKE_BUILD_TYPE}" U_CMAKE_BUILD_TYPE) include(set_compiler_flag.cmake) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17") - -#[[if(CPP20) +if(CPP20) # User requested C++20, but compiler might not oblige. set_compiler_flag( _cxx_std_flag CXX @@ -57,7 +55,6 @@ endif() if(NOT _cxx_std_flag) message(FATAL_ERROR "xtensor-blas needs a C++17-compliant compiler.") endif() -]] if(CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR (CMAKE_CXX_COMPILER_ID MATCHES "Intel" AND NOT WIN32)) CHECK_CXX_COMPILER_FLAG(-march=native arch_native_supported) diff --git a/xtensor-blasConfig.cmake.in b/xtensor-blasConfig.cmake.in index f700e55..7fc6126 100644 --- a/xtensor-blasConfig.cmake.in +++ b/xtensor-blasConfig.cmake.in @@ -24,7 +24,7 @@ if(NOT TARGET @PROJECT_NAME@) find_dependency(LAPACK REQUIRED) target_link_libraries(xtensor-blas INTERFACE ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES}) if(${CMAKE_VERSION} VERSION_GREATER_EQUAL 3.8) - target_compile_features(xtensor-blas INTERFACE cxx_std_14) + target_compile_features(xtensor-blas INTERFACE cxx_std_17) endif() endif() From 3ea640d47863c5effa3f568b499c99dc2a3dcf41 Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 16:41:04 +0200 Subject: [PATCH 07/11] .. --- .github/workflows/osx.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/osx.yml b/.github/workflows/osx.yml index 0bf2bd3..1630120 100644 --- a/.github/workflows/osx.yml +++ b/.github/workflows/osx.yml @@ -39,7 +39,7 @@ jobs: run: micromamba install 'openblas==0.3.29=openmp*' blas-devel - name: Configure using CMake - run: cmake -Bbuild -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib + run: cmake --trace-expand -Bbuild -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib - name: Build working-directory: build From 291548c0916a78308505ae9b1e470c2a7f4c41fb Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 16:52:49 +0200 Subject: [PATCH 08/11] .. --- test/CMakeLists.txt | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 46a453a..025233f 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -115,10 +115,7 @@ if(DOWNLOAD_GTEST OR GTEST_SRC_DIR) ${CMAKE_CURRENT_BINARY_DIR}/googletest-build EXCLUDE_FROM_ALL) set(GTEST_INCLUDE_DIRS "${gtest_SOURCE_DIR}/include") - add_library(GTest::GTest INTERFACE IMPORTED) - target_link_libraries(GTest::GTest INTERFACE gtest) - add_library(GTest::Main INTERFACE IMPORTED) - target_link_libraries(GTest::Main INTERFACE gtest_main) + set(GTEST_BOTH_LIBRARIES gtest_main gtest) else() find_package(GTest REQUIRED) endif() @@ -161,7 +158,7 @@ if(DOWNLOAD_GTEST OR GTEST_SRC_DIR) add_dependencies(test_xtensor_blas gtest_main) endif() -target_link_libraries(test_xtensor_blas ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES} GTest::GTest GTest::Main ${CMAKE_THREAD_LIBS_INIT}) +target_link_libraries(test_xtensor_blas ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) add_custom_target(xtest COMMAND test_xtensor_blas DEPENDS test_xtensor_blas) add_test(NAME xtest COMMAND test_xtensor_blas) From a19dc382265395ed119d6b37e5cff60c0335292a Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 17:01:19 +0200 Subject: [PATCH 09/11] .. --- .github/workflows/osx.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/osx.yml b/.github/workflows/osx.yml index 1630120..9762ff3 100644 --- a/.github/workflows/osx.yml +++ b/.github/workflows/osx.yml @@ -39,7 +39,7 @@ jobs: run: micromamba install 'openblas==0.3.29=openmp*' blas-devel - name: Configure using CMake - run: cmake --trace-expand -Bbuild -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib + run: cmake --trace-expand -Bbuild -DCMAKE_CXX_STANDARD=17 -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib - name: Build working-directory: build From 799e9aa2c406a66fb744aadfa95e79a16235021c Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 17:11:29 +0200 Subject: [PATCH 10/11] Fixed for good --- .github/workflows/osx.yml | 2 +- benchmark/benchmark_blas.hpp | 2 +- include/xtensor-blas/xblas.hpp | 4 ++-- include/xtensor-blas/xlapack.hpp | 4 ++-- include/xtensor-blas/xlinalg.hpp | 6 +++--- test/test_lapack.cpp | 2 +- test/test_linalg.cpp | 4 ++-- test/test_lstsq.cpp | 2 +- test/test_qr.cpp | 2 +- 9 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/osx.yml b/.github/workflows/osx.yml index 9762ff3..6e009dc 100644 --- a/.github/workflows/osx.yml +++ b/.github/workflows/osx.yml @@ -39,7 +39,7 @@ jobs: run: micromamba install 'openblas==0.3.29=openmp*' blas-devel - name: Configure using CMake - run: cmake --trace-expand -Bbuild -DCMAKE_CXX_STANDARD=17 -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib + run: cmake -Bbuild -DCMAKE_CXX_STANDARD=17 -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib - name: Build working-directory: build diff --git a/benchmark/benchmark_blas.hpp b/benchmark/benchmark_blas.hpp index 434e52c..953a683 100644 --- a/benchmark/benchmark_blas.hpp +++ b/benchmark/benchmark_blas.hpp @@ -12,8 +12,8 @@ #include #include "xtensor/containers/xarray.hpp" -#include "xtensor/core/xnoalias.hpp" #include "xtensor/containers/xtensor.hpp" +#include "xtensor/core/xnoalias.hpp" #include "xtensor-blas/xlinalg.hpp" diff --git a/include/xtensor-blas/xblas.hpp b/include/xtensor-blas/xblas.hpp index 1b6887e..53c8e2e 100644 --- a/include/xtensor-blas/xblas.hpp +++ b/include/xtensor-blas/xblas.hpp @@ -13,9 +13,9 @@ #include #include "xtensor/containers/xarray.hpp" -#include "xtensor/misc/xcomplex.hpp" -#include "xtensor/io/xio.hpp" #include "xtensor/containers/xtensor.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/misc/xcomplex.hpp" #include "xtensor/utils/xutils.hpp" #include "xflens/cxxblas/cxxblas.cxx" diff --git a/include/xtensor-blas/xlapack.hpp b/include/xtensor-blas/xlapack.hpp index 7966267..cffecf0 100644 --- a/include/xtensor-blas/xlapack.hpp +++ b/include/xtensor-blas/xlapack.hpp @@ -13,10 +13,10 @@ #include #include "xtensor/containers/xarray.hpp" -#include "xtensor/misc/xcomplex.hpp" -#include "xtensor/io/xio.hpp" #include "xtensor/containers/xstorage.hpp" #include "xtensor/containers/xtensor.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/misc/xcomplex.hpp" #include "xtensor/utils/xutils.hpp" #include "xflens/cxxlapack/cxxlapack.cxx" diff --git a/include/xtensor-blas/xlinalg.hpp b/include/xtensor-blas/xlinalg.hpp index 07ce528..6fa00fa 100644 --- a/include/xtensor-blas/xlinalg.hpp +++ b/include/xtensor-blas/xlinalg.hpp @@ -16,13 +16,13 @@ #include #include "xtensor/containers/xarray.hpp" -#include "xtensor/misc/xcomplex.hpp" +#include "xtensor/containers/xtensor.hpp" #include "xtensor/core/xeval.hpp" #include "xtensor/io/xio.hpp" +#include "xtensor/misc/xcomplex.hpp" #include "xtensor/misc/xmanipulation.hpp" -#include "xtensor/views/xstrided_view.hpp" -#include "xtensor/containers/xtensor.hpp" #include "xtensor/utils/xutils.hpp" +#include "xtensor/views/xstrided_view.hpp" #include "xtensor/views/xview.hpp" #include "xtensor-blas/xblas.hpp" diff --git a/test/test_lapack.cpp b/test/test_lapack.cpp index 688ff48..dcf507b 100644 --- a/test/test_lapack.cpp +++ b/test/test_lapack.cpp @@ -9,8 +9,8 @@ #include "xtensor/containers/xarray.hpp" #include "xtensor/generators/xbuilder.hpp" -#include "xtensor/misc/xcomplex.hpp" #include "xtensor/io/xio.hpp" +#include "xtensor/misc/xcomplex.hpp" #include "xtensor/views/xview.hpp" #include "gtest/gtest.h" diff --git a/test/test_linalg.cpp b/test/test_linalg.cpp index 2cc9433..bb1327a 100644 --- a/test/test_linalg.cpp +++ b/test/test_linalg.cpp @@ -9,9 +9,9 @@ #include "xtensor/containers/xarray.hpp" #include "xtensor/generators/xbuilder.hpp" -#include "xtensor/misc/xcomplex.hpp" -#include "xtensor/io/xio.hpp" #include "xtensor/generators/xrandom.hpp" +#include "xtensor/io/xio.hpp" +#include "xtensor/misc/xcomplex.hpp" #include "xtensor/views/xview.hpp" #include "gtest/gtest.h" diff --git a/test/test_lstsq.cpp b/test/test_lstsq.cpp index b3d88c4..5ebe8a8 100644 --- a/test/test_lstsq.cpp +++ b/test/test_lstsq.cpp @@ -14,9 +14,9 @@ #include "xtensor/containers/xarray.hpp" #include "xtensor/containers/xfixed.hpp" +#include "xtensor/containers/xtensor.hpp" #include "xtensor/core/xnoalias.hpp" #include "xtensor/views/xstrided_view.hpp" -#include "xtensor/containers/xtensor.hpp" #include "xtensor/views/xview.hpp" #include "gtest/gtest.h" diff --git a/test/test_qr.cpp b/test/test_qr.cpp index 3aa055c..183f676 100644 --- a/test/test_qr.cpp +++ b/test/test_qr.cpp @@ -14,9 +14,9 @@ #include "xtensor/containers/xarray.hpp" #include "xtensor/containers/xfixed.hpp" +#include "xtensor/containers/xtensor.hpp" #include "xtensor/core/xnoalias.hpp" #include "xtensor/views/xstrided_view.hpp" -#include "xtensor/containers/xtensor.hpp" #include "xtensor/views/xview.hpp" #include "gtest/gtest.h" From 8e7e56ed1570fe6132910e3bad70152709157771 Mon Sep 17 00:00:00 2001 From: Johan Mabille Date: Mon, 14 Apr 2025 17:22:13 +0200 Subject: [PATCH 11/11] Do not propagate standard version --- xtensor-blasConfig.cmake.in | 3 --- 1 file changed, 3 deletions(-) diff --git a/xtensor-blasConfig.cmake.in b/xtensor-blasConfig.cmake.in index 7fc6126..dbff8cc 100644 --- a/xtensor-blasConfig.cmake.in +++ b/xtensor-blasConfig.cmake.in @@ -23,9 +23,6 @@ if(NOT TARGET @PROJECT_NAME@) find_dependency(BLAS REQUIRED) find_dependency(LAPACK REQUIRED) target_link_libraries(xtensor-blas INTERFACE ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES}) - if(${CMAKE_VERSION} VERSION_GREATER_EQUAL 3.8) - target_compile_features(xtensor-blas INTERFACE cxx_std_17) - endif() endif() set(PN xtensor_blas)