summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Nabet <serval2412@yahoo.fr>2019-11-19 20:13:41 +0100
committerJulien Nabet <serval2412@yahoo.fr>2019-11-20 17:10:06 +0100
commitd79d4b63edbca7a36d546831a7b1248b652f3afd (patch)
treeaa60f91f025abb7b2c79547a7fa14ad90be9d9fa
parent5b20135a942328bfe5160ba2efa43b1ea9f0239c (diff)
/safeseh valid only on Win32
On Win10 with master sources updated today + Visual Studio, I had this part: [build CXX] bridges/source/cpp_uno/shared/component.cxx Microsoft (R) Macro Assembler (x64) Version 14.23.28107.0 Copyright (C) Microsoft Corporation. All rights reserved. MASM : warning A4018:invalid command-line option : /safeseh Assembling: C:/BLP/core/bridges/source/cpp_uno/msvc_win32_x86-64/call.asm [build CXX] bridges/source/cpp_uno/shared/types.cxx See this link for rationale: https://docs.microsoft.com/en-us/cpp/build/reference/safeseh-image-has-safe-exception-handlers?view=vs-2019 According to https://bugzilla.mozilla.org/show_bug.cgi?id=581909 (9 years ago) "...For some reason ml64 ignores the -c following -safeseh..." I don't know if recent Visual Studio versions still ignore or not the following parameters but let's fix this Change-Id: I9ae5416f32429597fab35fcce8bf06707af4def5 Reviewed-on: https://gerrit.libreoffice.org/83230 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
-rw-r--r--solenv/gbuild/platform/com_MSC_class.mk5
1 files changed, 3 insertions, 2 deletions
diff --git a/solenv/gbuild/platform/com_MSC_class.mk b/solenv/gbuild/platform/com_MSC_class.mk
index abfdaa16e1b1..4eadee362148 100644
--- a/solenv/gbuild/platform/com_MSC_class.mk
+++ b/solenv/gbuild/platform/com_MSC_class.mk
@@ -129,14 +129,15 @@ fi
endef
# AsmObject class
-
gb_AsmObject_get_source = $(1)/$(2).asm
define gb_AsmObject__command
$(call gb_Output_announce,$(2),$(true),ASM,3)
$(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) $(dir $(4)) && \
- "$(ML_EXE)" /safeseh /c /Cp $(gb_AFLAGS) -D$(COM) /Fo$(1) $(3)) && \
+ "$(ML_EXE)" \
+ $(if $(filter X86_64,$(CPUNAME)),, /safeseh) \
+ /c /Cp $(gb_AFLAGS) -D$(COM) /Fo$(1) $(3)) && \
echo "$(1) : $(3)" > $(4)
endef