[CMake] multiple executables
PCJohn
peciva at fit.vutbr.cz
Mon Jun 2 17:20:02 EDT 2008
Thanks. VERBATIM was the problem. After, removing it, the code works
perfectly. Thanks!
Anyway, I am a little bit puzzled with documentation, as it states:
> In the future VERBATIM may be enabled by default. The only reason
> it is an option is to preserve compatibility with older CMake code.
I hope, my code will still work in future releases :-) .
So, finally, solved, and it works now! Thanks.
John
David Cole wrote:
> Your initial attempt looks reasonable... Did you try it without the
> "VERBATIM" argument to the ADD_CUSTOM_COMMAND?
>
> This sort of copy command should work if invoked from Visual Studio,
> even with the $(OutDir) reference...
>
>
> HTH,
> David
>
>
> On Sun, Jun 1, 2008 at 10:29 AM, Pečiva Jan <peciva at fit.vutbr.cz
> <mailto:peciva at fit.vutbr.cz>> wrote:
>
> Dears cmakers,
>
> I am about to finish my "dual gui/console" behaviour for
> InventorTools utilities. Compilation of whole set of executables is
> perfectly handled by cmake, but final "installation" procedure does
> not work.
>
> Can cmake handle this situation?:
>
> 1. cmake builds all the executables of the projects
> "Dual" behaviour requires .com suffix, so all *.com are placed in
> the build directories. On MSVC, it is usually at
> build/(project_name)/(debug|release)/*.com
> This works perfectly.
>
> 2. The last project makes one .exe for "dual" behaviour. It is called
> autoconsole.exe. Before using cmake, I copied autoconsole.exe to
> all other
> build directories to reside together with their .com and renamed
> them to
> the same name as .com except with .exe suffix. This worked
> perfectly using
> post-build script, but how to make it with cmake?
>
> I unsuccessfully tried two options:
>
> - to make post-build step by
>
> add_custom_command (TARGET autoconsole
> POST_BUILD
> COMMAND ${CMAKE_COMMAND} -E copy
> ${PROJECT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/autoconsole.exe
> ${ivview_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ivview.exe
> COMMENT "Copying executables..." VERBATIM)
>
> This does not work because ${CMAKE_CFG_INITDIR} is set to $(IntDir)
> on Visual Studio. So, the copy command fails because it expect
> regular path. (And $(IntDir) differs among different debug/release
> configurations).
>
> - to make it part of install process by
>
> install (TARGETS autoconsole
> RUNTIME
> DESTINATION bin
> RENAME ivview.exe)
>
> It copies the file, but RENAME does not work (It probably works only
> for PROGRAMS and FILES signatures). I was planning to use this
> command about ten times to get all the required .exe.
>
>
> Please, is there any way how to proceed, to get all of about ten .exe
> executables to their places, either with their .com counterparts
> (preferred), or to final install destination?
>
> Thanks,
> John
>
> _______________________________________________
> CMake mailing list
> CMake at cmake.org <mailto:CMake at cmake.org>
> http://www.cmake.org/mailman/listinfo/cmake
>
>
More information about the CMake
mailing list