[CMake] [Titan-developers] Forcing 'out-of-source' build

Marcus D. Hanwell marcus.hanwell at kitware.com
Fri Nov 26 15:36:07 EST 2010


On Fri, Nov 26, 2010 at 3:24 PM, Wylie, Brian <bnwylie at sandia.gov> wrote:
> Hi All,
>
> I want to force an 'out-of-source' build for a small project that I converted to use Cmake.
>
> I did a bit of searching and found variants of the following...
>
> # Make sure the build is out of source
> STRING(COMPARE EQUAL "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" insource)
>  IF(insource)
>    MESSAGE(FATAL_ERROR "Do not build in your source dir please :)")
>  ENDIF(insource)
>
>
> It works but it still generates a CMakeCache.txt file and a CMakeFiles directory in the source directory (which I've also seen others discussing)...  is there a more official way to block 'in-source' builds that leaves the source dir pristine?
>
This was discussed recently by the ITK community, the best they came
up with was making CMake give instructions on how to clean up your
source tree. Hopefully this link works, and you can see what I mean,

http://www.itk.org/gitweb?p=ITK.git;a=blob;f=CMake/PreventInSourceBuilds.cmake;h=78f6b4e63ab7b08ec8bbbb7146f61adbb791a178;hb=HEAD

Marcus


More information about the CMake mailing list