AIX_SHARED_LIBRARY_ARCHIVE

在 3.31 版本中加入。

在 AIX 上,启用或禁用为 SHARED 库目标创建共享库归档文件

  • 如果启用,共享对象 .so 文件将被放置在归档 .a 文件中。这是 AIX 上的首选约定。

    归档文件中的共享对象名称编码了来自 SOVERSION 目标属性(如果已设置)的版本信息;否则,编码来自 VERSION 目标属性(如果已设置)的版本信息。

  • 如果禁用,则会生成一个普通的共享对象 .so 文件。这与其他 UNIX 平台一致。

如果变量 CMAKE_AIX_SHARED_LIBRARY_ARCHIVE 在通过 add_library() 创建非导入的 SHARED 库目标时设置,则此属性默认为该变量的值。导入的目标如果导入 AIX 共享库归档文件,则必须显式启用 AIX_SHARED_LIBRARY_ARCHIVE

在 4.0 版本中更改:对于非导入的目标,如果未设置此属性,则默认值为启用。请参阅策略 CMP0182

在 CMake 3.31 中,策略 CMP0182 不存在,因此默认值为禁用

在 CMake 3.30 及更低版本中,AIX_SHARED_LIBRARY_ARCHIVE 不存在,因此默认值为禁用