One more thing, what generator is this?

At 02:55 PM 5/18/2006, Brandon J. Van Every wrote:
>CMake 2.4.2 is dropping directory path qualifiers, seemingly when a generated 
>file depends on a generated file.  I have
>
>- ${Chicken_BINARY_DIR}/csc.c, which needs
>- ${Chicken_BINARY_DIR}/csc.scm, which needs
>- ${Chicken_SOURCE_DIR}/csc.scm.in
>
>but the generated makefile drops the ${Chicken_BINARY_DIR}/csc.scm qualifier 
>in the dependency.  This causes something to erroneously look for 
>${Chicken_SOURCE_DIR}/csc.scm and the build fails.  My code:
>
># csc.c needs its own custom rule because csc.scm is generated.
># Could make macros that distinguish generated vs. non-generated
># arguments, but there aren't many cases of that, so doesn't
># seem worth it.
>
>CONFIGURE_FILE(${Chicken_SOURCE_DIR}/csc.scm.in ${Chicken_BINARY_DIR}/csc.scm)
>ADD_CUSTOM_COMMAND(
> OUTPUT ${Chicken_BINARY_DIR}/csc.c
> MAIN_DEPENDENCY ${Chicken_BINARY_DIR}/csc.scm
> COMMAND ${VALID_CHICKEN} ${Chicken_BINARY_DIR}/csc.scm -output-file 
> ${Chicken_BINARY_DIR}/csc.c ${CHICKEN_FLAGS}
>)
>
>and the output in csc.dir:
>
>csc.c: csc.scm
>   @echo "Generating csc.c"
>   E:/Program\ Files/Chicken/chicken-static.exe E:/devel/msys/chicken1/csc.scm 
> -output-file E:/devel/msys/chicken1/csc.c -quiet -no-trace -optimize-level 2 
> -include-path E:/devel/src/chicken
>
>nsample.c: E:/devel/src/chicken/nsample.scm
>   @echo "Generating nsample.c"
>   E:/Program\ Files/Chicken/chicken-static.exe 
> E:/devel/src/chicken/nsample.scm -output-file 
> E:/devel/msys/chicken1/nsample.c nsample nsample -explicit-use -uses library 
> -uses eval -quiet -no-trace -optimize-level 2 -include-path 
> E:/devel/src/chicken
>
>batch-driver.c: E:/devel/src/chicken/batch-driver.scm
>   @echo "Generating batch-driver.c"
>   E:/Program\ Files/Chicken/chicken-static.exe 
> E:/devel/src/chicken/batch-driver.scm -output-file 
> E:/devel/msys/chicken1/batch-driver.c batch-driver batch-driver -quiet 
> -no-trace -optimize-level 2 -include-path E:/devel/src/chicken
>
>[etc.]
>
>Note that all my other dependencies have fully qualified pathnames.  
>Note further, none of their .scm sources are generated, i.e. they're all of 
>the form ${Chicken_SOURCE_DIR}/*.scm.  The error I get with csc.c:
>
>Generating csc.c
>make[2]: *** No rule to make target `E:/devel/src/chicken/csc.scm', needed by 
>`CMakeFiles/csc.dir/depend.make.mark'.  Stop.
>make[1]: *** [CMakeFiles/csc.dir/all] Error 2
>make: *** [all] Error 2
>
>
>
>Cheers,
>Brandon Van Every
>
>_______________________________________________
>CMake mailing list
>[email protected]
>http://www.cmake.org/mailman/listinfo/cmake

_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to