From 0c188d8033650c69afd29d805cf0caeb3acd471e Mon Sep 17 00:00:00 2001 From: Minggang Wang Date: Mon, 31 Mar 2025 13:09:57 +0800 Subject: [PATCH 1/2] Only enable C++20 when nodejs >= 23 --- binding.gyp | 35 +++++++++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/binding.gyp b/binding.gyp index 5833877d..4067ad5c 100644 --- a/binding.gyp +++ b/binding.gyp @@ -12,6 +12,7 @@ 'runtime%': 'node', 'ros_lib_dir': "= 23', { + 'cflags': [ + '-std=c++20' + ] + } + ], + [ + 'node_major_version < 23', { + 'cflags_cc': [ + '-std=c++17' + ] + } + ] ] } ], @@ -72,8 +86,21 @@ 'defines': [ 'OS_WINDOWS' ], - 'cflags_cc': [ - '-std=c++20' + 'conditions': [ + [ + 'node_major_version >= 23', { + 'cflags': [ + '-std=c++20' + ] + } + ], + [ + 'node_major_version < 23', { + 'cflags_cc': [ + '-std=c++17' + ] + } + ] ], 'include_dirs': [ './src/third_party/dlfcn-win32/', From 6d797785f094ff7bdb428383b0c7e8f4aa3ef214 Mon Sep 17 00:00:00 2001 From: Minggang Wang Date: Mon, 31 Mar 2025 13:17:38 +0800 Subject: [PATCH 2/2] Corrent with cflags_cc --- binding.gyp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/binding.gyp b/binding.gyp index 4067ad5c..dbc64670 100644 --- a/binding.gyp +++ b/binding.gyp @@ -66,7 +66,7 @@ 'conditions': [ [ 'node_major_version >= 23', { - 'cflags': [ + 'cflags_cc': [ '-std=c++20' ] } @@ -89,7 +89,7 @@ 'conditions': [ [ 'node_major_version >= 23', { - 'cflags': [ + 'cflags_cc': [ '-std=c++20' ] }