fall back on libffi for 'foreign import "wrapper"' if necessary
authorSimon Marlow <marlowsd@gmail.com>
Thu, 16 Jul 2009 13:45:49 +0000 (13:45 +0000)
committerSimon Marlow <marlowsd@gmail.com>
Thu, 16 Jul 2009 13:45:49 +0000 (13:45 +0000)
mk/config.mk.in

index 0502f11..ac00599 100644 (file)
@@ -177,6 +177,16 @@ else
 GhcEnableTablesNextToCode=YES
 endif
 
+# Whether to use libffi for adjustors (foreign import "wrapper") or
+# not.  If we have built-in support (rts/Adjustor.c) then we use that,
+# otherwise we fall back on libffi, which is slightly slower.
+ArchHasAdjustorSupport=$(strip $(if $(findstring $(HostArch_CPP),i386 x86_64 alpha powerpc ia64,),YES,NO))
+ifeq "$(ArchHasAdjustorSupport)" "YES"
+UseLibFFIForAdjustors=NO
+else
+UseLibFFIForAdjustors=YES
+endif
+
 # On Windows we normally want to make a relocatable bindist, to we
 # ignore flags like libdir
 ifeq "$(Windows)" "YES"