Skip to content

Commit 354e688

Browse files
pohmeliepfalcon
authored andcommitted
py: Add MICROPY_PY_BUILTINS_MIN_MAX, disable for minimal ports.
1 parent acc2084 commit 354e688

File tree

5 files changed

+15
-0
lines changed

5 files changed

+15
-0
lines changed

minimal/mpconfigport.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
#define MICROPY_PY_BUILTINS_SET (0)
3232
#define MICROPY_PY_BUILTINS_SLICE (0)
3333
#define MICROPY_PY_BUILTINS_PROPERTY (0)
34+
#define MICROPY_PY_BUILTINS_MIN_MAX (0)
3435
#define MICROPY_PY___FILE__ (0)
3536
#define MICROPY_PY_GC (0)
3637
#define MICROPY_PY_ARRAY (0)

py/modbuiltins.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,6 +250,8 @@ STATIC mp_obj_t mp_builtin_iter(mp_obj_t o_in) {
250250
}
251251
MP_DEFINE_CONST_FUN_OBJ_1(mp_builtin_iter_obj, mp_builtin_iter);
252252

253+
#if MICROPY_PY_BUILTINS_MIN_MAX
254+
253255
STATIC mp_obj_t mp_builtin_min_max(mp_uint_t n_args, const mp_obj_t *args, mp_map_t *kwargs, mp_uint_t op) {
254256
mp_map_elem_t *key_elem = mp_map_lookup(kwargs, MP_OBJ_NEW_QSTR(MP_QSTR_key), MP_MAP_LOOKUP);
255257
mp_obj_t key_fn = key_elem == NULL ? MP_OBJ_NULL : key_elem->value;
@@ -295,6 +297,8 @@ STATIC mp_obj_t mp_builtin_min(mp_uint_t n_args, const mp_obj_t *args, mp_map_t
295297
}
296298
MP_DEFINE_CONST_FUN_OBJ_KW(mp_builtin_min_obj, 1, mp_builtin_min);
297299

300+
#endif
301+
298302
STATIC mp_obj_t mp_builtin_next(mp_obj_t o) {
299303
mp_obj_t ret = mp_iternext_allow_raise(o);
300304
if (ret == MP_OBJ_STOP_ITERATION) {
@@ -637,8 +641,10 @@ STATIC const mp_rom_map_elem_t mp_module_builtins_globals_table[] = {
637641
{ MP_ROM_QSTR(MP_QSTR_iter), MP_ROM_PTR(&mp_builtin_iter_obj) },
638642
{ MP_ROM_QSTR(MP_QSTR_len), MP_ROM_PTR(&mp_builtin_len_obj) },
639643
{ MP_ROM_QSTR(MP_QSTR_locals), MP_ROM_PTR(&mp_builtin_locals_obj) },
644+
#if MICROPY_PY_BUILTINS_MIN_MAX
640645
{ MP_ROM_QSTR(MP_QSTR_max), MP_ROM_PTR(&mp_builtin_max_obj) },
641646
{ MP_ROM_QSTR(MP_QSTR_min), MP_ROM_PTR(&mp_builtin_min_obj) },
647+
#endif
642648
{ MP_ROM_QSTR(MP_QSTR_next), MP_ROM_PTR(&mp_builtin_next_obj) },
643649
{ MP_ROM_QSTR(MP_QSTR_oct), MP_ROM_PTR(&mp_builtin_oct_obj) },
644650
{ MP_ROM_QSTR(MP_QSTR_ord), MP_ROM_PTR(&mp_builtin_ord_obj) },

py/mpconfig.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -610,6 +610,11 @@ typedef double mp_float_t;
610610
#define MICROPY_PY_BUILTINS_NOTIMPLEMENTED (0)
611611
#endif
612612

613+
// Whether to support min/max functions
614+
#ifndef MICROPY_PY_BUILTINS_MIN_MAX
615+
#define MICROPY_PY_BUILTINS_MIN_MAX (1)
616+
#endif
617+
613618
// Whether to set __file__ for imported modules
614619
#ifndef MICROPY_PY___FILE__
615620
#define MICROPY_PY___FILE__ (1)

py/qstrdefs.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,8 +232,10 @@ Q(len)
232232
Q(list)
233233
Q(locals)
234234
Q(map)
235+
#if MICROPY_PY_BUILTINS_MIN_MAX
235236
Q(max)
236237
Q(min)
238+
#endif
237239
Q(namedtuple)
238240
Q(next)
239241
Q(oct)

unix/mpconfigport_minimal.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
#define MICROPY_PY_BUILTINS_SLICE (0)
5858
#define MICROPY_PY_BUILTINS_STR_UNICODE (0)
5959
#define MICROPY_PY_BUILTINS_PROPERTY (0)
60+
#define MICROPY_PY_BUILTINS_MIN_MAX (0)
6061
#define MICROPY_PY___FILE__ (0)
6162
#define MICROPY_PY_MICROPYTHON_MEM_INFO (0)
6263
#define MICROPY_PY_GC (0)

0 commit comments

Comments
 (0)