ASR_BASE

Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
diff --git a/external/subpack/lang/python/micropython/patches/010-cdefs.patch b/external/subpack/lang/python/micropython/patches/010-cdefs.patch
new file mode 100644
index 0000000..897c880
--- /dev/null
+++ b/external/subpack/lang/python/micropython/patches/010-cdefs.patch
@@ -0,0 +1,64 @@
+--- a/lib/berkeley-db-1.xx/PORT/bsd.4.4/include/db.h
++++ b/lib/berkeley-db-1.xx/PORT/bsd.4.4/include/db.h
+@@ -37,7 +37,7 @@
+ #define	_DB_H_
+ 
+ #include <sys/types.h>
+-#include <sys/cdefs.h>
++#include "cdefs.h"
+ 
+ #include <limits.h>
+ 
+--- a/lib/berkeley-db-1.xx/PORT/clib/memmove.c
++++ b/lib/berkeley-db-1.xx/PORT/clib/memmove.c
+@@ -38,7 +38,7 @@
+ static char sccsid[] = "@(#)bcopy.c	8.1 (Berkeley) 6/4/93";
+ #endif /* LIBC_SCCS and not lint */
+ 
+-#include <sys/cdefs.h>
++#include "cdefs.h"
+ #include <string.h>
+ 
+ /*
+--- a/lib/berkeley-db-1.xx/PORT/clib/snprintf.c
++++ b/lib/berkeley-db-1.xx/PORT/clib/snprintf.c
+@@ -1,5 +1,5 @@
+ #include <sys/types.h>
+-#include <sys/cdefs.h>
++#include "cdefs.h"
+ 
+ #include <compat.h>
+ 
+--- a/lib/berkeley-db-1.xx/PORT/hpux.9.01/local/hp_siglist.c
++++ b/lib/berkeley-db-1.xx/PORT/hpux.9.01/local/hp_siglist.c
+@@ -2,7 +2,7 @@
+  * Derived from:
+  * static char sccsid[] = "@(#)siglist.c	8.1 (Berkeley) 6/4/93";
+  */
+-#include <sys/cdefs.h>
++#include "cdefs.h"
+ 
+ #include <signal.h>
+ 
+--- a/lib/berkeley-db-1.xx/PORT/ultrix.4.2/include/db.h
++++ b/lib/berkeley-db-1.xx/PORT/ultrix.4.2/include/db.h
+@@ -37,7 +37,7 @@
+ #define	_DB_H_
+ 
+ #include <sys/types.h>
+-#include <sys/cdefs.h>
++#include "cdefs.h"
+ 
+ #include <limits.h>
+ 
+--- a/lib/berkeley-db-1.xx/include/db.h
++++ b/lib/berkeley-db-1.xx/include/db.h
+@@ -37,7 +37,7 @@
+ #define	_DB_H_
+ 
+ #include <sys/types.h>
+-#include <sys/cdefs.h>
++#include "cdefs.h"
+ 
+ #include <limits.h>
+ 
diff --git a/external/subpack/lang/python/micropython/patches/030-target-no-darwin.patch b/external/subpack/lang/python/micropython/patches/030-target-no-darwin.patch
new file mode 100644
index 0000000..9dc4c59
--- /dev/null
+++ b/external/subpack/lang/python/micropython/patches/030-target-no-darwin.patch
@@ -0,0 +1,11 @@
+--- a/ports/unix/Makefile
++++ b/ports/unix/Makefile
+@@ -31,7 +31,7 @@ QSTR_DEFS += qstrdefsport.h
+ QSTR_GLOBAL_DEPENDENCIES += $(VARIANT_DIR)/mpconfigvariant.h
+ 
+ # OS name, for simple autoconfig
+-UNAME_S := $(shell uname -s)
++UNAME_S := Linux
+ 
+ # include py core make definitions
+ include $(TOP)/py/py.mk
diff --git a/external/subpack/lang/python/micropython/patches/040-extmod-use-external-mbedtls.patch b/external/subpack/lang/python/micropython/patches/040-extmod-use-external-mbedtls.patch
new file mode 100644
index 0000000..3399412
--- /dev/null
+++ b/external/subpack/lang/python/micropython/patches/040-extmod-use-external-mbedtls.patch
@@ -0,0 +1,99 @@
+From 9717338f1917fa5db63fe7c9758639417ab06f61 Mon Sep 17 00:00:00 2001
+From: yangfl <yangfl@users.noreply.github.com>
+Date: Mon, 4 Jan 2021 23:09:41 +0800
+Subject: [PATCH 06/10] extmod: Use system mbedtls
+
+---
+ extmod/extmod.mk | 77 ++----------------------------------------------
+ 1 file changed, 2 insertions(+), 75 deletions(-)
+
+--- a/extmod/extmod.mk
++++ b/extmod/extmod.mk
+@@ -131,85 +131,8 @@ SRC_THIRDPARTY_C += $(addprefix $(AXTLS_
+ 	crypto/sha1.c \
+ 	)
+ else ifeq ($(MICROPY_SSL_MBEDTLS),1)
+-MBEDTLS_DIR = lib/mbedtls
+-MBEDTLS_CONFIG_FILE ?= \"mbedtls/mbedtls_config.h\"
+-GIT_SUBMODULES += $(MBEDTLS_DIR)
+-CFLAGS_EXTMOD += -DMBEDTLS_CONFIG_FILE=$(MBEDTLS_CONFIG_FILE)
+-CFLAGS_EXTMOD += -DMICROPY_SSL_MBEDTLS=1 -I$(TOP)/$(MBEDTLS_DIR)/include
+-SRC_THIRDPARTY_C += lib/mbedtls_errors/mp_mbedtls_errors.c
+-SRC_THIRDPARTY_C += $(addprefix $(MBEDTLS_DIR)/library/,\
+-	aes.c \
+-	aesni.c \
+-	arc4.c \
+-	asn1parse.c \
+-	asn1write.c \
+-	base64.c \
+-	bignum.c \
+-	blowfish.c \
+-	camellia.c \
+-	ccm.c \
+-	certs.c \
+-	chacha20.c \
+-	chachapoly.c \
+-	cipher.c \
+-	cipher_wrap.c \
+-	cmac.c \
+-	ctr_drbg.c \
+-	debug.c \
+-	des.c \
+-	dhm.c \
+-	ecdh.c \
+-	ecdsa.c \
+-	ecjpake.c \
+-	ecp.c \
+-	ecp_curves.c \
+-	entropy.c \
+-	entropy_poll.c \
+-	gcm.c \
+-	havege.c \
+-	hmac_drbg.c \
+-	md2.c \
+-	md4.c \
+-	md5.c \
+-	md.c \
+-	oid.c \
+-	padlock.c \
+-	pem.c \
+-	pk.c \
+-	pkcs11.c \
+-	pkcs12.c \
+-	pkcs5.c \
+-	pkparse.c \
+-	pk_wrap.c \
+-	pkwrite.c \
+-	platform.c \
+-	platform_util.c \
+-	poly1305.c \
+-	ripemd160.c \
+-	rsa.c \
+-	rsa_internal.c \
+-	sha1.c \
+-	sha256.c \
+-	sha512.c \
+-	ssl_cache.c \
+-	ssl_ciphersuites.c \
+-	ssl_cli.c \
+-	ssl_cookie.c \
+-	ssl_srv.c \
+-	ssl_msg.c \
+-	ssl_ticket.c \
+-	ssl_tls.c \
+-	timing.c \
+-	constant_time.c \
+-	x509.c \
+-	x509_create.c \
+-	x509_crl.c \
+-	x509_crt.c \
+-	x509_csr.c \
+-	x509write_crt.c \
+-	x509write_csr.c \
+-	xtea.c \
+-	)
++CFLAGS_EXTMOD += -DMICROPY_SSL_MBEDTLS=1
++LDFLAGS_MOD += -lmbedx509 -lmbedtls -lmbedcrypto
+ endif
+ endif
+