Introduce esp-2019r2 toolchain for both ESP32 and ESP32s2 targets

Adds support of POSIX libs like regex.h

closes https://github.com/espressif/esp-idf/issues/2407
closes https://github.com/espressif/esp-idf/issues/4257
ref https://github.com/espressif/esp-idf/issues/271

Also there are some changes in the toolchain's changelog
This commit is contained in:
Anton Maklakov 2019-11-01 21:00:27 +07:00
parent 49193beb6d
commit c2db6a14c4
6 changed files with 54 additions and 57 deletions

View file

@ -26,10 +26,10 @@ Manual toolchain URLs
If not using ``install.sh`` or ``install.bat``, you can download the manual toolchain manually from here: If not using ``install.sh`` or ``install.bat``, you can download the manual toolchain manually from here:
- `Windows <https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-win32.zip>`_ - `Windows <https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-win32.zip>`_
- `macOS <https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-macos.tar.gz>`_ - `macOS <https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-macos.tar.gz>`_
- `Linux 64-bit x86 <https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-linux-amd64.tar.gz>`_ - `Linux 64-bit x86 <https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-linux-amd64.tar.gz>`_
- `Linux 32-bit x86 <https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-linux-i686.tar.gz>`_ - `Linux 32-bit x86 <https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-linux-i686.tar.gz>`_
If installing the toolchain manually, unpack it somewhere and add the ``bin`` subdirectory to your `PATH`. If installing the toolchain manually, unpack it somewhere and add the ``bin`` subdirectory to your `PATH`.

View file

@ -56,7 +56,8 @@ def main():
git clone https://github.com/espressif/crosstool-NG.git git clone https://github.com/espressif/crosstool-NG.git
cd crosstool-NG cd crosstool-NG
git checkout {} git checkout {}
./bootstrap && ./configure --enable-local && make install git submodule update --init
./bootstrap && ./configure --enable-local && make
""" """
platform_info = [ platform_info = [

View file

@ -72,7 +72,7 @@ class TestUsage(unittest.TestCase):
idf_tools.main(['list']) idf_tools.main(['list'])
output = output_stream.getvalue() output = output_stream.getvalue()
xtensa_esp32_elf_version = 'esp32-2019r1-8.2.0' xtensa_esp32_elf_version = 'esp-2019r2-8.2.0'
esp32ulp_version = '2.28.51.20170517' esp32ulp_version = '2.28.51.20170517'
self.assertIn('* xtensa-esp32-elf:', output) self.assertIn('* xtensa-esp32-elf:', output)

View file

@ -1,6 +1,6 @@
SUPPORTED_TOOLCHAIN_COMMIT_DESC = esp32-2019r1 SUPPORTED_TOOLCHAIN_COMMIT_DESC = esp-2019r2
SUPPORTED_TOOLCHAIN_GCC_VERSIONS = 8.2.0 SUPPORTED_TOOLCHAIN_GCC_VERSIONS = 8.2.0
CURRENT_TOOLCHAIN_COMMIT_DESC = esp32-2019r1 CURRENT_TOOLCHAIN_COMMIT_DESC = esp-2019r2
CURRENT_TOOLCHAIN_COMMIT_DESC_SHORT = esp32-2019r1 CURRENT_TOOLCHAIN_COMMIT_DESC_SHORT = esp-2019r2
CURRENT_TOOLCHAIN_GCC_VERSION = 8.2.0 CURRENT_TOOLCHAIN_GCC_VERSION = 8.2.0

View file

@ -17,41 +17,41 @@
"xtensa-esp32-elf-gcc", "xtensa-esp32-elf-gcc",
"--version" "--version"
], ],
"version_regex": "\\(crosstool-NG\\s+(?:crosstool-ng-)?([0-9a-z\\.\\-]+)\\)\\s*([0-9\\.]+)", "version_regex": "\\(crosstool-NG\\s+(?:crosstool-ng-)?([0-9a-zA-Z\\.\\-]+)\\)\\s*([0-9\\.]+)",
"version_regex_replace": "\\1-\\2", "version_regex_replace": "\\1-\\2",
"versions": [ "versions": [
{ {
"linux-amd64": { "linux-amd64": {
"sha256": "39db59b13f25e83e53c55f56979dbfce77b7f23126ad79de833509ad902d3f0a", "sha256": "e6d47c1dbd8c8cbfe37271e5e2aac53ee88c9e347ae937e22bf0c73f530efbdf",
"size": 63025996, "size": 85459985,
"url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-linux-amd64.tar.gz" "url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-linux-amd64.tar.gz"
}, },
"linux-armel": { "linux-armel": {
"sha256": "4ffd19839fcb241af3111da7c419448b80be3bd844da570e95f8f3d5a7eccf79", "sha256": "54a199c28f591da2466b21741911bc2ba77ddf82d3d2b66c6ce03c1a0c6835f0",
"size": 61164309, "size": 83647538,
"url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-linux-armel.tar.gz" "url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-linux-armel.tar.gz"
}, },
"linux-i686": { "linux-i686": {
"sha256": "85c02a4310bb97ac46e6f943b0de10e9e9572596c7d33d09b6f93f8bace3b784", "sha256": "36a9648c414dbd1c518c687ce5587d9f8eaa94324f45d92e9ec31a1433a04df8",
"size": 65016647, "size": 87438500,
"url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-linux-i686.tar.gz" "url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-linux-i686.tar.gz"
}, },
"macos": { "macos": {
"sha256": "adb256394c948ca424ec6ef1d9bee91baa99a304d8ace8e6701303da952eb007", "sha256": "dc62be8dd16c6d9d28d64e2b3f831fa208f3548c2ca73cdbcbdf68f474d59521",
"size": 69674700, "size": 92150978,
"url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-macos.tar.gz" "url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-macos.tar.gz"
}, },
"name": "esp32-2019r1-8.2.0", "name": "esp-2019r2-8.2.0",
"status": "recommended", "status": "recommended",
"win32": { "win32": {
"sha256": "ff00dbb02287219a61873c3b2649a50b94e80c82e607c336383f2838abbefbde", "sha256": "c9d5776a22516f0825a7c68d835ffacc2392f913136893b7646e1288937cc65e",
"size": 73245169, "size": 103850448,
"url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-win32.zip" "url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-win32.zip"
}, },
"win64": { "win64": {
"sha256": "ff00dbb02287219a61873c3b2649a50b94e80c82e607c336383f2838abbefbde", "sha256": "c9d5776a22516f0825a7c68d835ffacc2392f913136893b7646e1288937cc65e",
"size": 73245169, "size": 103850448,
"url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-win32.zip" "url": "https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-win32.zip"
} }
} }
] ]
@ -73,45 +73,41 @@
"xtensa-esp32s2-elf-gcc", "xtensa-esp32s2-elf-gcc",
"--version" "--version"
], ],
"version_regex": "\\(crosstool-NG\\s+(?:crosstool-ng-)?([0-9a-z\\.\\-]+)\\)\\s*([0-9\\.]+)", "version_regex": "\\(crosstool-NG\\s+(?:crosstool-ng-)?([0-9a-zA-Z\\.\\-]+)\\)\\s*([0-9\\.]+)",
"version_regex_replace": "\\1-\\2", "version_regex_replace": "\\1-\\2",
"versions": [ "versions": [
{ {
"linux-amd64": { "linux-amd64": {
"sha256": "014f13cbaef62b1b2edb42d6c49fc9e277005c30a4b48d8216568b76762101d2", "sha256": "59c6951e39937b9dfa53cca6d7707984ee39572071e56d11069f032d079477f5",
"size": 63081098, "size": 85762044,
"url": "https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-linux-amd64.tar.gz" "url": "https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-linux-amd64.tar.gz"
},
"linux-armel": {
"sha256": "92d80cf640db34913b91c1d8dae1632a7f5a740b5dcf39a3bea750b5dba05caa",
"size": 84036647,
"url": "https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-linux-armel.tar.gz"
}, },
"linux-i686": { "linux-i686": {
"sha256": "ce85ccde5b42f5dc31d41eca3111bf61a056a38ab6e43b70b76b53fed042709f", "sha256": "d31c39dce8e6faa36807152a8afa8fe79d491bc551ad27dff1fed2f31dd6a39e",
"size": 65070186, "size": 87755342,
"url": "https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-linux-i686.tar.gz" "url": "https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-linux-i686.tar.gz"
}, },
"macos": { "macos": {
"sha256": "e566b9f1288ef3bd89b08e9807e88c37f760d48e74b84eee9e9642bb5c0a0bbd", "sha256": "01f6d9b6d25a550975a16d2634a577a0c0f3c3c24db10edd1b714f9c192f490d",
"size": 69793197, "size": 92535775,
"url": "https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-macos.tar.gz" "url": "https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-macos.tar.gz"
}, },
"name": "esp32s2-dev-4-g3a626e9-8.2.0", "name": "esp-2019r2-8.2.0",
"status": "recommended"
},
{
"linux-armel": {
"sha256": "5a7eb91937f3d4f93d1830ca62d93db995cd7ce06b07e76d6b58d34f7b8acf50",
"size": 61288049,
"url": "https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-linux-armel.tar.gz"
},
"name": "esp32s2-dev-4-g3a626e93-8.2.0",
"status": "recommended", "status": "recommended",
"win32": { "win32": {
"sha256": "6ebdcd01de2c8c50ac38446dd4421bb44d320b30b85727c49db26a703ac2c381", "sha256": "f9b69732bd4e90d4558547f6a2d33f78433971e9e4f04968515cf460ea6de79a",
"size": 73352955, "size": 104254613,
"url": "https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-win32.zip" "url": "https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-win32.zip"
}, },
"win64": { "win64": {
"sha256": "6ebdcd01de2c8c50ac38446dd4421bb44d320b30b85727c49db26a703ac2c381", "sha256": "f9b69732bd4e90d4558547f6a2d33f78433971e9e4f04968515cf460ea6de79a",
"size": 73352955, "size": 104254613,
"url": "https://dl.espressif.com/dl/toolchains/preview/xtensa-esp32s2-elf-gcc8_2_0-esp32s2-dev-4-g3a626e-win32.zip" "url": "https://dl.espressif.com/dl/xtensa-esp32s2-elf-gcc8_2_0-esp-2019r2-win32.zip"
} }
} }
] ]

View file

@ -42,10 +42,10 @@ if [ -n "$IDF_PATH" ]; then
fi fi
# Automatically download precompiled toolchain, unpack at /opt/xtensa-esp32-elf/ # Automatically download precompiled toolchain, unpack at /opt/xtensa-esp32-elf/
TOOLCHAIN_ZIP=xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-win32.zip TOOLCHAIN_ZIP=xtensa-esp32-elf-gcc8_2_0-esp-2019r2-win32.zip
echo "Downloading precompiled toolchain ${TOOLCHAIN_ZIP}..." echo "Downloading precompiled toolchain ${TOOLCHAIN_ZIP}..."
cd ~ cd ~
curl -LO --retry 10 http://dl.espressif.com/dl/${TOOLCHAIN_ZIP} curl -LO --retry 10 https://dl.espressif.com/dl/${TOOLCHAIN_ZIP}
mkdir -p /opt mkdir -p /opt
cd /opt cd /opt
rm -rf /opt/xtensa-esp32-elf # for upgrades rm -rf /opt/xtensa-esp32-elf # for upgrades