Index: swig/Lib/swigarch.i |
=================================================================== |
--- swig/Lib/swigarch.i (revision 0) |
+++ swig/Lib/swigarch.i (revision 0) |
@@ -0,0 +1,65 @@ |
+/* ----------------------------------------------------------------------------- |
+ * See the LICENSE file for information on copyright, usage and redistribution |
+ * of SWIG, and the README file for authors - http://www.swig.org/release.html. |
+ * |
+ * swigarch.i |
+ * |
+ * SWIG library file for 32bit/64bit code specialization and checking. |
+ * |
+ * Use only in extreme cases, when no arch. independent code can be |
+ * generated |
+ * |
+ * To activate architecture specific code, use |
+ * |
+ * swig -DSWIGWORDSIZE32 |
+ * |
+ * or |
+ * |
+ * swig -DSWIGWORDSIZE64 |
+ * |
+ * Note that extra checking code will be added to the wrapped code, |
+ * which will prevent the compilation in a different architecture. |
+ * |
+ * If you don't specify the SWIGWORDSIZE (the default case), swig will |
+ * generate architecture independent and/or 32bits code, with no extra |
+ * checking code added. |
+ * ----------------------------------------------------------------------------- */ |
+ |
+#if !defined(SWIGWORDSIZE32) && !defined(SWIGWORDSIZE64) |
+# if (__WORDSIZE == 32) |
+# define SWIGWORDSIZE32 |
+# endif |
+#endif |
+ |
+#if !defined(SWIGWORDSIZE64) && !defined(SWIGWORDSIZE32) |
+# if defined(__x86_64) || defined(__x86_64__) || (__WORDSIZE == 64) |
+# define SWIGWORDSIZE64 |
+# endif |
+#endif |
+ |
+ |
+#ifdef SWIGWORDSIZE32 |
+%{ |
+#define SWIGWORDSIZE32 |
+#ifndef LONG_MAX |
+#include <limits.h> |
+#endif |
+#if (__WORDSIZE == 64) || (LONG_MAX != INT_MAX) |
+# error "SWIG wrapped code invalid in 64 bit architecture, regenarete code using -DSWIGWORDSIZE64" |
+#endif |
+%} |
+#endif |
+ |
+#ifdef SWIGWORDSIZE64 |
+%{ |
+#define SWIGWORDSIZE64 |
+#ifndef LONG_MAX |
+#include <limits.h> |
+#endif |
+#if (__WORDSIZE == 32) || (LONG_MAX == INT_MAX) |
+# error "SWIG wrapped code invalid in 32 bit architecture, regenarete code using -DSWIGWORDSIZE32" |
+#endif |
+%} |
+#endif |
+ |
+ |