summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-03-22 10:30:53 +0100
committerStephan Bergmann <sbergman@redhat.com>2012-03-22 10:37:15 +0100
commitab2186d2c699f1ca041f7e3bde9620139a6f671c (patch)
tree1a935377c845074def8eff60a80be06f2a54f478 /solenv
parent4fc8059d4452e3aca7b1edaf5fba873dca29987b (diff)
MinGW: other DLLs must not pick sal's special __main
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gbuild/platform/WNT_INTEL_GCC.mk3
1 files changed, 3 insertions, 0 deletions
diff --git a/solenv/gbuild/platform/WNT_INTEL_GCC.mk b/solenv/gbuild/platform/WNT_INTEL_GCC.mk
index 7d947edcaf4c..161ad2cb41f8 100644
--- a/solenv/gbuild/platform/WNT_INTEL_GCC.mk
+++ b/solenv/gbuild/platform/WNT_INTEL_GCC.mk
@@ -84,8 +84,11 @@ endif
gb_LinkTarget_EXCEPTIONFLAGS += \
-fno-enforce-eh-specs \
+# At least sal defines its own __main, which would cause DLLs linking against
+# sal to pick up sal's __main instead of the one from MinGW's dllcrt2.o:
gb_LinkTarget_LDFLAGS := \
-Wl,--export-all-symbols \
+ -Wl,--exclude-symbols,__main \
-Wl,--enable-stdcall-fixup \
-Wl,--enable-runtime-pseudo-reloc-v2 \
$(subst -L../lib , ,$(SOLARLIB)) \