mirror of
https://github.com/openwrt/packages.git
synced 2025-02-24 09:25:07 +00:00
Bump micropython to 1.23.0. This is done to fix support for MbedTLS 3.0 Lots changed between 1.21 and 1.23 for the library side. Mainly the barkeley-db library was moved to micropython own fork and the cdef patch required lots of changes. (we have to manually include a copy of cdef.h as it was dropped by them) Also a new patch is required to mute some compilarion error that are false-positive. (variable not initialized but that are ALWAYS initialized) Also refresh the extmod patch with new files included. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
125 lines
3.2 KiB
Makefile
125 lines
3.2 KiB
Makefile
#
|
|
# Copyright (C) 2008-2015 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=micropython
|
|
PKG_VERSION:=1.23.0
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
|
PKG_SOURCE_URL:=https://github.com/micropython/micropython/releases/download/v$(PKG_VERSION)
|
|
PKG_HASH:=0ab283c2fc98d466c1ff26692bee46abaeeab55d488a36fc3cb6372cb8fb390d
|
|
|
|
PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
|
|
PKG_LICENSE:=MIT
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
PKG_CPE_ID:=cpe:/a:micropython:micropython
|
|
|
|
PKG_BUILD_DEPENDS:=python3/host
|
|
PKG_BUILD_FLAGS:=no-mips16 no-mold
|
|
PKG_BUILD_PARALLEL:=1
|
|
|
|
include $(INCLUDE_DIR)/host-build.mk
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/micropython/Default
|
|
SUBMENU:=Python
|
|
SECTION:=lang
|
|
CATEGORY:=Languages
|
|
TITLE:=MicroPython
|
|
URL:=https://micropython.org
|
|
DEPENDS:=+libffi
|
|
PROVIDES:=micropython
|
|
endef
|
|
|
|
define Package/micropython-mbedtls
|
|
$(call Package/micropython/Default)
|
|
TITLE+= (mbedtls)
|
|
DEPENDS+= +PACKAGE_micropython-mbedtls:libmbedtls
|
|
CONFLICTS:=micropython-nossl
|
|
VARIANT:=mbedtls
|
|
DEFAULT_VARIANT:=1
|
|
endef
|
|
|
|
define Package/micropython-nossl
|
|
$(call Package/micropython/Default)
|
|
TITLE+= (nossl)
|
|
VARIANT:=nossl
|
|
endef
|
|
|
|
define Package/micropython/Default/description
|
|
MicroPython is a lean and efficient implementation of the Python 3
|
|
programming language that includes a small subset of the Python standard
|
|
library and is optimised to run on microcontrollers and in constrained
|
|
environments.
|
|
endef
|
|
|
|
define Package/micropython-mbedtls/description
|
|
$(call Package/micropython/Default/description)
|
|
|
|
This version uses the Mbed TLS library.
|
|
endef
|
|
|
|
define Package/micropython-nossl/description
|
|
$(call Package/micropython/Default/description)
|
|
|
|
This version is built without TLS and mip.
|
|
endef
|
|
|
|
MAKE_FLAGS += BUILD_VERBOSE=1 STRIP=
|
|
|
|
ifneq ($(CONFIG_DEBUG),)
|
|
MAKE_FLAGS += DEBUG=1
|
|
endif
|
|
|
|
ifeq ($(BUILD_VARIANT),nossl)
|
|
MAKE_FLAGS += MICROPY_PY_SSL=0 FROZEN_MANIFEST=variants/standard/manifest-nossl.py
|
|
endif
|
|
|
|
# Work around "variable might be clobbered" warning leading to build error
|
|
# https://github.com/micropython/micropython/issues/12838
|
|
ifeq ($(ARCH),riscv64)
|
|
MAKE_FLAGS += CFLAGS_EXTRA=-Wno-error=clobbered
|
|
endif
|
|
|
|
MAKE_PATH = ports/unix
|
|
|
|
define Build/Configure
|
|
+$(HOST_MAKE_VARS) \
|
|
$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/mpy-cross \
|
|
$(HOST_MAKE_FLAGS) BUILD_VERBOSE=1
|
|
endef
|
|
|
|
define Build/InstallDev
|
|
$(INSTALL_DIR) $(2)/lib/micropython/mpy-cross
|
|
$(CP) \
|
|
$(PKG_BUILD_DIR)/mpy-cross/mpy_cross \
|
|
$(2)/lib/micropython/mpy-cross/
|
|
|
|
$(INSTALL_DIR) $(2)/lib/micropython/mpy-cross/build
|
|
$(INSTALL_BIN) \
|
|
$(PKG_BUILD_DIR)/mpy-cross/build/mpy-cross \
|
|
$(2)/lib/micropython/mpy-cross/build/
|
|
|
|
$(INSTALL_DIR) $(2)/lib/micropython/tools
|
|
$(INSTALL_DATA) \
|
|
$(PKG_BUILD_DIR)/tools/manifestfile.py \
|
|
$(2)/lib/micropython/tools/
|
|
endef
|
|
|
|
define Package/micropython/Default/install
|
|
$(INSTALL_DIR) $(1)/usr/bin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/ports/unix/build-standard/micropython $(1)/usr/bin/
|
|
endef
|
|
|
|
Package/micropython-mbedtls/install = $(Package/micropython/Default/install)
|
|
Package/micropython-nossl/install = $(Package/micropython/Default/install)
|
|
|
|
$(eval $(call BuildPackage,micropython-mbedtls))
|
|
$(eval $(call BuildPackage,micropython-nossl))
|