summaryrefslogtreecommitdiffhomepage
path: root/include/mrbconf.h
diff options
context:
space:
mode:
authorTomasz Dąbrowski <[email protected]>2016-11-21 12:35:09 +0100
committerTomasz Dąbrowski <[email protected]>2016-11-21 12:37:45 +0100
commitd86f5d2dca3d17e1dc114085a0cd9a32d61f3014 (patch)
treef6892a8db1bb1c99e9567ce890add04fe4e99e14 /include/mrbconf.h
parenta3f8206ce62844efe5e6bb81bd05972fde98dff0 (diff)
downloadmruby-d86f5d2dca3d17e1dc114085a0cd9a32d61f3014.tar.gz
mruby-d86f5d2dca3d17e1dc114085a0cd9a32d61f3014.zip
mruby architecture detection
Diffstat (limited to 'include/mrbconf.h')
-rw-r--r--include/mrbconf.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/mrbconf.h b/include/mrbconf.h
index ab5dd1a03..d47f46ae4 100644
--- a/include/mrbconf.h
+++ b/include/mrbconf.h
@@ -7,6 +7,20 @@
#ifndef MRUBYCONF_H
#define MRUBYCONF_H
+/* architecture selection: */
+/* specify -DMRB_32BIT or -DMRB_64BIT to override */
+#if !defined(MRB_32BIT) && !defined(MRB_64BIT)
+#if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64) || defined(__aarch64__)
+#define MRB_64BIT
+#else
+#define MRB_32BIT
+#endif
+#endif
+
+#if defined(MRB_32BIT) && defined(MRB_64BIT)
+#error Cannot build for 32 and 64 bit architecture at the same time
+#endif
+
/* configuration options: */
/* add -DMRB_USE_FLOAT to use float instead of double for floating point numbers */
//#define MRB_USE_FLOAT