Hi,

On Fri, Jun 29, 2012 at 2:44 PM, Christian Arnault <arna...@lal.in2p3.fr>wrote:

>  Hi,
>
> I wanted to factor out some initial stuff of my CMakeLists.txt that I
> systematically include.
>
> typically I include the following lines at the beginning of all my
> CMakeLists.txt:
>
> cmake_minimum_required(VERSION 2.8)
> function (AA)
>   message ("calling AA")
> endfunction()
>
> AA()
>
> Then I thought by using the -C option as follows:
>
> > cmake --build=. -C %CMTROOT%\Init.cmake ..\CMakeLists.txt
>
> with Init.cmake file containing
>
> function(AA)
>   message("calling aaaa")
> endfunction()
>
> This would be equivalent.
>
> Apparently this is not the case. In particular, the function definitions
> are not transmitted by this mechanism
>
> loading initial cache file ...\Init.cmake
>
> ... the functions defined in Init.cmake are not recognized
>

The cmake manual explains why this happens, the script is only executed to
prefill the cache file, its not prepended to the cmakelists.txt files that
are being run.


> Of course I could 'manually' include my module in all CMakeLists.txt but
> ...
>
> Can someone explain why?
>
> Or, how could I obtain what I need?
>

Use include() in your cmakelists.txt files.

Andreas
--

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

Reply via email to