[cmake-developers] CMake platform support for TI C6000 and TMS470 (OMAP)

Trevor Kellaway tkellaway at asl-vision.co.uk
Sun Oct 17 15:00:06 EDT 2010


Alex,

Is CMake accepting platform files for the official distro?

You may remember me from my original CMake 2.4 work on embedded compiler
support, I'm currently updating the build system this work was for to
the latest CMake, so have newly written platform support files for TI
C6000 DSP, and TI TMS470 ARM available (TI's OMAP device contains this
DSP and ARM). I also have assembler support for both of these. 

I notice from your IAR work you are supporting test compiles, I haven't
supported this as haven't looked at any changes that have been made to
support this.

The TI compilers don't support "-o", but they do have an option to set
the output directory, originally I wrote a C program ("custom_cl6x") to
wrap the TI compiler invocation to munge the -o to the directory option
required, I've since learnt that I could have just used "<OBJECT_DIR>"
rather than "<OBJECT>" in the compiler rule therefore the dependency on
spawn tool is no longer required, making integration into official CMake
easier.

For the assembler support I note that if I put ENABLE_LANGUAGE() in the
tool chain file CMake locks up, this also happens if I put it in my
"Platform/Generic-cl6x.cmake", I have had to put it in either top level
CMakeLists.txt or a normal include file included from it. It would make
more sense to be in the compiler file or toolchain file, I haven't
looked into this further.

The TI tools are available on both Linux and Windows (I use both). I
have one outstanding issue for Windows with CMake V2.8, I'm using
FIND_PROGRAM to discover the archiver and linker, and these are being
saved in the CMake cache using forward slashes even after trying to
force native backslashes, unfortunately when building using NMake the
tools do nothing if invoked with forward slashes (go figure), so I'm
currently spawning these via another program to workaround this. If you
are interested in accepting this support into the official distro I'll
try and find a way of resolving this. 

-TrevK



More information about the cmake-developers mailing list