get_directory_property(vars DIRECTORY test VARIABLES) message("# Get test DIRECTORY property VARIABLES: ${vars}") 运行cmake .,能正常获取到属性VARIABLES。
get_property(dirs DIRECTORY ${CMAKE_CURRENT_SRC_DIR} PROPERTY INCLUDE_DIRECTORIES) message("# Get current directory property INCLUDE_DIRECTORIES after include 'test': ${dirs}") 运行cmake .输出结果: # Get current directory property INCLUDE_DIRECTORIES: # Get current directory property INCLUDE_DIRECT...
target_link_directories(main PRIVATE /private/dir INTERFACE /interface/dir) get_target_property(result main LINK_DIRECTORIES) message("result: ${result}") # result: /private/dir get_target_property(result main INTERFACE_LINK_DIRECTORIES) message("result: ${result}") # result: /interface/dir ta...
get_directory_property(<variable> [DIRECTORY ] <prop-name>) 在指定的变量中存储路径(directory)域中的某种属性。如果该属性没有被定义,将会返回空字符串。DIRECTORY参数指定了要取出的属性值的另一个路径。指定的路径必须已经被CMake遍历过了。 get_directory_property(<variable> [DIRECTORY ] DEFINITION ) 该命...
get_cmake_property(VAR property) 从指定的CMake实例中获取属性。属性的值存储在变量VAR中。如果属性不存在,CMake会报错。一些会被支持的属性包括:VATIABLES,COMMANDS,MACROS以及COMPONENTS。 CMD#38 :get_directory_property获取DIRECTORY域中的某种属性。
# 设置全局属性 GLOBAL_PROPERTY_TEST 为 ONset_property(GLOBAL PROPERTY GLOBAL_PROPERTY_TESTON) 获取全局属性: get_property(<variable> <GLOBAL | DIRECTORY [] |TARGET<target> | SOURCE [DIRECTORY | TARGET_DIRECTORY <target>] |INSTALL<file> |TEST<test> | CACHE <entry> | VARIABLE...
# get_property(dirs DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES) # message(">>> include_dirs=${dirs}") # Set output file set(EXECUTABLE ${target_name}.elf CACHE INTERNAL "TARGET") # Obtain user files and build them file(GLOB PRJ_MAIN_SRCS "${PRJ_SRC_DIR}/*...
GET_TARGET_PROPERTY(OUTPUT_VALUE hello_static OUTPUT_NAME) MESSAGE(STATUS "This is the hello_static OUTPUT_NAME:"${OUTPUT_VALUE}) 如果没有这个属性定义,则返回NOTFOUND。 构建结果会发现,libhello.a 已经构建完成,位于 build/lib 目录中,但是libhello.so 去消失了。这个问题的原因是:cmake 在构建一个...
ExternalProject_Get_Property()是获取工程的一些属性。 add_dependencies增加依赖编译项目 五、总结 这些变量和指令不好记,怎么快速记忆。 全为大写 大小写混用 规则指令add_xxxxxx等 token之间没有逗号,用空格隔断两个token 5.1 cmake开启详细信息调试模式
PROPERTY <name> [value1 [value2 ...]]) 为作用域里的0个或多个对象设置一种属性。第一个参数决定了属性可以影响到的作用域。他必须是下述值之一:GLOBAL,全局作用域,唯一,并且不接受名字。DIRECTORY,路径作用域,默认为当前路径,但是也可以用全路径或相对路径指定其他值。TARGET,目标作用域,可以命名0个或多个...