onnx: set CMAKE_CXX_STANDARD to abseil-cpp cxxstd value (#47858)

This commit is contained in:
Wouter Deconinck 2024-12-02 13:56:33 -06:00 committed by GitHub
parent e692d401eb
commit 8e7641e584
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -71,7 +71,9 @@ class Onnx(CMakePackage):
def patch(self):
if self.spec.satisfies("@1.13:1.14 ^protobuf@3.22:"):
filter_file("CMAKE_CXX_STANDARD 11", "CMAKE_CXX_STANDARD 14", "CMakeLists.txt")
# CMAKE_CXX_STANDARD is overridden in CMakeLists.txt until 1.14
cxxstd = self.spec["abseil-cpp"].variants["cxxstd"].value
filter_file("CMAKE_CXX_STANDARD 11", f"CMAKE_CXX_STANDARD {cxxstd}", "CMakeLists.txt")
def cmake_args(self):
args = [
@ -79,4 +81,8 @@ def cmake_args(self):
self.define("PY_VERSION", self.spec["python"].version.up_to(2)),
self.define("ONNX_BUILD_TESTS", self.run_tests),
]
if self.spec.satisfies("@1.15: ^protobuf@3.22:"):
# CMAKE_CXX_STANDARD can be set on command line as of 1.15
cxxstd = self.spec["abseil-cpp"].variants["cxxstd"].value
args.append(self.define("CMAKE_CXX_STANDARD", cxxstd))
return args