@@ -62,10 +62,12 @@ set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3") # -DNDEBUG
62
62
#
63
63
# C++ 14 or C++ 17 or...
64
64
#
65
+ # We need to use the same C++ version as scikit-learn to avoid crashes.
66
+ set (CMAKE_CXX_SCIKITLEARN 11)
65
67
if (PYTHON_MANYLINUX EQUAL "1" )
66
68
set (CMAKE_CXX_STANDARD_REQUIRED ON )
67
69
set (CMAKE_CXX_EXTENSIONS OFF )
68
- set (CMAKE_CXX_STANDARD 17 )
70
+ set (CMAKE_CXX_STANDARD ${CMAKE_CXX_SCIKITLEARN} )
69
71
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unknown-pragmas -Wextra" )
70
72
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-unknown-pragmas -Wextra" )
71
73
if (APPLE )
@@ -82,28 +84,32 @@ if (PYTHON_MANYLINUX EQUAL "1")
82
84
else ()
83
85
if (MSVC )
84
86
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /std:c++17")
85
- set (CMAKE_CXX_STANDARD 17 )
87
+ set (CMAKE_CXX_STANDARD ${CMAKE_CXX_SCIKITLEARN} )
86
88
elseif (APPLE )
87
89
set (CMAKE_OSX_DEPLOYMENT_TARGET "10.15" )
88
90
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
89
- set (CMAKE_CXX_STANDARD 17 )
91
+ set (CMAKE_CXX_STANDARD ${CMAKE_CXX_SCIKITLEARN} )
90
92
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unknown-pragmas -Wextra" )
91
93
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-unknown-pragmas -Wextra" )
92
94
else ()
93
95
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unknown-pragmas -Wextra" )
94
96
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-unknown-pragmas -Wextra" )
95
97
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "15" )
96
98
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++23")
97
- set (CMAKE_CXX_STANDARD 23)
99
+ # set(CMAKE_CXX_STANDARD 23)
100
+ set (CMAKE_CXX_STANDARD ${CMAKE_CXX_SCIKITLEARN} )
98
101
elseif (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "11" )
99
102
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++20")
100
- set (CMAKE_CXX_STANDARD 20)
103
+ # set(CMAKE_CXX_STANDARD 20)
104
+ set (CMAKE_CXX_STANDARD ${CMAKE_CXX_SCIKITLEARN} )
101
105
elseif (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "9" )
102
106
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
103
- set (CMAKE_CXX_STANDARD 17)
107
+ # set(CMAKE_CXX_STANDARD 17)
108
+ set (CMAKE_CXX_STANDARD ${CMAKE_CXX_SCIKITLEARN} )
104
109
elseif (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "6" )
105
110
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
106
- set (CMAKE_CXX_STANDARD 14)
111
+ # set(CMAKE_CXX_STANDARD 14)
112
+ set (CMAKE_CXX_STANDARD ${CMAKE_CXX_SCIKITLEARN} )
107
113
else ()
108
114
message (FATAL_ERROR "gcc>=6.0 is needed but "
109
115
"${CMAKE_C_COMPILER_VERSION} was detected." )
0 commit comments