[Cmake] nasm and cmake

Andy Cedilnik andy.cedilnik at kitware.com
Fri Feb 7 11:42:12 EST 2003


Hi Lars,

Easy... (CMake 1.6)

Here is how you do a generic build step for tool "tool" which takes
source "source" and produces result file "result":

ADD_CUSTOM_TARGET(result_TARGET ALL)

# One per source
ADD_CUSTOM_COMMAND(SOURCE source
                   COMMAND tool
                   ARGS --arguments-for-tool 
                        --source source --result result
                   OUTPUTS result
                   TARGET result_TARGET)

# One for all sources
ADD_CUSTOM_COMMAND(SOURCE result_TARGET
                   DEPENDS result
                   TARGET result_TARGET)

Replace source with your source file, replace result with your object
file I guess, replace tool with nasm and --arguments-for-tool --source
source --result result with apropriate flags.

If you have multiple source, you need one custom command per source, but
the second one is only one. Make sure to list all the results in the
second one.

If you have another step, let say linking:

ADD_CUSTOM_TARGET(result_TARGET ALL)

# One per source
ADD_CUSTOM_COMMAND(SOURCE source
                   COMMAND tool
                   ARGS --arguments-for-tool 
                        --source source --result result
                   OUTPUTS result
                   TARGET result_TARGET)

# One per link line
ADD_CUSTOM_COMMAND(SOURCE result
                   COMMAND link-tool
                   ARGS --arguments-for-link-tool 
                        --source result --result link-result
                   OUTPUTS lin-result
                   TARGET result_TARGET)

# One for all sources
ADD_CUSTOM_COMMAND(SOURCE result_TARGET
                   DEPENDS link-result
                   TARGET result_TARGET)


You get the picture.
If you want to support out of source build, make sure to put
${CMAKE_CURRENT_SOURCE_DIR} prefix in front of every source file and
${CMAKE_CURRENT_BINARY_DIR} prefix in fron of every binary file. 

				Andy

On Fri, 2003-02-07 at 11:22, Lars Prieske wrote:
> Hello,
> has everyone implemented a cmake makro to handle nasm files (name.asm)? I'm
> looking for a solution to make a library from assembler and cpp code.





More information about the CMake mailing list