mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-13 20:26:03 +08:00
dont try passing --version to qcc
This commit is contained in:
parent
d3f97f7582
commit
664f2d4508
@ -208,13 +208,6 @@ macro(ei_testing_print_summary)
|
|||||||
endif() # vectorization / alignment options
|
endif() # vectorization / alignment options
|
||||||
|
|
||||||
message("\n${EIGEN_TESTING_SUMMARY}")
|
message("\n${EIGEN_TESTING_SUMMARY}")
|
||||||
# message("CXX: ${CMAKE_CXX_COMPILER}")
|
|
||||||
# if(CMAKE_COMPILER_IS_GNUCXX)
|
|
||||||
# execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version COMMAND head -n 1 OUTPUT_VARIABLE EIGEN_CXX_VERSION_STRING OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
# message("CXX_VERSION: ${EIGEN_CXX_VERSION_STRING}")
|
|
||||||
# endif(CMAKE_COMPILER_IS_GNUCXX)
|
|
||||||
# message("CXX_FLAGS: ${CMAKE_CXX_FLAGS}")
|
|
||||||
# message("Sparse lib flags: ${SPARSE_LIBS}")
|
|
||||||
|
|
||||||
message("************************************************************")
|
message("************************************************************")
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ Eigen can be extended in several ways, for instance, by defining global methods,
|
|||||||
|
|
||||||
In this section we will see how to add custom methods to MatrixBase. Since all expressions and matrix types inherit MatrixBase, adding a method to MatrixBase make it immediately available to all expressions ! A typical use case is, for instance, to make Eigen compatible with another API.
|
In this section we will see how to add custom methods to MatrixBase. Since all expressions and matrix types inherit MatrixBase, adding a method to MatrixBase make it immediately available to all expressions ! A typical use case is, for instance, to make Eigen compatible with another API.
|
||||||
|
|
||||||
You certainly know that in C++ it is not possible to add methods to an extending class. So how that's possible ? Here the trick is to include in the declaration of MatrixBase a file defined by the preprocessor token \c EIGEN_MATRIXBASE_PLUGIN:
|
You certainly know that in C++ it is not possible to add methods to an existing class. So how that's possible ? Here the trick is to include in the declaration of MatrixBase a file defined by the preprocessor token \c EIGEN_MATRIXBASE_PLUGIN:
|
||||||
\code
|
\code
|
||||||
class MatrixBase {
|
class MatrixBase {
|
||||||
// ...
|
// ...
|
||||||
|
@ -179,10 +179,15 @@ ei_add_test(nesting_ops "${CMAKE_CXX_FLAGS_DEBUG}")
|
|||||||
|
|
||||||
ei_add_test(prec_inverse_4x4)
|
ei_add_test(prec_inverse_4x4)
|
||||||
|
|
||||||
|
string(TOLOWER "${CMAKE_CXX_COMPILER}" cmake_cxx_compiler_tolower)
|
||||||
|
if(cmake_cxx_compiler_tolower MATCHES "qcc")
|
||||||
|
set(CXX_IS_QCC "ON")
|
||||||
|
endif()
|
||||||
|
|
||||||
ei_add_property(EIGEN_TESTING_SUMMARY "CXX: ${CMAKE_CXX_COMPILER}\n")
|
ei_add_property(EIGEN_TESTING_SUMMARY "CXX: ${CMAKE_CXX_COMPILER}\n")
|
||||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
if(CMAKE_COMPILER_IS_GNUCXX AND NOT CXX_IS_QCC)
|
||||||
execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version COMMAND head -n 1 OUTPUT_VARIABLE EIGEN_CXX_VERSION_STRING OUTPUT_STRIP_TRAILING_WHITESPACE)
|
execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version COMMAND head -n 1 OUTPUT_VARIABLE EIGEN_CXX_VERSION_STRING OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
ei_add_property(EIGEN_TESTING_SUMMARY "CXX_VERSION: ${EIGEN_CXX_VERSION_STRING}\n")
|
ei_add_property(EIGEN_TESTING_SUMMARY "CXX_VERSION: ${EIGEN_CXX_VERSION_STRING}\n")
|
||||||
endif(CMAKE_COMPILER_IS_GNUCXX)
|
endif()
|
||||||
ei_add_property(EIGEN_TESTING_SUMMARY "CXX_FLAGS: ${CMAKE_CXX_FLAGS}\n")
|
ei_add_property(EIGEN_TESTING_SUMMARY "CXX_FLAGS: ${CMAKE_CXX_FLAGS}\n")
|
||||||
ei_add_property(EIGEN_TESTING_SUMMARY "Sparse lib flags: ${SPARSE_LIBS}\n")
|
ei_add_property(EIGEN_TESTING_SUMMARY "Sparse lib flags: ${SPARSE_LIBS}\n")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user