[CMake] Support for RVDS 4.1: ARM C/C++ and ASM compilers.

Abdelrazak Younes ayounes at marvell.com
Fri Dec 9 03:47:14 EST 2011


Hi Alex,

Thanks for the quick reply.

I am using Outlook so I cannot reply inline easily, please bear with me. I will prefix your answer with '#'

-----Original Message-----
From: Alexander Neundorf [mailto:a.neundorf-work at gmx.net] 
Sent: Thursday, December 08, 2011 9:24 PM
To: cmake at cmake.org
Cc: Abdelrazak Younes
Subject: Re: [CMake] Support for RVDS 4.1: ARM C/C++ and ASM compilers.

On Thursday 08 December 2011, Abdelrazak Younes wrote:
> Hello,
> 
> We (MARVELL Switzerland) have created some CMake support files in order to
> use RVDS 4.1 ARM C/C++ and ASM compilers.

# Cool !
# I mean, this is really cool ! :-)

I am very glad that you like it :-)

# Can you please create a ticket for this on 
# http://public.kitware.com/Bug/my_view_page.php
#, basically with the content of this email ?
# This way it is ensured that it won't get lost or forgotten.

Done:

http://public.kitware.com/Bug/view.php?id=12614

# Setting all the CMAKE_(C|CXX)_CREATE_* and ARCHIVE variables in the toolchain 
# file should not be necessary.
# 
# It should be enough to only set CMAKE_C_COMPILER and CMAKE_CXX_COMPILER.
# Then cmake tries to compile a small executable with it, and tries to detect 
# the compiler, see Modules/CMakeCCompilerID.c.in.
# Probably there is a macro builtin into this compiler to detect that it is the 
# RVDS compiler ?

Yes, see here:

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0041c/Babbacdb.html

So I guess I can either use __arm or __ARMCC_VERSION

# The cmake compiler ID could then be named "RVDS".
#
# Then cmake executes Modules/CMakeFindBinUtils.cmake.
# If the compiler ID has been determined successfully, you can change this file 
# so that if the compiler ID is RVDS, it looks for "armar" instead of ar.
#
# Then, once it has detected this "compiler id", it can load 
# Modules/Compiler/RVDS-C.cmake and RVDS-CXX.cmake. There you can put also the 
# variables for linking etc.

OK, so shall I make a local copy of Modules/CMakeCCompilerID.c.in and modify that? I mean, would this copy take precedence if I add the local Module path like this:

  set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/../cmake/Modules" ${CMAKE_MODULE_PATH})

# Thanks a lot :-)

And thanks to you for your support.

Cheers,
Abdel.



More information about the CMake mailing list