[CMake] How to make sure "make test" depends on "make all"

Shlomi Fish shlomif at iglu.org.il
Tue Jun 23 03:56:05 EDT 2009


Hi all!

I'm using cmake-2.6.4-3mdv2010.0 on Mandriva Linux Cooker, and ran into a 
problem. I want "make test" (which is a custom target) to depend on "make 
all", in this codebase:

http://svn.berlios.de/svnroot/repos/fc-solve/trunk/fc-solve/source/

I have this code:

{{{{{{{{{{{
    ADD_CUSTOM_TARGET(
        "test"
        "perl" "run-tests.pl"
    )

    ADD_DEPENDENCIES(
        "test"
        "all"
    )
}}}}}}}}}}}

However, doing "make test" after "make clean" results in:

{{{{{{{{{{{
shlomi:$trunk/fc-solve/source$ make clean
shlomi:$trunk/fc-solve/source$ make test 
[ 25%] Generating card-test-parse.c      
[ 50%] Building C object t/CMakeFiles/t/card-test-parse.exe.dir/card-test-
parse.c.o                                                                             
Linking C executable t/card-test-parse.exe                                      
[ 50%] Built target t/card-test-parse.exe                                       
[ 75%] Building C object t/CMakeFiles/t/card-test-render.exe.dir/card-test-
render.c.o                                                                           
Linking C executable t/card-test-render.exe                                     
[100%] Built target t/card-test-render.exe                                      
FCS_PATH = /home/shlomi/progs/freecell/trunk/fc-solve/source                    
t/board-gen.............................ok                                      
t/build-process.........................skipped                                 
        all skipped: Skipping because FCS_TEST_BUILD is not set                 
t/card-test-parse.......................ok                                      
t/card-test-render......................ok                                      
t/compare-digests-and-lens..............sh: 
/home/shlomi/progs/freecell/trunk/fc-solve/source/fc-solve: No such file or 
directory                               
close failed in file object destructor:                                         
Error in sys.excepthook:                                                        

Original exception was:
t/compare-digests-and-lens..............NOK 1                                
#   Failed test 'Verifying the solution of deal \#24'                        
#   at t/compare-digests-and-lens.t line 101.                                
# Expected Digest: 
ef0fd5fb21649c349a8283553c83502ba831a9cf765f4372bff9243bf399fc15                                                                             
# Got Digest: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855  
# Expected Len: 32193                                                           
# Got Len: 0                                                                    
sh: /home/shlomi/progs/freecell/trunk/fc-solve/source/fc-solve: No such file 
or directory                                                                       
close failed in file object destructor:                                         
Error in sys.excepthook:                                                        
}}}}}}}}}}}

As you can see - the binaries themselves were not built.

How can I solve this problem?

Regards,

	Shlomi Fish

-- 
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
What does "Zionism" mean? - http://xrl.us/bjn8u

God gave us two eyes and ten fingers so we will type five times as much as we
read.


More information about the CMake mailing list