Added TargetFamily in TDF scripts

This commit is contained in:
Nav
2023-12-13 21:00:37 +00:00
parent e2ed0002bd
commit dc09fe77a8
2 changed files with 18 additions and 0 deletions

View File

@@ -4,6 +4,7 @@ namespace Bloom\BuildScripts\TargetDescriptionFiles;
use Exception;
use SimpleXMLElement;
require_once __DIR__ . "/TargetFamily.php";
require_once __DIR__ . "/Variant.php";
require_once __DIR__ . "/AddressSpace.php";
require_once __DIR__ . "/PropertyGroup.php";
@@ -20,6 +21,7 @@ class TargetDescriptionFile
public ?SimpleXMLElement $xml = null;
public ?string $targetName = null;
public ?TargetFamily $targetFamily = null;
public ?string $configurationValue = null;
public ?string $targetArchitecture = null;
@@ -75,6 +77,10 @@ class TargetDescriptionFile
$this->configurationValue = strtolower($device['name']);
}
if (!empty($this->deviceAttributesByName['family'])) {
$this->targetFamily = TargetFamily::tryFrom($device['family']);
}
if (!empty($this->deviceAttributesByName['architecture'])) {
$this->targetArchitecture = stristr($device['architecture'], 'avr') !== false
? self::ARCHITECTURE_AVR8 : $device['architecture'];
@@ -486,6 +492,10 @@ class TargetDescriptionFile
$failures[] = 'Target name cannot contain whitespaces';
}
if (empty($this->targetFamily)) {
$failures[] = 'Missing/invalid target family';
}
if (empty($this->targetArchitecture)) {
$failures[] = 'Target architecture not found';
}