[CMake] CMAKE_SYSTEM_PROCESSOR says x86 on Win64 -> Patch

Rolf Eike Beer eike at sf-mail.de
Sat Feb 23 08:58:11 EST 2013


Martin Koller wrote:
> On Friday 22 February 2013 12:23:23 Koller, Martin wrote:
> > I propose the attached patch for CMakeDetermineSystem.cmake
> > Can someone add this to the mentioned mantis bug entry or shall I create a
> > new one ?
> Revised patch which ignores the case of "amd64" so that "AMD64" works as
> well

No, this is wrong. As you can read in the blog post you refer to there is also 
IA64, and Windows on ARM could be near, too. So for both of those platform we 
now would have "x86" reported.

My code would look like this:

if ($ENV{PROCESSOR_ARCHITEW6432})
  set(CMAKE_HOST_SYSTEM_PROCESSOR "$ENV{PROCESSOR_ARCHITEW6432}")
else()
 set(CMAKE_HOST_SYSTEM_PROCESSOR "$ENV{PROCESSOR_ARCHITECTURE}")
endif()

This will also keep the casing to avoid confusion, just keep the values the OS 
gives you as long as they are consistent in themself.

Eike
-- 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://www.cmake.org/pipermail/cmake/attachments/20130223/b60ed9eb/attachment.pgp>


More information about the CMake mailing list