f8fc78691d
To enable lazy loading of submodules (among other things), which is very useful for MicroPython libraries that want to have optional subcomponents. Disabled explicitly on minimal ports.
71 lines
2.5 KiB
C
71 lines
2.5 KiB
C
#include <stdint.h>
|
|
|
|
// options to control how MicroPython is built
|
|
|
|
#define MICROPY_QSTR_BYTES_IN_HASH (1)
|
|
#define MICROPY_ALLOC_PATH_MAX (512)
|
|
#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 (0)
|
|
#define MICROPY_HELPER_REPL (0)
|
|
#define MICROPY_HELPER_LEXER_UNIX (0)
|
|
#define MICROPY_ENABLE_SOURCE_LINE (0)
|
|
#define MICROPY_ENABLE_DOC_STRING (0)
|
|
#define MICROPY_ERROR_REPORTING (MICROPY_ERROR_REPORTING_TERSE)
|
|
#define MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG (0)
|
|
#define MICROPY_PY_ASYNC_AWAIT (0)
|
|
#define MICROPY_PY_BUILTINS_BYTEARRAY (0)
|
|
#define MICROPY_PY_BUILTINS_DICT_FROMKEYS (0)
|
|
#define MICROPY_PY_BUILTINS_MEMORYVIEW (0)
|
|
#define MICROPY_PY_BUILTINS_ENUMERATE (0)
|
|
#define MICROPY_PY_BUILTINS_FROZENSET (0)
|
|
#define MICROPY_PY_BUILTINS_REVERSED (0)
|
|
#define MICROPY_PY_BUILTINS_SET (0)
|
|
#define MICROPY_PY_BUILTINS_SLICE (0)
|
|
#define MICROPY_PY_BUILTINS_PROPERTY (0)
|
|
#define MICROPY_PY_BUILTINS_STR_COUNT (0)
|
|
#define MICROPY_PY_BUILTINS_STR_OP_MODULO (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 (0)
|
|
#define MICROPY_PY_CMATH (0)
|
|
#define MICROPY_PY_IO (0)
|
|
#define MICROPY_PY_STRUCT (0)
|
|
#define MICROPY_PY_SYS (0)
|
|
#define MICROPY_CPYTHON_COMPAT (0)
|
|
#define MICROPY_MODULE_GETATTR (0)
|
|
#define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_NONE)
|
|
#define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_NONE)
|
|
#define MICROPY_USE_INTERNAL_PRINTF (0)
|
|
|
|
// type definitions for the specific machine
|
|
|
|
#define MICROPY_MAKE_POINTER_CALLABLE(p) ((void *)((mp_uint_t)(p) | 1))
|
|
|
|
#define UINT_FMT "%lu"
|
|
#define INT_FMT "%ld"
|
|
|
|
typedef int32_t mp_int_t; // must be pointer size
|
|
typedef uint32_t mp_uint_t; // must be pointer size
|
|
typedef long mp_off_t;
|
|
|
|
// dummy print
|
|
#define MP_PLAT_PRINT_STRN(str, len) (void)0
|
|
|
|
// extra built in names to add to the global namespace
|
|
#define MICROPY_PORT_BUILTINS \
|
|
{ MP_ROM_QSTR(MP_QSTR_open), MP_ROM_PTR(&mp_builtin_open_obj) },
|
|
|
|
// We need to provide a declaration/definition of alloca()
|
|
#include <alloca.h>
|