/
Makefile
136 lines (105 loc) · 3.64 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#
# 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:=2
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/micropython/micropython-lib.git
PKG_SOURCE_VERSION:=7128d423c2e7c0309ac17a1e6ba873b909b24fcc
PKG_SOURCE_DATE:=20230522
PKG_MIRROR_HASH:=1f094aac257d2094ee91b457164f845f6461df1cf1d0ed7ee556c98f273f5afb
PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
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
MP_VERSION:=1.20.0
MP_MPY_FILE_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-$(MP_VERSION)
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,,$(MP_MPY_FILE_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,$(MP_MPY_FILE_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))