[CMake] assembler with non standard extension with gcc compiler

Ivan Sergio Borgonovo mail at webthatworks.it
Thu Oct 31 15:57:45 EDT 2013


On Thu, 31 Oct 2013 18:01:29 +0100
Alexander Neundorf <a.neundorf-work at gmx.net> wrote:

> Did you try setting the source file property "LANGUAGE" to "ASM" for
> these files ?
> http://www.cmake.org/cmake/help/v2.8.12/cmake.html#prop_sf:LANGUAGE

Thanks, that made the trick but I ran into another problem:

One of those asm file is somehow being ignored by cmake.

I can find the right commands greping in the build dir but they are not
executed during make:

./SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/CMakeFiles/crt0.dir/build.make:
cd /home/ivan/Documents/avr/test/BuildTest/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC
&&
/home/ivan/Documents/avr/test/avr32-gnu-toolchain-linux_x86_64/bin/avr32-gcc
$(ASM_DEFINES) $(ASM_FLAGS) -o CMakeFiles/crt0.dir/crt0.x.o
-c
/home/ivan/Documents/avr/test/src/SOFTWARE_FRAMEWORK/UTILS/STARTUP_FILES/GCC/crt0.x

This time I suspect cmake missing a dependency because cmake can't
understand asm.

make ends with
SOFTWARE_FRAMEWORK/ASM/libtrampoline.a(trampoline.s.o): In function
`program_start': (.reset+0x2004): undefined reference to `_stext'

_start is a address label in asm defined in the ctr0.x:

  .section  .text._stext, "ax", @progbits


  .global _stext
  .type _stext, @function
_stext:


-- 
Ivan Sergio Borgonovo
http://www.webthatworks.it



More information about the CMake mailing list