--- rpython/translator/platform/darwin.py.orig	2013-05-09 19:07:56.000000000 +1000
+++ rpython/translator/platform/darwin.py	2013-05-10 16:44:29.000000000 +1000
@@ -17,10 +17,10 @@
                 + args)
 
     def _include_dirs_for_libffi(self):
-        return ['/usr/include/ffi']
+        return self._pkg_config("libffi", "--cflags-only-I", ['/usr/include/ffi'])
 
     def _library_dirs_for_libffi(self):
-        return ['/usr/lib']
+        return self._pkg_config("libffi", "--libs-only-L", ['/usr/lib'])
 
     def _frameworks(self, frameworks):
         args = []
@@ -51,9 +51,8 @@
 
 class Darwin_i386(Darwin):
     name = "darwin_i386"
-    link_flags = ('-arch', 'i386', '-mmacosx-version-min=10.4')
-    cflags = ('-arch', 'i386', '-O3', '-fomit-frame-pointer',
-              '-mmacosx-version-min=10.4')
+    link_flags = ('-arch', 'i386')
+    cflags = ('-arch', 'i386', '-O3', '-fomit-frame-pointer')
 
 class Darwin_PowerPC(Darwin):#xxx fixme, mwp
     name = "darwin_powerpc"
@@ -62,6 +61,5 @@
 
 class Darwin_x86_64(Darwin):
     name = "darwin_x86_64"
-    link_flags = ('-arch', 'x86_64', '-mmacosx-version-min=10.5')
-    cflags = ('-arch', 'x86_64', '-O3', '-fomit-frame-pointer',
-              '-mmacosx-version-min=10.5')
+    link_flags = ('-arch', 'x86_64')
+    cflags = ('-arch', 'x86_64', '-O3', '-fomit-frame-pointer')
