From 91386eee2613cbaf736d746cfef28674cce82c01 Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Mon, 17 Nov 2014 00:16:14 +0200 Subject: [PATCH] ports: Define mp_off_t. --- bare-arm/mpconfigport.h | 1 + qemu-arm/mpconfigport.h | 1 + teensy/mpconfigport.h | 1 + unix-cpy/mpconfigport.h | 1 + windows/mpconfigport.h | 7 +++++++ 5 files changed, 11 insertions(+) diff --git a/bare-arm/mpconfigport.h b/bare-arm/mpconfigport.h index 59f246e2b8..0015541f98 100644 --- a/bare-arm/mpconfigport.h +++ b/bare-arm/mpconfigport.h @@ -46,6 +46,7 @@ typedef int32_t mp_int_t; // must be pointer size typedef uint32_t mp_uint_t; // must be pointer size typedef void *machine_ptr_t; // must be of pointer size typedef const void *machine_const_ptr_t; // must be of pointer size +typedef long mp_off_t; // extra built in names to add to the global namespace extern const struct _mp_obj_fun_builtin_t mp_builtin_open_obj; diff --git a/qemu-arm/mpconfigport.h b/qemu-arm/mpconfigport.h index e3c0969a5d..45c7737413 100644 --- a/qemu-arm/mpconfigport.h +++ b/qemu-arm/mpconfigport.h @@ -29,6 +29,7 @@ typedef int32_t mp_int_t; // must be pointer size typedef uint32_t mp_uint_t; // must be pointer size typedef void *machine_ptr_t; // must be of pointer size typedef const void *machine_const_ptr_t; // must be of pointer size +typedef long mp_off_t; // extra built in names to add to the global namespace extern const struct _mp_obj_fun_builtin_t mp_builtin_open_obj; diff --git a/teensy/mpconfigport.h b/teensy/mpconfigport.h index 8e2ba4afd9..efe51fecda 100644 --- a/teensy/mpconfigport.h +++ b/teensy/mpconfigport.h @@ -55,6 +55,7 @@ typedef int32_t mp_int_t; // must be pointer size typedef unsigned int mp_uint_t; // must be pointer size typedef void *machine_ptr_t; // must be of pointer size typedef const void *machine_const_ptr_t; // must be of pointer size +typedef long mp_off_t; // We have inlined IRQ functions for efficiency (they are generally // 1 machine instruction). diff --git a/unix-cpy/mpconfigport.h b/unix-cpy/mpconfigport.h index 4d1deb8793..2c1d5d7b27 100644 --- a/unix-cpy/mpconfigport.h +++ b/unix-cpy/mpconfigport.h @@ -48,6 +48,7 @@ typedef unsigned int mp_uint_t; // must be pointer size typedef void *machine_ptr_t; // must be of pointer size typedef const void *machine_const_ptr_t; // must be of pointer size typedef double machine_float_t; +typedef long mp_off_t; // We need to provide a declaration/definition of alloca() #ifdef __FreeBSD__ diff --git a/windows/mpconfigport.h b/windows/mpconfigport.h index ee207c1ef8..7b23f5cb1b 100644 --- a/windows/mpconfigport.h +++ b/windows/mpconfigport.h @@ -92,6 +92,13 @@ typedef unsigned int mp_uint_t; // must be pointer size // define standard endianness macros. #define MP_ENDIANNESS_LITTLE (1) +// Cannot include , as it may lead to symbol name clashes +#if _FILE_OFFSET_BITS == 64 && !defined(__LP64__) +typedef long long mp_off_t; +#else +typedef long mp_off_t; +#endif + typedef void *machine_ptr_t; // must be of pointer size typedef const void *machine_const_ptr_t; // must be of pointer size