# # 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-lib PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/micropython/micropython-lib.git PKG_SOURCE_VERSION:=d8e163bb5f3ef45e71e145c27bc4f207beaad70f PKG_SOURCE_DATE:=20231031 PKG_MIRROR_HASH:=311651a719ae645d3e40c3c8ebf706fa2e964ac1455d84bee73606ec6d7c13a2 PKG_MAINTAINER:=Jeffery To PKG_LICENSE:=MIT Python-2.0.1 PKG_LICENSE_FILES:=LICENSE PKG_BUILD_DEPENDS:=python3/host PKG_BUILD_PARALLEL:=1 # keep in sync with micropython (MPY_VERSION in py/persistentcode.h) MICROPYTHON_MPY_VERSION:=6 include $(INCLUDE_DIR)/package.mk define Package/micropython-lib/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=MicroPython package repository URL:=https://github.com/micropython/micropython-lib endef define Package/micropython-lib $(call Package/micropython-lib/Default) DEPENDS:=+micropython endef define Package/micropython-lib-src $(call Package/micropython-lib/Default) TITLE+= (sources) endef define Package/micropython-lib-unix $(call Package/micropython-lib/Default) TITLE+= - Unix port packages DEPENDS:=+micropython +libpcre2 +librt +libsqlite3 endef define Package/micropython-lib-unix-src $(call Package/micropython-lib/Default) TITLE+= - Unix port packages (sources) endef define Package/micropython-lib/Default/description This is a repository of packages designed to be useful for writing MicroPython applications. endef define Package/micropython-lib/description $(call Package/micropython-lib/Default/description) This contains packages common to all MicroPython ports. endef define Package/micropython-lib-src/description $(call Package/micropython-lib/Default/description) This contains source files for packages common to all MicroPython ports. endef define Package/micropython-lib-unix/description $(call Package/micropython-lib/Default/description) This contains packages specific to the MicroPython Unix port. endef define Package/micropython-lib-unix-src/description $(call Package/micropython-lib/Default/description) This contains source files for packages specific to the MicroPython Unix port. endef MP_INSTALLDEV_PATH:=$(STAGING_DIR)/host/lib/micropython define MicroPythonLib/Compile cd "$(PKG_BUILD_DIR)" && python3 tools/build.py \ --hash-prefix 64 \ --micropython "$(MP_INSTALLDEV_PATH)" \ --mpy-cross "$(MP_INSTALLDEV_PATH)/mpy-cross/build/mpy-cross" \ --output "$(PKG_BUILD_DIR)/$(strip $(1))" \ $(2) endef define MicroPythonLib/Install python3 install.py \ --input "$(PKG_BUILD_DIR)/$(strip $(1))" \ --output "$(strip $(3))" \ --version "$(strip $(2))" endef define Build/Compile $(call MicroPythonLib/Compile) $(call MicroPythonLib/Compile,unix-ffi-index,--unix-ffi) endef define Package/micropython-lib/install $(call MicroPythonLib/Install,,$(MICROPYTHON_MPY_VERSION),$(1)/usr/lib/micropython) endef define Package/micropython-lib-src/install $(call MicroPythonLib/Install,,py,$(1)/usr/lib/micropython) endef define Package/micropython-lib-unix/install $(call MicroPythonLib/Install,unix-ffi-index,$(MICROPYTHON_MPY_VERSION),$(1)/usr/lib/micropython/unix) $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) ./files/micropython-unix $(1)/usr/bin/ endef define Package/micropython-lib-unix-src/install $(call MicroPythonLib/Install,unix-ffi-index,py,$(1)/usr/lib/micropython/unix) endef $(eval $(call BuildPackage,micropython-lib)) $(eval $(call BuildPackage,micropython-lib-src)) $(eval $(call BuildPackage,micropython-lib-unix)) $(eval $(call BuildPackage,micropython-lib-unix-src))