kumquat-buildroot/package/micropython/micropython.mk
Fabrice Fontaine 1ebc5415e1 package/micropython: depends on host-python3
Replace BR2_PYTHON3_HOST_DEPENDENCY by host-python3 to avoid the
following build failure raised since bump to version 1.17 in commit
32b2a03745:

Traceback (most recent call last):
  File "../py/makeversionhdr.py", line 117, in <module>
    make_version_header(sys.argv[1])
  File "../py/makeversionhdr.py", line 79, in make_version_header
    info = get_version_info_from_docs_conf()
  File "../py/makeversionhdr.py", line 67, in get_version_info_from_docs_conf
    for line in f:
  File "/usr/lib/python3.5/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 2154: ordinal not in range(128)

Indeed, this build failure is not reproduced by host-python3 (in version
3.9.7) so it is probably an issue with python 3.5 (which is 6-years old).

Fixes:
 - http://autobuild.buildroot.org/results/96f7b81f5d14715b0b6673a8016a31e9e1552d0b

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2021-10-25 20:58:27 +02:00

56 lines
1.8 KiB
Makefile

################################################################################
#
# micropython
#
################################################################################
MICROPYTHON_VERSION = 1.17
MICROPYTHON_SITE = $(call github,micropython,micropython,v$(MICROPYTHON_VERSION))
# Micropython has a lot of code copied from other projects, and also a number
# of submodules for various libs. However, we don't even clone the submodules,
# and most of the copied code is not used in the unix build.
MICROPYTHON_LICENSE = MIT, BSD-1-clause, BSD-3-clause, Zlib
MICROPYTHON_LICENSE_FILES = LICENSE
MICROPYTHON_DEPENDENCIES = host-pkgconf libffi host-python3
# Set GIT_DIR so package won't use buildroot's version number
MICROPYTHON_MAKE_ENV = \
$(TARGET_MAKE_ENV) \
GIT_DIR=.
# Use fallback implementation for exception handling on architectures that don't
# have explicit support.
ifeq ($(BR2_i386)$(BR2_x86_64)$(BR2_arm)$(BR2_armeb),)
MICROPYTHON_CFLAGS = -DMICROPY_GCREGS_SETJMP=1
endif
# xtensa has problems with nlr_push, use setjmp based implementation instead
ifeq ($(BR2_xtensa),y)
MICROPYTHON_CFLAGS = -DMICROPY_NLR_SETJMP=1
endif
# When building from a tarball we don't have some of the dependencies that are in
# the git repository as submodules
MICROPYTHON_MAKE_OPTS += \
MICROPY_PY_BTREE=0 \
MICROPY_PY_USSL=0 \
CROSS_COMPILE=$(TARGET_CROSS) \
CFLAGS_EXTRA=$(MICROPYTHON_CFLAGS) \
CWARN=
define MICROPYTHON_BUILD_CMDS
$(MICROPYTHON_MAKE_ENV) $(MAKE) -C $(@D)/mpy-cross
$(MICROPYTHON_MAKE_ENV) $(MAKE) -C $(@D)/ports/unix \
$(MICROPYTHON_MAKE_OPTS)
endef
define MICROPYTHON_INSTALL_TARGET_CMDS
$(MICROPYTHON_MAKE_ENV) $(MAKE) -C $(@D)/ports/unix \
$(MICROPYTHON_MAKE_OPTS) \
DESTDIR=$(TARGET_DIR) \
PREFIX=/usr \
install
endef
$(eval $(generic-package))