Skip to content

Commit

Permalink
build: fix nan build
Browse files Browse the repository at this point in the history
  • Loading branch information
MarshallOfSound committed Jun 6, 2022
1 parent c652803 commit c06ea18
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 0 deletions.
1 change: 1 addition & 0 deletions patches/node/.patches
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,4 @@ macos_avoid_posix_spawnp_cwd_bug_3597.patch
src_update_importmoduledynamically.patch
fix_add_v8_enable_reverse_jsargs_defines_in_common_gypi.patch
json_parse_errors_made_user-friendly.patch
build_define_libcpp_abi_namespace_as_cr_to_align_with_chromium.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samuel Attard <sattard@salesforce.com>
Date: Mon, 6 Jun 2022 14:46:40 -0700
Subject: build: define _LIBCPP_ABI_NAMESPACE as Cr to align with chromium

Without this define native modules will be built trying to link to _LIBCPP_ABI_NAMESPACE which is the default name, chromium overrides this to Cr for PDB size reasons but they override it on all platforms. Setting this define allows native modules to actually work. This should not be upstreamed as it is Electron specific.

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/3655638

diff --git a/common.gypi b/common.gypi
index fd4e0b38eb6ecf81b23186ec663499d1e685fdf8..a737e37ba0d4fb76e2f0e170781e56129510d34a 100644
--- a/common.gypi
+++ b/common.gypi
@@ -288,6 +288,7 @@
'V8_DEPRECATION_WARNINGS',
'V8_IMMINENT_DEPRECATION_WARNINGS',
'_GLIBCXX_USE_CXX11_ABI=1',
+ '_LIBCPP_ABI_NAMESPACE=Cr',
],

# Forcibly disable -Werror. We support a wide range of compilers, it's

0 comments on commit c06ea18

Please sign in to comment.