Merge branch 'hotfix/v3.5.4' into develop

* hotfix/v3.5.4:
  Handle "architectures" data from "library.properties" manifest in `lib_compat_mode = strict`
This commit is contained in:
Ivan Kravets
2018-06-12 13:47:29 +03:00
3 changed files with 25 additions and 1 deletions

View File

@ -20,6 +20,8 @@ PlatformIO 3.0
* Don't export ``CPPPATH`` of project dependent libraries to frameworks
(`issue #1665 <https://github.com/platformio/platformio-core/issues/1665>`_)
* Handle "architectures" data from "library.properties" manifest in
`lib_compat_mode = strict <http://docs.platformio.org/en/latest/librarymanager/ldf.html#compatibility-mode>`__
* Fixed issue with invalid LD script if path contains space
3.5.3 (2018-06-01)

2
docs

Submodule docs updated: 63bb3e4420...83d669ae03

View File

@ -501,6 +501,28 @@ class ArduinoLibBuilder(LibBuilderBase):
def is_frameworks_compatible(self, frameworks):
return util.items_in_list(frameworks, ["arduino", "energia"])
def is_platforms_compatible(self, platforms):
platforms_map = {
"avr": "atmelavr",
"sam": "atmelsam",
"samd": "atmelsam",
"esp8266": "espressif8266",
"esp32": "espressif32",
"arc32": "intel_arc32",
"stm32": "ststm32"
}
items = []
for arch in self._manifest.get("architectures", "").split(","):
arch = arch.strip()
if arch == "*":
items = "*"
break
if arch in platforms_map:
items.append(platforms_map[arch])
if not items:
return LibBuilderBase.is_platforms_compatible(self, platforms)
return util.items_in_list(platforms, items)
class MbedLibBuilder(LibBuilderBase):