[python] Clean up the configuration files

This commit is contained in:
Romain Goyet
2018-05-29 14:40:19 +02:00
committed by EmilieNumworks
parent 73250e727a
commit 96846e9396
4 changed files with 97 additions and 92 deletions

View File

@@ -1,75 +1,112 @@
#include <stdint.h>
#include <alloca.h>
#include "helpers.h"
// options to control how Micro Python is built
/* MicroPython configuration options
* We're not listing the default options as defined in mpconfig.h */
// You can disable the built-in MicroPython compiler by setting the following
// config option to 0. If you do this then you won't get a REPL prompt, but you
// will still be able to execute pre-compiled scripts, compiled with mpy-cross.
#define MICROPY_ENABLE_COMPILER (1)
// Maximum length of a path in the filesystem
#define MICROPY_ALLOC_PATH_MAX (32)
#define MICROPY_QSTR_BYTES_IN_HASH (1)
//#define MICROPY_QSTR_EXTRA_POOL mp_qstr_frozen_const_pool
#define MICROPY_ALLOC_PATH_MAX (256)
#define MICROPY_ALLOC_PARSE_CHUNK_INIT (16)
#define MICROPY_EMIT_X64 (0)
#define MICROPY_EMIT_THUMB (0)
#define MICROPY_EMIT_INLINE_THUMB (0)
#define MICROPY_COMP_MODULE_CONST (0)
#define MICROPY_COMP_CONST (0)
#define MICROPY_COMP_DOUBLE_TUPLE_ASSIGN (0)
#define MICROPY_COMP_TRIPLE_TUPLE_ASSIGN (0)
#define MICROPY_MEM_STATS (0)
#define MICROPY_DEBUG_PRINTERS (0)
#define MICROPY_ENABLE_GC (1)
#define MICROPY_GC_ALLOC_THRESHOLD (0)
#define MICROPY_STACK_CHECK (1)
#define MICROPY_REPL_EVENT_DRIVEN (0)
#define MICROPY_HELPER_REPL (1)
#define MICROPY_HELPER_LEXER_UNIX (0)
#define MICROPY_ENABLE_SOURCE_LINE (1)
#define MICROPY_ENABLE_DOC_STRING (0)
#define MICROPY_ERROR_REPORTING (MICROPY_ERROR_REPORTING_DETAILED)
#define MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG (0)
#define MICROPY_PY_ASYNC_AWAIT (0)
// Number of bytes used to store qstr hash
#define MICROPY_QSTR_BYTES_IN_HASH (1)
// Whether to include the garbage collector
#define MICROPY_ENABLE_GC (1)
// Whether to check C stack usage
#define MICROPY_STACK_CHECK (1)
// Whether to provide the mp_kbd_exception object, and micropython.kbd_intr function
#define MICROPY_KBD_EXCEPTION (1)
// Whether to include REPL helper function
#define MICROPY_HELPER_REPL (1)
// Long int implementation
#define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_MPZ)
// Whether to include information in the byte code to determine source
#define MICROPY_ENABLE_SOURCE_LINE (1)
// Exception messages provide full info, e.g. object names
#define MICROPY_ERROR_REPORTING (MICROPY_ERROR_REPORTING_DETAILED)
// Float and complex implementation
#define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_DOUBLE)
// Enable features which improve CPython compatibility
// but may lead to more code size/memory usage.
// TODO: Originally intended as generic category to not
// add bunch of once-off options. May need refactoring later
#define MICROPY_CPYTHON_COMPAT (0)
// Support for async/await/async for/async with
#define MICROPY_PY_ASYNC_AWAIT (0)
// Whether to support bytearray object
#define MICROPY_PY_BUILTINS_BYTEARRAY (0)
#define MICROPY_PY_BUILTINS_MEMORYVIEW (0)
#define MICROPY_PY_BUILTINS_ENUMERATE (0)
#define MICROPY_PY_BUILTINS_FILTER (0)
#define MICROPY_PY_BUILTINS_FROZENSET (0)
#define MICROPY_PY_BUILTINS_REVERSED (0)
#define MICROPY_PY_BUILTINS_SET (0)
// Whether to support set object
#define MICROPY_PY_BUILTINS_SET (0)
// Whether to support property object
#define MICROPY_PY_BUILTINS_PROPERTY (0)
#define MICROPY_PY___FILE__ (0)
#define MICROPY_PY_GC (0)
#define MICROPY_PY_ARRAY (0)
#define MICROPY_PY_ATTRTUPLE (0)
#define MICROPY_PY_COLLECTIONS (0)
#define MICROPY_PY_MATH (1)
// Whether to support enumerate function(type)
#define MICROPY_PY_BUILTINS_ENUMERATE (0)
// Whether to support filter function(type)
#define MICROPY_PY_BUILTINS_FILTER (0)
// Whether to support reversed function(type)
#define MICROPY_PY_BUILTINS_REVERSED (0)
// Whether to set __file__ for imported modules
#define MICROPY_PY___FILE__ (0)
// Whether to provide "array" module. Note that large chunk of the
// underlying code is shared with "bytearray" builtin type, so to
// get real savings, it should be disabled too.
#define MICROPY_PY_ARRAY (0)
// Whether to support attrtuple type (MicroPython extension)
// It provides space-efficient tuples with attribute access
#define MICROPY_PY_ATTRTUPLE (0)
// Whether to provide "collections" module
#define MICROPY_PY_COLLECTIONS (0)
// Whether to provide special math functions: math.{erf,erfc,gamma,lgamma}
#define MICROPY_PY_MATH_SPECIAL_FUNCTIONS (1)
#define MICROPY_PY_CMATH (1)
#define MICROPY_PY_IO (0)
#define MICROPY_PY_STRUCT (0)
#define MICROPY_PY_SYS (0)
#define MICROPY_MODULE_FROZEN_MPY (0)
#define MICROPY_CPYTHON_COMPAT (0)
#define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_MPZ)
#define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_DOUBLE)
#define MICROPY_PY_URANDOM (1)
// Whether to provide "cmath" module
#define MICROPY_PY_CMATH (1)
// Whether to provide "gc" module
#define MICROPY_PY_GC (0)
// Whether to provide "io" module
#define MICROPY_PY_IO (0)
// Whether to provide "struct" module
#define MICROPY_PY_STRUCT (0)
// Whether to provide "sys" module
#define MICROPY_PY_SYS (0)
// Wether to provide the "urandom" module
#define MICROPY_PY_URANDOM (1)
// Whether to include: randrange, randint, choice, random, uniform
#define MICROPY_PY_URANDOM_EXTRA_FUNCS (1)
// Make a pointer to RAM callable (eg set lower bit for Thumb code)
// (This scheme won't work if we want to mix Thumb and normal ARM code.)
#define MICROPY_MAKE_POINTER_CALLABLE(p) (p)
#define MICROPY_VM_HOOK_LOOP micropython_port_should_interrupt();
// type definitions for the specific machine
#define MICROPY_MAKE_POINTER_CALLABLE(p) ((void*)((mp_uint_t)(p) | 1))
// This port is intended to be 32-bit, but unfortunately, int32_t for
// different targets may be defined in different ways - either as int
// or as long. This requires different printf formatting specifiers
// to print such value. So, we avoid int32_t and use int directly.
#define UINT_FMT "%u"
#define INT_FMT "%d"
typedef intptr_t mp_int_t; // must be pointer size
typedef uintptr_t mp_uint_t; // must be pointer size
@@ -77,37 +114,14 @@ typedef long mp_off_t;
#define SEEK_CUR 1
#define MP_PLAT_PRINT_STRN(str, len) mp_hal_stdout_tx_strn_cooked(str, len)
// extra built in names to add to the global namespace
#define MICROPY_PORT_BUILTINS \
{ MP_OBJ_NEW_QSTR(MP_QSTR_open), (mp_obj_t)&mp_builtin_open_obj }, \
{ MP_OBJ_NEW_QSTR(MP_QSTR_input), (mp_obj_t)&mp_builtin_input_obj },
// We need to provide a declaration/definition of alloca()
#include <alloca.h>
#define MICROPY_HW_BOARD_NAME "minimal"
#define MICROPY_HW_MCU_NAME "unknown-cpu"
#ifdef __linux__
#define MICROPY_MIN_USE_STDOUT (1)
#endif
#ifdef __thumb__
#define MICROPY_MIN_USE_CORTEX_CPU (1)
#define MICROPY_MIN_USE_STM32_MCU (1)
#endif
#define MP_STATE_PORT MP_STATE_VM
#define MICROPY_PORT_ROOT_POINTERS \
const char *readline_hist[8];
extern const struct _mp_obj_module_t kandinsky_module;
#define MICROPY_PORT_BUILTIN_MODULES \
{ MP_ROM_QSTR(MP_QSTR_kandinsky), MP_ROM_PTR(&kandinsky_module) }
#define MICROPY_KBD_EXCEPTION (1)

View File

@@ -34,10 +34,4 @@ void registerScriptProvider(ScriptProvider * s);
};
// Will implement :
// mp_lexer_new_from_file -> Ask the context about a file
// mp_import_stat
// mp_hal_stdout_tx_strn_cooked -> Tell the context Python printed text
// mp_hal_input
#endif

View File

@@ -1,2 +0,0 @@
//#extern const mp_obj_module_t kandinsky_module;

View File

@@ -1 +0,0 @@
// qstrs specific to this port