我目前正在使用此命令通过ExternalProject_Add
构建Boost:
ExternalProject_Add(Boost
PREFIX workspace/Boost
URL http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
URL_MD5 51528a0e3b33d9e10aaa311d9eb451e3
UPDATE_COMMAND ./bootstrap.sh
CONFIGURE_COMMAND ""
BUILD_COMMAND ./b2 --layout=tagged link=static -s NO_BZIP2=1 cxxflags="-std=c++11" install
INSTALL_COMMAND ""
BUILD_IN_SOURCE 1
)
问题在于,无论我实际想要构建哪种配置,这都将始终构建用于boost的发布和调试变体/配置。在这种情况下,如何将当前配置“传递”到ExternalProject_Add
命令?
当“内部”构建工具(即ExternalProject_Add
调用的工具也是CMake)时,此似乎才能正常工作。但是,我不知道如何将这些信息传递给Boost的b2。
以上示例适用于Windows / VisualStudio2013,因此是一个多配置CMake目标,但理想情况下,我也有一些适用于单个配置目标的内容。