ExternalLibraryFunction.st
changeset 9365 9003f8432516
parent 9347 31adc57e6954
child 9386 5dea5e31820c
--- a/ExternalLibraryFunction.st	Wed Jun 07 17:45:06 2006 +0200
+++ b/ExternalLibraryFunction.st	Wed Jun 14 11:23:16 2006 +0200
@@ -24,16 +24,34 @@
 
 /*
  * does this architecture support FFI ?
- * NOTICE: this is going to be moved to an architecture-specific xxxIntern.h file.
+ * NOTICE: this is now defined in the architecture-specific configuration file.
  */
-#ifdef WIN32
-# define HAVE_FFI
+#if defined(WIN32) || defined(LINUX)
+# ifndef HAVE_FFI
+#  define HAVE_FFI
+# endif
 #endif
 
 
 #ifdef HAVE_FFI
 # include <ffi.h>
 # define MAX_ARGS    128
+
+extern ffi_type *__get_ffi_type_sint();
+extern ffi_type *__get_ffi_type_sint8();
+extern ffi_type *__get_ffi_type_sint16();
+extern ffi_type *__get_ffi_type_sint32();
+extern ffi_type *__get_ffi_type_sint64();
+extern ffi_type *__get_ffi_type_uint();
+extern ffi_type *__get_ffi_type_uint8();
+extern ffi_type *__get_ffi_type_uint16();
+extern ffi_type *__get_ffi_type_uint32();
+extern ffi_type *__get_ffi_type_uint64();
+extern ffi_type *__get_ffi_type_float();
+extern ffi_type *__get_ffi_type_double();
+extern ffi_type *__get_ffi_type_void();
+extern ffi_type *__get_ffi_type_pointer();
+
 #endif
 
 %}
@@ -723,5 +741,5 @@
 !ExternalLibraryFunction class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/ExternalLibraryFunction.st,v 1.21 2006-05-05 11:40:49 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ExternalLibraryFunction.st,v 1.22 2006-06-14 09:23:15 cg Exp $'
 ! !