2

如何以具有两个目标(默认)和CMakeLists.txt的方式编写,其中目标具有与目标标志不同的标志。问题是,当我为测试构建库时,我需要链接一些不应该在发布版本中的东西。alltesttestall

4

1 回答 1

4
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0)
PROJECT (RootProject)

OPTION(BUILD_TESTING "Build tests." OFF)
IF(BUILD_TESTING)
  # custom compiler option
  ADD_DEFINITIONS(-Zc:wchar_t-)
ENDIF(BUILD_TESTING)


ADD_SUBDIRECTORY(Lib1)
ADD_SUBDIRECTORY(Lib2)
ADD_SUBDIRECTORY(Lib3)
ADD_SUBDIRECTORY(Lib4)
ADD_SUBDIRECTORY(Bin)

IF(BUILD_TESTING)
  # more custom compiler option just for tests
  ADD_DEFINITIONS(-Zc:wchar_t-)

  ADD_SUBDIRECTORY(TestLib1)
  ADD_SUBDIRECTORY(TestLib2)
  ADD_SUBDIRECTORY(TestBin)
  MESSAGE( STATUS "Testing folders have been added." )
ENDIF(BUILD_TESTING)
于 2012-06-04T20:10:02.027 回答