<commit_before>Index: .gitignore
===================================================================
--- .gitignore	(revision 270117)
+++ .gitignore	(working copy)
@@ -137,6 +137,7 @@
 /content/test/data/plugin/
 /data
 /delegate_execute
+/exo_browser
 /google_apis/gcm/gcm.xml
 /google_apis/internal
 /googleurl
@@ -284,6 +285,7 @@
 /third_party/mt19937ar
 /third_party/mtpd/source/
 /third_party/nacl_sdk_binaries/
+/third_party/node/
 /third_party/nss
 /third_party/openmax_dl/
 /third_party/openssl
Index: build/common.gypi
===================================================================
--- build/common.gypi	(revision 270117)
+++ build/common.gypi	(working copy)
@@ -9,6 +9,19 @@
   # Variables expected to be overriden on the GYP command line (-D) or by
   # ~/.gyp/include.gypi.
   'variables': {
+
+    # begin node variables
+    'node_shared_v8': 'true',
+    'shared_v8_include_dir': '<(DEPTH)/v8/include',
+    'node_shared_zlib': 'true',
+    'shared_zlib_include_dir': '<(DEPTH)/third_party/zlib',
+    'node_tag': '',
+    'v8_postmortem_support': 'false',
+    'python': '/usr/bin/python',
+    'library%': 'static_library',    # allow override to 'shared_library' for DLL/.so builds
+    'uv_library': 'static_library',
+    # end node variables
+
     # Putting a variables dict inside another variables dict looks kind of
     # weird.  This is done so that 'host_arch', 'chromeos', etc are defined as
     # variables within the outer variables dict here.  This is necessary
@@ -2223,7 +2236,7 @@
     },
     'defines': [
       # Don't use deprecated V8 APIs anywhere.
-      'V8_DEPRECATION_WARNINGS',
+      # 'V8_DEPRECATION_WARNINGS',
       # Temporary suppression until Blink code can be removed.
       'BLINK_SCALE_FILTERS_AT_RECORD_TIME',
     ],
@@ -3113,6 +3126,16 @@
     }],
     ['os_posix==1 and OS!="mac" and OS!="ios"', {
       'target_defaults': {
+        'target_conditions': [
+          ['_target_name=="v8" or _target_name=="v8_snapshot" or _target_name=="v8_base" or _target_name=="uv" or _target_name=="node" or _target_name=="openssl" or _target_name=="zlib"', {
+            'cflags!': [
+              '-fvisibility=hidden',
+              '-fdata-sections',
+              '-ffunction-sections',
+            ],
+            'cflags_cc!': ['-fvisibility-inlines-hidden'],
+          }],
+        ],
         # Enable -Werror by default, but put it in a variable so it can
         # be disabled in ~/.gyp/include.gypi on the valgrind builders.
         'variables': {
@@ -3123,7 +3146,7 @@
           '_FILE_OFFSET_BITS=64',
         ],
         'cflags': [
-          '<(werror)',  # See note above about the werror variable.
+          #'<(werror)',  # See note above about the werror variable.
           '-pthread',
           '-fno-exceptions',
           '-fno-strict-aliasing',  # See http://crbug.com/32204
@@ -4266,7 +4289,7 @@
           'GCC_OBJC_CALL_CXX_CDTORS': 'YES',        # -fobjc-call-cxx-cdtors
           'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES',      # -fvisibility=hidden
           'GCC_THREADSAFE_STATICS': 'NO',           # -fno-threadsafe-statics
-          'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES',    # -Werror
+          'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO',     # -Werror
           'GCC_VERSION': '4.2',
           'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES',  # -Wnewline-eof
           'USE_HEADERMAP': 'NO',
@@ -4487,6 +4510,13 @@
           ],
         },
         'target_conditions': [
+          ['_target_name=="v8" or _target_name=="v8_snapshot" or _target_name=="v8_base" or _target_name=="uv" or _target_name=="node" or _target_name=="openssl" or _target_name=="zlib"', {
+            'xcode_settings': {
+              'DEAD_CODE_STRIPPING': 'NO',  # -Wl,-dead_strip
+              'GCC_INLINES_ARE_PRIVATE_EXTERN': 'NO',
+              'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO',
+            },
+          }],
           ['_type=="executable"', {
             'postbuilds': [
               {<commit_msg>Fix chromium.patch<commit_after>Index: .gitignore
===================================================================
--- .gitignore	(revision 270117)
+++ .gitignore	(working copy)
@@ -137,6 +137,7 @@
 /content/test/data/plugin/
 /data
 /delegate_execute
+/exo_browser
 /google_apis/gcm/gcm.xml
 /google_apis/internal
 /googleurl
@@ -284,6 +285,7 @@
 /third_party/mt19937ar
 /third_party/mtpd/source/
 /third_party/nacl_sdk_binaries/
+/third_party/node/
 /third_party/nss
 /third_party/openmax_dl/
 /third_party/openssl
Index: build/common.gypi
===================================================================
--- build/common.gypi	(revision 270117)
+++ build/common.gypi	(working copy)
@@ -9,6 +9,19 @@
   # Variables expected to be overriden on the GYP command line (-D) or by
   # ~/.gyp/include.gypi.
   'variables': {
+
+    # begin node variables
+    'node_shared_v8': 'true',
+    'shared_v8_include_dir': '<(DEPTH)/v8/include',
+    'node_shared_zlib': 'true',
+    'shared_zlib_include_dir': '<(DEPTH)/third_party/zlib',
+    'node_tag': '',
+    'v8_postmortem_support': 'false',
+    'python': '/usr/bin/python',
+    'library%': 'static_library',    # allow override to 'shared_library' for DLL/.so builds
+    'uv_library': 'static_library',
+    # end node variables
+
     # Putting a variables dict inside another variables dict looks kind of
     # weird.  This is done so that 'host_arch', 'chromeos', etc are defined as
     # variables within the outer variables dict here.  This is necessary
@@ -2223,7 +2236,7 @@
     },
     'defines': [
       # Don't use deprecated V8 APIs anywhere.
-      'V8_DEPRECATION_WARNINGS',
+      # 'V8_DEPRECATION_WARNINGS',
       # Temporary suppression until Blink code can be removed.
       'BLINK_SCALE_FILTERS_AT_RECORD_TIME',
     ],
@@ -3113,6 +3126,16 @@
     }],
     ['os_posix==1 and OS!="mac" and OS!="ios"', {
       'target_defaults': {
+        'target_conditions': [
+          ['_target_name=="v8" or _target_name=="v8_snapshot" or _target_name=="v8_base" or _target_name=="uv" or _target_name=="node" or _target_name=="openssl" or _target_name=="zlib"', {
+            'cflags!': [
+              '-fvisibility=hidden',
+              '-fdata-sections',
+              '-ffunction-sections',
+            ],
+            'cflags_cc!': ['-fvisibility-inlines-hidden'],
+          }],
+        ],
         # Enable -Werror by default, but put it in a variable so it can
         # be disabled in ~/.gyp/include.gypi on the valgrind builders.
         'variables': {
@@ -3123,7 +3146,7 @@
           '_FILE_OFFSET_BITS=64',
         ],
         'cflags': [
-          '<(werror)',  # See note above about the werror variable.
+          #'<(werror)',  # See note above about the werror variable.
           '-pthread',
           '-fno-exceptions',
           '-fno-strict-aliasing',  # See http://crbug.com/32204
@@ -4266,7 +4289,7 @@
           'GCC_OBJC_CALL_CXX_CDTORS': 'YES',        # -fobjc-call-cxx-cdtors
           'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES',      # -fvisibility=hidden
           'GCC_THREADSAFE_STATICS': 'NO',           # -fno-threadsafe-statics
-          'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES',    # -Werror
+          'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO',     # -Werror
           'GCC_VERSION': '4.2',
           'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES',  # -Wnewline-eof
           'USE_HEADERMAP': 'NO',
@@ -4487,6 +4510,13 @@
           ],
         },
         'target_conditions': [
+          ['_target_name=="v8" or _target_name=="v8_snapshot" or _target_name=="v8_base" or _target_name=="uv" or _target_name=="node" or _target_name=="openssl" or _target_name=="zlib"', {
+            'xcode_settings': {
+              'DEAD_CODE_STRIPPING': 'NO',  # -Wl,-dead_strip
+              'GCC_INLINES_ARE_PRIVATE_EXTERN': 'NO',
+              'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO',
+            },
+          }],
           ['_type=="executable"', {
             'postbuilds': [
               {
Index: ipc/ipc_message_start.h
===================================================================
--- ipc/ipc_message_start.h	(revision 270117)
+++ ipc/ipc_message_start.h	(working copy)
@@ -50,6 +50,7 @@
   AudioMsgStart,
   MidiMsgStart,
   ChromeMsgStart,
+  ExoBrowserMsgStart,
   DragMsgStart,
   PrintMsgStart,
   SpellCheckMsgStart,
{'fraction_non_alphanumeric': 0.19050480769230768, 'fraction_numerical': 0.02860576923076923, 'mean_word_length': 2.6932978251220594, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2052891', 'n_tokens_mistral': 3071, 'n_tokens_neox': 2866, 'n_words': 536}