[CMake] adding a custom command with the file name as a target

Tyler tyler at cryptio.net
Fri Mar 11 11:56:34 EST 2011


The target in the Makefile is created with the add_custom_target()
call. So just change yours to:

add_custom_target(hello.bin ALL DEPENDS hello.bin)

hth,
tyler

On Fri, Mar 11, 2011 at 7:58 AM, Jim Newsome <jnewsome at cmu.edu> wrote:
> I'd like to do something like add_custom_command, with the output file
> name as a target in the generated makefile. Is there an elegant way of
> doing this?
>
> The closest I've come is:
> add_executable (hello hello.c)
> add_custom_command(OUTPUT hello.bin
>                    COMMAND objcopy --output-format=binary hello hello.bin
>                   DEPENDS hello
>                   COMMENT "objcopying hello to hello.bin")
> add_custom_target(bin ALL DEPENDS hello.bin)
>
> However, the target name in the generated makefile is 'bin' rather
> than 'hello.bin'. Is there a way to make 'hello.bin' itself a target
> in the generated makefile?


More information about the CMake mailing list