Поддержка платформ
Target Triples
DCR нормализует target triple через platform_triple::normalize_triple(). Если задано имя платформы (short name), оно раскрывается в triple.
Linux
target/<arch>-unknown-linux-gnu/<profile>/
Поддержка архитектур: x86_64, aarch64.
Тип артефакта определяется по target:
- Linux: ELF
- Расширения:
.soдля sharedlib,.aдля staticlib
macOS
target/<profile>/
Поддержка архитектур: x86_64, aarch64.
Особенности:
targetбез triple (используется хост).dylibдля sharedlib,.aдля staticlib-C split-debuginfo=packedдля macOS
Windows
target/<profile>/
Поддержка архитектур: x86_64, aarch64.
Расширения:
- Исполняемый:
.exe - Статическая библиотека:
.lib - Динамическая библиотека:
.dll - UEFI:
.efi
BSD
target/<arch>-unknown-<os>/<profile>/
Поддерживаемые системы: freebsd, openbsd, netbsd.
Архитектуры: определяются хостом.
Определение хоста
platform_triple::host_triple() возвращает тройку текущей системы. Используется как fallback, если target не указан.