[CMake] CMake still broken post-2.8.1
Phil Smith
phil at voltage.com
Wed Jan 25 13:50:16 EST 2012
Ok, that *maybe* gets me further. CMakeDetermineASM_DIGNUSCompiler.cmake (in Modules\) is:
SET(ASM_DIALECT _DIGNUS)
SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_INIT "asmit.bat")
INCLUDE(CMakeDetermineASMCompiler)
SET(ASM_DIALECT)
and that gets invoked several times, with:
dasm.exe --version
dasm.exe -h
dasm.exe -qversion
dasm.exe -V
...none of which work. Maybe I need to force something for the assembler? Or should asmit.bat just return 0 for any of those?
Oh, I did also try the recommended lines, both as listed and as:
SET(CMAKE_C_COMPILER_ID_RUN 1)
SET(CMAKE_C_PLATFORM_ID "DIGNUS")
SET(CMAKE_C_COMPILER_ID "DIGNUS")
SET(CMAKE_CXX_COMPILER_ID_RUN 1)
SET(CMAKE_CXX_PLATFORM_ID "DIGNUS")
SET(CMAKE_CXX_COMPILER_ID "DIGNUS"
I'm not sure "DIGNUS" was the right ID to try, but it didn't seem to make any difference.
The problem here, of course, is that I don't understand what it's *trying* to do, so I'm kind of reverse-engineering it. Which is painful for all involved. So I appreciate your patience here.
...phsiii
-----Original Message-----
From: Brad King [mailto:brad.king at kitware.com]
Sent: Wednesday, January 25, 2012 11:12 AM
To: Phil Smith
Cc: cmake at cmake.org; Bill Hoffman
Subject: Re: [CMake] CMake still broken post-2.8.1
On 1/25/2012 10:53 AM, Phil Smith wrote:
>> We've also provided other approaches elsewhere in this thread to
>> avoid the problem altogether by setting up your toolchain file to
>> skip compiler id detection.
>
> OK, I'm willing to do that, but I can't figure out how to do so.
Actually the previous discussion was about skipping the test for a
working compiler as well as the compiler id. There is a mid ground
that can skip just the id part but keep everything else the same.
> It seems like:
>
> SET(CMAKE_C_COMPILER "regina.exe" "cc.rex dcc.exe")
> SET(CMAKE_CXX_COMPILER "regina.exe" "cc.rex dcxx.exe")
Keep those lines and add
SET(CMAKE_C_COMPILER_ID_RUN 1)
SET(CMAKE_C_PLATFORM_ID "")
SET(CMAKE_C_COMPILER_ID "")
SET(CMAKE_CXX_COMPILER_ID_RUN 1)
SET(CMAKE_CXX_PLATFORM_ID "")
SET(CMAKE_CXX_COMPILER_ID "")
Fill in the ID values if you need to.
-Brad
More information about the CMake
mailing list