在cmake中ALIAS有什么意义?

时间:2018-05-09 19:27:47

标签: cmake

在我看到的很多教程和cmake示例中,建议您在名称中提供::个别名:

add_library(foo a.cxx b.cxx c.xx)
add_library(N::foo ALIAS foo)

做这样的事情有什么意义?是否存在使用N::foo随后解决直接使用foo可能存在的问题的情况?为什么这被认为是好习惯?

1 个答案:

答案 0 :(得分:0)

引用有关https://developer.android.com/reference/android/support/v4/content/LocalBroadcastManager的文档:

  

ALIAS目标的主要用例是例如单元测试   随附库的可执行文件,可以是库的一部分   buildystem或根据用户配置单独构建。

add_library(lib1 lib1.cpp)
install(TARGETS lib1 EXPORT lib1Export ${dest_args})
install(EXPORT lib1Export NAMESPACE Upstream:: ${other_args})

add_library(Upstream::lib1 ALIAS lib1)

换句话说,作为不同计算机系统的别名,它使名称技术性降低,人性化可读/用户友好。