[CMake] target DEPENDS are ignored if the target is also used for the COMMAND

Alan W. Irwin irwin at beluga.phys.uvic.ca
Tue Oct 27 14:51:57 EDT 2009


On 2009-10-27 14:01-0400 Brad King wrote:

> Alan W. Irwin wrote:
>> cmake version 2.6-patch 4;
>>
>> Unix Makefiles;
>>
>> Linux (Debian stable with bootstrap build of CMake-2.6.4);
>>
>> What's the easiest way to try the "generator" test here (for Unix
>> Makefiles)
>> so we are doing exactly the same test?
>
> Get a CMake 2.6 source tree.  Then run
>
> $ cd cmake-2.6.4/Tests/BuildDepends
> $ mkdir b && cd b
> $ cmake ..
>
> The whole test runs during the configuration step, so there is no
> need to type make.

Hi Brad:

I have attached the cmake output from the above test.  It appears everything
worked with my version of cmake-2.6.4.  Accordingly I went back and tried my
own tests (there were several instances of this pattern not working), but
now all our fine!  I am virtually positive the previous tests were done as
now (with an initially empty build tree, an initial build, then various
tests with touch).  So I think the only real change between what was not
working before and what is working now is that I rebooted over the weekend.
If a reboot makes the difference (after 6 weeks up time) that is a nagging
concern about the long-term reliability of my platform but probably nothing
to do with cmake.

Thanks very much for your helpful feedback.

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state implementation
for stellar interiors (freeeos.sf.net); PLplot scientific plotting software
package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of
Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
__________________________

Linux-powered Science
__________________________
-------------- next part --------------
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
Creating Project/foo.cxx
Building project first time
Running /home/software/cmake/cmake-2.6.4/Tests/BuildDepends/b/Project/bar  
Run result: 0 Output: "foo "
Worked!
Running /home/software/cmake/cmake-2.6.4/Tests/BuildDepends/b/Project/zot  
Run result: 0 Output: "[zot] [zot_custom] [zot_macro_dir] [zot_macro_tgt] "
Worked!
Waiting 3 seconds...
Modifying Project/foo.cxx
Building project second time
Running /home/software/cmake/cmake-2.6.4/Tests/BuildDepends/b/Project/bar  
Run result: 0 Output: "foo changed "
Worked!
Running /home/software/cmake/cmake-2.6.4/Tests/BuildDepends/b/Project/zot  
Run result: 0 Output: "[zot changed] [zot_custom changed] [zot_macro_dir changed] [zot_macro_tgt changed] "
Worked!
-- Configuring done
-- Generating done
-- Build files have been written to: /home/software/cmake/cmake-2.6.4/Tests/BuildDepends/b


More information about the CMake mailing list