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 风格的路径。

操作系统和 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.1.0 起,此生成器被认为是实验性的,并且仍在开发中。随着生成器的成熟,未来的 CMake 版本可能会进行破坏性更改。