summaryrefslogtreecommitdiff
path: root/mk/platform
diff options
context:
space:
mode:
Diffstat (limited to 'mk/platform')
-rw-r--r--mk/platform/Darwin.mk14
1 files changed, 13 insertions, 1 deletions
diff --git a/mk/platform/Darwin.mk b/mk/platform/Darwin.mk
index 9162e47355f..26726d471d1 100644
--- a/mk/platform/Darwin.mk
+++ b/mk/platform/Darwin.mk
@@ -1,4 +1,4 @@
-# $NetBSD: Darwin.mk,v 1.78 2016/02/24 14:59:56 jperkin Exp $
+# $NetBSD: Darwin.mk,v 1.79 2016/02/29 10:05:47 jperkin Exp $
#
# Variable definitions for the Darwin operating system.
@@ -140,6 +140,18 @@ _OPSYS_PREFER.mit-krb5?= native
_OPSYS_PREFER.openssl?= pkgsrc # builtin deprecated from 10.7 onwards
.endif
+# Remove common GNU ld arguments incompatible with the Darwin linker.
+BUILDLINK_TRANSFORM+= rm:-Wl,-O1
+BUILDLINK_TRANSFORM+= rm:-Wl,-Bdynamic
+BUILDLINK_TRANSFORM+= rm:-Wl,-Bsymbolic
+BUILDLINK_TRANSFORM+= rm:-Wl,-export-dynamic
+BUILDLINK_TRANSFORM+= rm:-Wl,-warn-common
+BUILDLINK_TRANSFORM+= rm:-Wl,--as-needed
+BUILDLINK_TRANSFORM+= rm:-Wl,--no-as-needed
+BUILDLINK_TRANSFORM+= rm:-Wl,--export-dynamic
+BUILDLINK_TRANSFORM+= rm:-Wl,--gc-sections
+BUILDLINK_TRANSFORM+= rm:-Wl,--no-undefined
+
# flags passed to the linker to extract all symbols from static archives.
# this is GNU ld.
.if empty(MACHINE_PLATFORM:MDarwin-[0-8].*-*)