[CMake] Portable way to locate built executables.
Nils Gladitz
nilsgladitz at gmail.com
Sun May 18 13:39:08 EDT 2014
On 18.05.2014 19:24, Rick McGuire wrote:
> We have a project that builds some executables, then uses those
> executables to build some additional build artifacts. We have this
> working well using makefiles on Windows and various unix variants. I
> decided it would be nice to try doing a build using a Visual Studio
> project. The various compile/link steps worked great, but any step
> that needed to use one of the built executables was failing to find
> the executables. An examination of the build tree revealed that
> Visual Studio was placing the executables in bin\Debug rather than the
> expected bin directory.
>
> The command we're using is specified as:
>
> add_custom_command(OUTPUT ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/rexx.img
> COMMAND ./rexximage
> DEPENDS rexximage rxapi rexxutil ${image_class_files} ${platform_rexx_img_depends}
> WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
> where we're assuming the rexximage.exe file will be in the CMAKE_RUNTIME_OUTPUT_DIRECTORY, which is specified as ${CMAKE_CURRENT_BINARY_DIR}/bin. Is there a more appropriate method we should be doing to locate this executable that will work using both the NMake build process and a Visual Studio project?
Try "COMMAND rexximage".
If "rexximage" is an executable target (as created by add_executable())
add_custom_command() will substitute the actual command.
Nils
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20140518/bd8eb78b/attachment.html>
More information about the CMake
mailing list