From c0a9ae5c70741e622762c4ff02cf6f8590602a60 Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Sun, 23 Jun 2019 21:21:34 +0300 Subject: [PATCH] Better handling of library.properties "architectures" meta data --- platformio/builder/tools/piolib.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/platformio/builder/tools/piolib.py b/platformio/builder/tools/piolib.py index 013038d9..9d8f5ecc 100644 --- a/platformio/builder/tools/piolib.py +++ b/platformio/builder/tools/piolib.py @@ -507,22 +507,23 @@ class ArduinoLibBuilder(LibBuilderBase): def is_platforms_compatible(self, platforms): platforms_map = { - "avr": "atmelavr", - "sam": "atmelsam", - "samd": "atmelsam", - "esp8266": "espressif8266", - "esp32": "espressif32", - "arc32": "intel_arc32", - "stm32": "ststm32" + "avr": ["atmelavr"], + "sam": ["atmelsam"], + "samd": ["atmelsam"], + "esp8266": ["espressif8266"], + "esp32": ["espressif32"], + "arc32": ["intel_arc32"], + "stm32": ["ststm32"], + "nrf5": ["nordicnrf51", "nordicnrf52"] } items = [] for arch in self._manifest.get("architectures", "").split(","): - arch = arch.strip() + arch = arch.strip().lower() if arch == "*": items = "*" break if arch in platforms_map: - items.append(platforms_map[arch]) + items.extend(platforms_map[arch]) if not items: return LibBuilderBase.is_platforms_compatible(self, platforms) return util.items_in_list(platforms, items)