diff --git a/classes/c.oeclass b/classes/c.oeclass
index 1f3feb5..e949622 100644
--- a/classes/c.oeclass
+++ b/classes/c.oeclass
@@ -82,6 +82,7 @@ export LDFLAGS = "${HOST_LDFLAGS}"
 export BUILD_LDFLAGS
 
 BUILD_LDFLAGS		?= "-Wl,-O1 -Wl,-z -Wl,origin"
+BUILD_LDFLAGS:BUILD_OS_darwin ?= ""
 MACHINE_LDFLAGS		?= "-Wl,-O1"
 SDK_LDFLAGS		?= "-Wl,-O1"
 
@@ -93,6 +94,7 @@ HOST_LDFLAGS_HASH_STYLE	 = "-Wl,--hash-style=${BUILD_LINK_HASH_STYLE}"
 HOST_LDFLAGS_HASH_STYLE:machine		= "${MACHINE_HOST_LDFLAGS_HASH_STYLE}"
 HOST_LDFLAGS_HASH_STYLE:sdk		= "${SDK_HOST_LDFLAGS_HASH_STYLE}"
 HOST_LDFLAGS_HASH_STYLE:canadian-cross	= "${SDK_HOST_LDFLAGS_HASH_STYLE}"
+HOST_LDFLAGS_HASH_STYLE:HOST_OS_darwin  = ""
 MACHINE_HOST_LDFLAGS_HASH_STYLE = "-Wl,--hash-style=${MACHINE_LINK_HASH_STYLE}"
 MACHINE_HOST_LDFLAGS_HASH_STYLE:HOST_OS_mingw32 = ""
 SDK_HOST_LDFLAGS_HASH_STYLE = "-Wl,--hash-style=${SDK_LINK_HASH_STYLE}"
@@ -163,6 +165,7 @@ export CPP = "${HOST_CPP}"
 export BUILD_CPP
 BUILD_CPP	= "${BUILD_PREFIX}cpp"
 HOST_CPP	= "${HOST_PREFIX}cpp"
+HOST_CPP:HOST_OS_darwin = "${HOST_CC} -E"
 TARGET_CPP	= "${TARGET_PREFIX}cpp"
 
 # LD
