mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
fix: disable C++ modules in libnode builds
This commit is contained in:
@@ -52,4 +52,4 @@ chore_exclude_electron_node_folder_from_exit-time-destructors.patch
|
||||
api_remove_deprecated_getisolate.patch
|
||||
src_switch_from_get_setprototype_to_get_setprototypev2.patch
|
||||
fix_replace_deprecated_setprototype.patch
|
||||
fix_js2c_including_mac_sdk_headers_twice.patch
|
||||
fix_redefined_macos_sdk_header_symbols.patch
|
||||
|
||||
@@ -1,19 +1,30 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Samuel Maddock <smaddock@slack-corp.com>
|
||||
Date: Wed, 8 Oct 2025 10:50:03 -0400
|
||||
Subject: fix: js2c including mac sdk headers twice
|
||||
Subject: fix: redefined macos sdk header symbols
|
||||
|
||||
https://chromium-review.googlesource.com/c/chromium/src/+/6950738
|
||||
|
||||
Chromium has set the minimum MacOS SDK version to 26. With this
|
||||
change, it seems to introduce an incompatibility when compiling
|
||||
using clang modules. Disabling them seems to resolve the issue.
|
||||
using clang modules. Disabling them resolves the issue.
|
||||
|
||||
diff --git a/unofficial.gni b/unofficial.gni
|
||||
index a64d2e4ac475abc049fff7ea62ec76de565a747d..61aeac679a90832a1d9f559a4eb880362bce038d 100644
|
||||
index a64d2e4ac475abc049fff7ea62ec76de565a747d..ab456452d102088005fc4bfcb394d2de5ec44889 100644
|
||||
--- a/unofficial.gni
|
||||
+++ b/unofficial.gni
|
||||
@@ -350,6 +350,12 @@ template("node_gn_build") {
|
||||
@@ -195,6 +195,10 @@ template("node_gn_build") {
|
||||
"CoreFoundation.framework",
|
||||
"Security.framework",
|
||||
]
|
||||
+
|
||||
+ # Fix for MacOSX26 SDK headers included twice due to usage of clang
|
||||
+ # modules. Included once as a C header and again as C++.
|
||||
+ use_libcxx_modules = false
|
||||
}
|
||||
if (is_posix) {
|
||||
configs -= [ "//build/config/gcc:symbol_visibility_hidden" ]
|
||||
@@ -350,6 +354,12 @@ template("node_gn_build") {
|
||||
include_dirs = [ "src", "tools" ]
|
||||
configs += [ "//build/config/compiler:no_exit_time_destructors" ]
|
||||
|
||||
Reference in New Issue
Block a user