Browse Source

deps: `MASM.UseSafeExceptionHandlers` for OpenSSL

Use `msvs_settings.MASM.UseSafeExceptionHandlers` when building OpenSSL
assembly code on Windows. This option appends `/safeseh` to the list of
assembler flags when building `.asm` files on Windows.

Having this option in place, separate rules in `masm_compile.gypi` are
no longer needed.

Fix: #7426
PR-URL: https://github.com/nodejs/node/pull/7427
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Bert Belder <bertbelder@gmail.com>
v6.x
Fedor Indutny 9 years ago
committed by Jeremiah Senkpiel
parent
commit
a4880b5b10
  1. 44
      deps/openssl/masm_compile.gypi
  2. 7
      deps/openssl/openssl.gyp

44
deps/openssl/masm_compile.gypi

@ -1,44 +0,0 @@
{
'conditions': [
['target_arch=="ia32"', {
'rules': [
{
'rule_name': 'Assemble',
'extension': 'asm',
'inputs': [],
'outputs': [
'<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
],
'action': [
'ml.exe',
'/Zi',
'/safeseh',
'/Fo', '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
'/c', '<(RULE_INPUT_PATH)',
],
'process_outputs_as_sources': 0,
'message': 'Assembling <(RULE_INPUT_PATH) to <(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj.',
}
],
}, 'target_arch=="x64"', {
'rules': [
{
'rule_name': 'Assemble',
'extension': 'asm',
'inputs': [],
'outputs': [
'<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
],
'action': [
'ml64.exe',
'/Zi',
'/Fo', '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
'/c', '<(RULE_INPUT_PATH)',
],
'process_outputs_as_sources': 0,
'message': 'Assembling <(RULE_INPUT_PATH) to <(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj.',
}
],
}],
],
}

7
deps/openssl/openssl.gyp

@ -121,7 +121,12 @@
}], # end of conditions of openssl_no_asm
['OS=="win"', {
'defines' : ['<@(openssl_defines_all_win)'],
'includes': ['masm_compile.gypi',],
'msvs_settings': {
'MASM': {
# Use /safeseh, see commit: 01fa5ee
'UseSafeExceptionHandlers': 'true',
},
},
}, {
'defines' : ['<@(openssl_defines_all_non_win)']
}]

Loading…
Cancel
Save