Green Hills MULTI

版本 3.3 中加入。

版本 3.15 中加入: Linux 支持。

生成 Green Hills MULTI 项目文件 (实验性,正在进行中)。

构建系统具有预定的构建配置设置,可以通过 CMAKE_BUILD_TYPE 变量进行控制。

平台选择

版本 3.13 中加入。

变量 GHS_PRIMARY_TARGET 可用于选择目标平台。

在项目文件中设置 primaryTarget 条目。

例如

  • cmake -G "Green Hills MULTI" -D GHS_PRIMARY_TARGET=ppc_integrity.tgt

否则,primaryTarget 将由 CMAKE_GENERATOR_PLATFORMGHS_TARGET_PLATFORM 的值组成。默认为 arm_integrity.tgt 的值

  • 可以设置 CMAKE_GENERATOR_PLATFORM 变量,可能通过 cmake -A 选项。

    常用的值包括 armppc86 等。
  • 可以设置变量 GHS_TARGET_PLATFORM,可能通过 cmake -D 选项。

    默认为 integrity
    常用的值是 integritythreadxuvelosityvelosityvxworksstandalone

例如

  • cmake -G "Green Hills MULTI" 用于 arm_integrity.tgt

  • cmake -G "Green Hills MULTI" -A 86 用于 86_integrity.tgt

  • cmake -G "Green Hills MULTI" -D GHS_TARGET_PLATFORM=standalone 用于 arm_standalone.tgt

  • cmake -G "Green Hills MULTI" -A ppc -D GHS_TARGET_PLATFORM=standalone 用于 ppc_standalone.tgt

工具链选择

版本 3.13 中加入。

生成器搜索最新的编译器,或者可以指定要使用的位置。GHS_TOOLSET_ROOT 是检查最新编译器的目录。

  • 可以设置 CMAKE_GENERATOR_TOOLSET 选项,可能通过 cmake -T 选项,以指定工具链的位置。绝对路径和相对路径均有效。路径相对于 GHS_TOOLSET_ROOT

  • 可以设置变量 GHS_TOOLSET_ROOT,可能通过 cmake -D 选项。

    工具链搜索和相对路径的根路径。
    在 Windows 中默认为 C:/ghs,在 Linux 中默认为 /usr/ghs

例如,设置特定的编译器

  • cmake -G "Green Hills MULTI" -T comp_201754 用于 /usr/ghs/comp_201754

  • cmake -G "Green Hills MULTI" -T comp_201754 -D GHS_TOOLSET_ROOT=/opt/ghs 用于 /opt/ghs/comp_201754

  • cmake -G "Green Hills MULTI" -T /usr/ghs/comp_201554

  • cmake -G "Green Hills MULTI" -T C:/ghs/comp_201754

例如,搜索最新的编译器

  • cmake -G "Green Hills MULTI" 用于搜索 /usr/ghs

  • cmake -G "Green Hills MULTI -D GHS_TOOLSET_ROOT=/opt/ghs" 用于搜索 /opt/ghs

注意

CMAKE_GENERATOR_TOOLSET 应该使用 CMake 风格的路径。

OS 和 BSP 选择

版本 3.3 中加入。

某些目标平台(如 Integrity)需要操作系统。RTOS 目录路径可以使用 GHS_OS_DIR 显式设置。否则,将在 GHS_OS_ROOT 中搜索最新的 Integrity RTOS。

如果目标平台(如 Integrity)需要 BSP 名称,则可以通过 GHS_BSP_NAME 变量进行设置。

  • GHS_OS_DIRGHS_OS_DIR_OPTION

    在项目文件中设置 -os_dir 条目。
    GHS_OS_DIR_OPTION 默认值为 -os_dir

    版本 3.15 中加入: GHS_OS_DIR_OPTION 变量。

    例如

    • cmake -G "Green Hills MULTI" -D GHS_OS_DIR=/usr/ghs/int1144

  • GHS_OS_ROOT

    RTOS 搜索的根路径。
    在 Windows 中默认为 C:/ghs,在 Linux 中默认为 /usr/ghs

    例如

    • cmake -G "Green Hills MULTI" -D GHS_OS_ROOT=/opt/ghs

  • GHS_BSP_NAME

    在项目文件中设置 -bsp 条目。
    对于 integrity 平台,默认为 sim<arch>

    例如

    • cmake -G "Green Hills MULTI" 用于 arm_integrity.tgt 上的 simarm

    • cmake -G "Green Hills MULTI" -A 86 用于 86_integrity.tgt 上的 sim86

    • cmake -G "Green Hills MULTI" -A ppc -D GHS_BSP_NAME=sim800 用于 ppc_integrity.tgt 上的 sim800

    • cmake -G "Green Hills MULTI" -D GHS_PRIMARY_TARGET=ppc_integrity.tgt -D GHS_BSP_NAME=fsl-t1040 用于 ppc_integrity.tgt 上的 fsl-t1040

目标属性

版本 3.14 中加入。

以下属性可用

MULTI 项目变量

版本 3.3 中加入。

通过使用以下变量,可以添加自定义文件和宏

  • GHS_CUSTOMIZATION - 自定义文件的 CMake 路径名。

  • GHS_GPJ_MACROS - 宏的 CMake 列表。

注意

截至 CMake 4.0.0,此生成器被认为是实验性的,并且仍在开发中。随着生成器的成熟,未来版本的 CMake 可能会进行破坏性更改。