Many thanks for the clarifications! Dominik
On Thu, Jun 9, 2011 at 11:18 PM, Michael Hertling <mhertl...@online.de> wrote: > On 06/09/2011 03:34 PM, Dominik Szczerba wrote: >> Hi, >> >> I have a big project with several subfolders. In one subfolder's cmake >> file I have e.g. >> >> INSTALL(TARGETS test DESTINATION ${CMAKE_INSTALL_PREFIX} CONFIGURATIONS >> RELEASE) >> >> Now when I call "make install" on linux or build "INSTALL" project in >> MSVC the whole project is built prior to installation of "test". How >> would I force to only build "test" in this case? >> >> Many thanks for any hints, >> Dominik > > Since the general "install" target always depends on the general "all" > target, you should use a specific "install" target for your binary: > > CMAKE_MINIMUM_REQUIRED(VERSION 2.8 FATAL_ERROR) > PROJECT(INSTALL C) > SET(CMAKE_VERBOSE_MAKEFILE ON) > FILE(WRITE ${CMAKE_BINARY_DIR}/main.c "int main(void){return 0;}\n") > ADD_EXECUTABLE(main main.c) > INSTALL(TARGETS main > DESTINATION ${CMAKE_INSTALL_PREFIX} > CONFIGURATIONS RELEASE) > ADD_CUSTOM_TARGET(install.main > ${CMAKE_COMMAND} > -DBUILD_TYPE=${CMAKE_BUILD_TYPE} > -P ${CMAKE_BINARY_DIR}/cmake_install.cmake) > ADD_DEPENDENCIES(install.main main) > > The custom target install.main depends on the main target only and > invokes the cmake_install.cmake script; the desired configuration is > passed to this script via the BUILD_TYPE parameter, or alternatively > CMAKE_INSTALL_CONFIG_NAME, i.e. the script does not install anything > if CMAKE_INSTALL_CONFIG_NAME doesn't match one of the CONFIGURATIONS > in the INSTALL() command. This has been tested on *nix, but I assume > it works similar on Windows; inspect the cmake_install.cmake script > there to find out which parameter must be passed for configurations > selection. Note that the custom commands' "generator expressions" > can be used in custom targets, too - undocumented - so you might > pass the configuration as $<CONFIGURATION> to the script. > > 'hope that helps. > > Regards, > > Michael > _______________________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Follow this link to subscribe/unsubscribe: > http://www.cmake.org/mailman/listinfo/cmake > > _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake