Skip to content
Merged
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 .github/workflows/osx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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 -DCMAKE_CXX_STANDARD=17 -DDOWNLOAD_GTEST=ON -DCMAKE_PREFIX_PATH=$CONDA_PREFIX -DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib

- name: Build
working-directory: build
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
8 changes: 1 addition & 7 deletions benchmark/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
6 changes: 3 additions & 3 deletions benchmark/benchmark_blas.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@

#include <benchmark/benchmark.h>

#include "xtensor/xarray.hpp"
#include "xtensor/xnoalias.hpp"
#include "xtensor/xtensor.hpp"
#include "xtensor/containers/xarray.hpp"
#include "xtensor/containers/xtensor.hpp"
#include "xtensor/core/xnoalias.hpp"

#include "xtensor-blas/xlinalg.hpp"

Expand Down
2 changes: 1 addition & 1 deletion environment-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ channels:
- conda-forge
dependencies:
- cmake
- xtensor>=0.25.0,<0.26
- xtensor>=0.26.0,<0.27
10 changes: 5 additions & 5 deletions include/xtensor-blas/xblas.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@

#include <algorithm>

#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/containers/xtensor.hpp"
#include "xtensor/io/xio.hpp"
#include "xtensor/misc/xcomplex.hpp"
#include "xtensor/utils/xutils.hpp"

#include "xflens/cxxblas/cxxblas.cxx"
#include "xtensor-blas/xblas_config.hpp"
Expand Down
2 changes: 1 addition & 1 deletion include/xtensor-blas/xblas_utils.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
#include <tuple>
#include <type_traits>

#include "xtensor/xutils.hpp"
#include "xtensor/utils/xutils.hpp"

#include "xflens/cxxblas/typedefs.h"
#include "xtensor-blas/xblas_config.hpp"
Expand Down
12 changes: 6 additions & 6 deletions include/xtensor-blas/xlapack.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@

#include <algorithm>

#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/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"
#include "xtensor-blas/xblas_config.hpp"
Expand Down
18 changes: 9 additions & 9 deletions include/xtensor-blas/xlinalg.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,15 @@
#include <limits>
#include <sstream>

#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/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/utils/xutils.hpp"
#include "xtensor/views/xstrided_view.hpp"
#include "xtensor/views/xview.hpp"

#include "xtensor-blas/xblas.hpp"
#include "xtensor-blas/xblas_utils.hpp"
Expand Down
25 changes: 11 additions & 14 deletions test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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))
Expand Down Expand Up @@ -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()
Expand Down Expand Up @@ -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)
8 changes: 4 additions & 4 deletions test/test_blas.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
8 changes: 4 additions & 4 deletions test/test_dot.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
4 changes: 2 additions & 2 deletions test/test_dot_extended.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@

#include <algorithm>

#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"
Expand Down
8 changes: 4 additions & 4 deletions test/test_float_norm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
4 changes: 2 additions & 2 deletions test/test_generator/cppy_source/test_dot_extended.cppy
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
#include <algorithm>

#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"

Expand Down
12 changes: 6 additions & 6 deletions test/test_generator/cppy_source/test_lstsq.cppy
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@
#include <algorithm>

#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"

Expand Down
12 changes: 6 additions & 6 deletions test/test_generator/cppy_source/test_qr.cppy
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@
#include <algorithm>

#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"

Expand Down
10 changes: 5 additions & 5 deletions test/test_lapack.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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/io/xio.hpp"
#include "xtensor/misc/xcomplex.hpp"
#include "xtensor/views/xview.hpp"

#include "gtest/gtest.h"
#include "xtensor-blas/xblas.hpp"
Expand Down
12 changes: 6 additions & 6 deletions test/test_linalg.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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/generators/xrandom.hpp"
#include "xtensor/io/xio.hpp"
#include "xtensor/misc/xcomplex.hpp"
#include "xtensor/views/xview.hpp"

#include "gtest/gtest.h"
#include "xtensor-blas/xblas.hpp"
Expand Down
12 changes: 6 additions & 6 deletions test/test_lstsq.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@

#include <algorithm>

#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/containers/xtensor.hpp"
#include "xtensor/core/xnoalias.hpp"
#include "xtensor/views/xstrided_view.hpp"
#include "xtensor/views/xview.hpp"

#include "gtest/gtest.h"
#include "xtensor-blas/xlinalg.hpp"
Expand Down
12 changes: 6 additions & 6 deletions test/test_qr.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@

#include <algorithm>

#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/containers/xtensor.hpp"
#include "xtensor/core/xnoalias.hpp"
#include "xtensor/views/xstrided_view.hpp"
#include "xtensor/views/xview.hpp"

#include "gtest/gtest.h"
#include "xtensor-blas/xlinalg.hpp"
Expand Down
8 changes: 4 additions & 4 deletions test/test_tensordot.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
3 changes: 0 additions & 3 deletions xtensor-blasConfig.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -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_14)
endif()
endif()

set(PN xtensor_blas)
Expand Down