我正在生成一个包含几个项目 (目前有 4 个,最终将增加到 10-20 个) 的 VS2010 解决方案。我只想让其中一个项目进行构建;其余的项目应该被禁用。我可以通过进入配置管理器并取消勾选我不想要的项目来手动完成此操作,但显然这不是一个好的解决方案。
是否有什么我可以添加到 CMakeLists.txt 文件中的项目中,以使其执行此操作?在文档、谷歌和 Stack Overflow 上搜索都没有找到相关信息。
更新:以下是我的根 CMakeLists.txt,如果有帮助的话:
(bam.bat 的部分是基于我在这里得到的答案:如何配置 CMake 以使 VS 解决方案使用特定的构建命令行?)
下面是“platform”项目的 CMakeLists.txt:
是否有什么我可以添加到 CMakeLists.txt 文件中的项目中,以使其执行此操作?在文档、谷歌和 Stack Overflow 上搜索都没有找到相关信息。
更新:以下是我的根 CMakeLists.txt,如果有帮助的话:
cmake_minimum_required(VERSION 2.8)
add_definitions(-DCOMPILER_MSVC)
project (PDEngine)
set(LINKER_LANGUAGE CXX)
add_subdirectory (units/platform)
add_subdirectory (units/render_api)
add_subdirectory (units/memory)
add_subdirectory (units/game)
set(custom_exe "${CMAKE_CURRENT_BINARY_DIR}/units/Platform/Debug/Platform.lib2")
add_custom_command(OUTPUT ${custom_exe}
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/local/msvc/bam.bat -j $ENV{NUMBER_OF_PROCESSORS}
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/local/msvc/bam.bat
)
#add_custom_command(OUTPUT ${custom_exe_clean}
#COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/local/msvc/bam.bat -c
#DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/local/msvc/bam.bat
#)
add_custom_target(bam ALL DEPENDS ${custom_exe})
#add_custom_target(bamclean ALL DEPENDS ${custom_exe_clean}})
(bam.bat 的部分是基于我在这里得到的答案:如何配置 CMake 以使 VS 解决方案使用特定的构建命令行?)
下面是“platform”项目的 CMakeLists.txt:
cmake_minimum_required (VERSION 2.8)
project (Platform)
set (COMPILER_MSVC 1)
include_directories(${Platform_SOURCE_DIR}/include)
file(GLOB Project_HEADERS ${Platform_SOURCE_DIR}/include/platform/*.h)
source_group("Headers" FILES ${Project_HEADERS})
add_library(Platform STATIC EXCLUDE_FROM_ALL src/*.cpp ${Project_HEADERS})