aboutsummaryrefslogtreecommitdiff
path: root/windows
diff options
context:
space:
mode:
Diffstat (limited to 'windows')
-rw-r--r--windows/Makefile4
-rw-r--r--windows/README6
-rw-r--r--windows/mpconfigport.h5
3 files changed, 14 insertions, 1 deletions
diff --git a/windows/Makefile b/windows/Makefile
index ca3c08c1f..10c5f2ba7 100644
--- a/windows/Makefile
+++ b/windows/Makefile
@@ -49,6 +49,10 @@ CFLAGS_MOD += -DMICROPY_USE_READLINE=2
LDFLAGS_MOD += -lreadline
endif
+ifeq ($(CROSS_COMPILE),x86_64-w64-mingw32-)
+CFLAGS_MOD += -DMICROPY_NLR_SETJMP=1
+endif
+
LIB += -lws2_32
include ../py/mkrules.mk
diff --git a/windows/README b/windows/README
index e9ccc33f5..ca26c4629 100644
--- a/windows/README
+++ b/windows/README
@@ -20,11 +20,15 @@ make CROSS_COMPILE=i586-mingw32msvc-
To compile under Cygwin:
Install following packages using cygwin's setup.exe:
-mingw64-i686-gcc-core, make
+mingw64-i686-gcc-core, mingw64-x86_64-gcc-core, make
Build using:
make CROSS_COMPILE=i686-w64-mingw32-
+or for 64bit:
+
+make CROSS_COMPILE=x86_64-w64-mingw32-
+
To compile using Visual Studio 2013 (or higher):
diff --git a/windows/mpconfigport.h b/windows/mpconfigport.h
index fe13a6876..4b13fedad 100644
--- a/windows/mpconfigport.h
+++ b/windows/mpconfigport.h
@@ -108,6 +108,11 @@
#if defined( __MINGW32__ ) && defined( __LP64__ )
typedef long mp_int_t; // must be pointer size
typedef unsigned long mp_uint_t; // must be pointer size
+#elif defined ( __MINGW32__ ) && defined( _WIN64 )
+#include <stdint.h>
+typedef __int64 mp_int_t;
+typedef unsigned __int64 mp_uint_t;
+#define MP_SSIZE_MAX __INT64_MAX__
#elif defined ( _MSC_VER ) && defined( _WIN64 )
typedef __int64 mp_int_t;
typedef unsigned __int64 mp_uint_t;