On Friday 11 May 2012, Alexey Istomin wrote: > Is it possible to use different assemblers in single build with CMake? > > I try to use CMake for building embedded application - statically linked > elf file. Main CPU has 2 cores: general-purpose MIPS based core and DSP. > Project has simple structure: main dir contains asm and C sources for Mips > core, dsp-lib subdir has only asm sources for DSP core: > > main/ > crt0-mips.s > main.c > ... > dsp-lib/ > fft.s > .... > > GCC compiler and assembler are used for Mips sources, special assembler > (dspasm) based on gnu should be used for DSP. Main should be linked with > dsp lib into single elf file. I can successfully build main app without > dsp-lib. But when I try to add dsp-lib subdir and set dspadm as assembler, > CMake still uses mips-asm in the dsp-lib. Is it any solution?
Yes. You need to duse two different assembler "dialects", each "dialect" counts as a separate language to cmake, so you can have many in parallel. So you should add e.g. a ASM-DSP dialect, and set the language of the source files to ASM-DSP. This this assembler will be invoked on these files. Adding an assembler dialect is not hard, you need just a few tiny files: http://www.cmake.org/Wiki/CMake/Assembler This page is slightly out of date, but the documentation how to add a new assembler is still valid. Just have a look at the Modules/ directory for the ASM-related files, you should see how this works. Alex
-- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake