[CMake] getting a build parameter from a file
Dave Yost
Dave at Yost.com
Tue Jun 9 22:19:48 EDT 2015
> On 2015-06-09, at 8:05 AM, David Cole <DLRdave at aol.com> wrote:
>
> Why not just use configure_file
because I didn’t know about it. Thanks!
> to write ${metals} into the file...
> configure_file only actually touches/writes-to/updates the file if the
> contents are different...
>
> Then you can just depend on that file and you don't need a separate
> timestamp file.
>
>
> HTH,
> David C.
>
>
> On Tue, Jun 9, 2015 at 1:05 AM, Dave Yost <Dave at yost.com> wrote:
>>
>>
>> First, my cmake code does this:
>>
>> sets ${metals} from a cmake command-line argument
>> compares the contents of ${metals} against the contents of a file to note
>> whether the variable is being changed since the last run of cmake
>> writes the new value to that file for next time
>> call an add_timestamp_file_target function. which touches the file
>> metalsTimestamp if the variable is being changed or if the file doesn’t
>> exist.
>>
>> Then comes this:
>>
>> set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DMETALS=\"\\\"${metals}\\\"\"")
>> add_executable (metals metals.cc)
>> add_dependencies (metals metalsTimestamp)
>>
>>
>> My add_timestamp_file_target function has to use one of
>> add_custom_target
>> add_custom_command
>> to make metalsTimestamp visible to the add_dependencies function.
>>
>> Problem is, it seems that those commands have to touch the file every time
>> cmake runs, but I want to touch it only when necessary.
>>
>> Is there a way to make this work?
>>
>>
>> --
>>
>> Powered by www.kitware.com
>>
>> Please keep messages on-topic and check the CMake FAQ at:
>> http://www.cmake.org/Wiki/CMake_FAQ
>>
>> Kitware offers various services to support the CMake community. For more
>> information on each offering, please visit:
>>
>> CMake Support: http://cmake.org/cmake/help/support.html
>> CMake Consulting: http://cmake.org/cmake/help/consulting.html
>> CMake Training Courses: http://cmake.org/cmake/help/training.html
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Follow this link to subscribe/unsubscribe:
>> http://public.kitware.com/mailman/listinfo/cmake
More information about the CMake
mailing list