Update copy_marlin_variant_to_framework.py

This commit is contained in:
Scott Lahteine 2020-08-21 22:50:45 -05:00
parent 070412a6a5
commit a5dc42c47c

View file

@ -1,7 +1,19 @@
import os,shutil import os,shutil
from SCons.Script import DefaultEnvironment from SCons.Script import DefaultEnvironment
from platformio import util from platformio import util
from platformio.managers.package import PackageManager try:
# PIO < 4.4
from platformio.managers.package import PackageManager
except ImportError:
# PIO >= 4.4
from platformio.package.meta import PackageSpec as PackageManager
def parse_pkg_uri(spec):
if PackageManager.__name__ == 'PackageSpec':
return PackageManager(spec).name
else:
name, _, _ = PackageManager.parse_pkg_uri(spec)
return name
def copytree(src, dst, symlinks=False, ignore=None): def copytree(src, dst, symlinks=False, ignore=None):
for item in os.listdir(src): for item in os.listdir(src):
@ -26,7 +38,7 @@ framewords = {
if len(platform_packages) == 0: if len(platform_packages) == 0:
platform_name = framewords[platform.__class__.__name__] platform_name = framewords[platform.__class__.__name__]
else: else:
platform_name, _, _ = PackageManager.parse_pkg_uri(platform_packages[0]) platform_name = parse_pkg_uri(platform_packages[0])
FRAMEWORK_DIR = platform.get_package_dir(platform_name) FRAMEWORK_DIR = platform.get_package_dir(platform_name)
assert os.path.isdir(FRAMEWORK_DIR) assert os.path.isdir(FRAMEWORK_DIR)