View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0014806CMakeCMakepublic2014-03-14 05:002014-10-06 10:32
ReporterDirk Ribbrock 
Assigned ToBrad King 
PrioritylowSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSUbuntuOS Version12.04 / 13.10
Product VersionCMake 2.8.11.2 
Target VersionCMake 3.0Fixed in VersionCMake 3.0 
Summary0014806: cmake does not detect correct intel c/c++ compiler version
DescriptionIf used with intel cce 14.0.1 or 14.0.2 cmake reports
-- The CXX compiler identification is Intel 14.0.0.20131008
or
-- The CXX compiler identification is Intel 14.0.0.20140120,
thus detecting the correct build date but the wrong version number.
Steps To ReproduceJust set CXX to icpc and configure any cmake project with 'cmake .' while using an icpc version greater then 14.0.0.
Additional InformationThe mechanism how intel reports its compiler version has changed between 13 and 14 but i happen to not find the corresponding files at this moment :(
TagsNo tags attached.
Attached Filespatch file icon compilerid.patch [^] (795 bytes) 2014-03-14 05:39 [Show Content]
patch file icon 0001-CMake-CompilerId-Fix-patch-level-for-Intel-14.0.patch [^] (2,341 bytes) 2014-03-14 08:51 [Show Content]

 Relationships

  Notes
(0035395)
Rolf Eike Beer (developer)
2014-03-14 05:09

Are you looking for Modules/CMakeCCompilerId.c.in?
(0035396)
Dirk Ribbrock (reporter)
2014-03-14 05:30

Found, what i was searching for :)

http://software.intel.com/sites/default/files/l-compiler-release-update.pdf [^]
page 9, "2.1.4 New __INTEL_COMPILER_UPDATE predefined macro in Intel C++ Compiler 14.0"

At least in my CMakeCCompilerID.c.in file, this macro is not used.
(0035397)
Rolf Eike Beer (developer)
2014-03-14 05:39

Please try if the attached patch makes it work.
(0035398)
Dirk Ribbrock (reporter)
2014-03-14 06:15

Thanks for the fast response.

Your Patch produces something like
-- The C compiler identification is Intel 14.0.;INFO:compiler[Intel
with cmake version 2.8.11.2

But if i add a DEC in
-# define COMPILER_VERSION_PATCH __INTEL_COMPILER_UPDATE
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
it works as expected:
-- The C compiler identification is Intel 14.0.2.20140120

I have no idea, what is happening there - just added the DEC for symmetric reasons :)

As far as i understand the definition of DEC in CMakePlatformId.h.in, i cannot explain why this works at all.
(0035401)
Brad King (manager)
2014-03-14 08:52

Re 0014806:0035398: The DEC() markup means we expect the version digits to be encoded as a decimal number, as against HEX() used by some other compilers.

Please try "0001-CMake-CompilerId-Fix-patch-level-for-Intel-14.0.patch".
(0035404)
Dirk Ribbrock (reporter)
2014-03-14 09:34

This patch works for me:

-- The C compiler identification is Intel 14.0.2.20140120
-- The CXX compiler identification is Intel 14.0.2.20140120

Thanks in advance.
(0035407)
Brad King (manager)
2014-03-14 09:40

Thanks for testing. Applied:

 CMake*CompilerId: Fix patch level for Intel >= 14.0
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=eddabf9f [^]

I've also queued it for 3.0.0-rc2.
(0036943)
Robert Maynard (manager)
2014-10-06 10:32

Closing resolved issues that have not been updated in more than 4 months.

 Issue History
Date Modified Username Field Change
2014-03-14 05:00 Dirk Ribbrock New Issue
2014-03-14 05:09 Rolf Eike Beer Note Added: 0035395
2014-03-14 05:30 Dirk Ribbrock Note Added: 0035396
2014-03-14 05:39 Rolf Eike Beer File Added: compilerid.patch
2014-03-14 05:39 Rolf Eike Beer Note Added: 0035397
2014-03-14 06:15 Dirk Ribbrock Note Added: 0035398
2014-03-14 08:43 Brad King Assigned To => Brad King
2014-03-14 08:43 Brad King Status new => assigned
2014-03-14 08:43 Brad King Target Version => CMake 3.0
2014-03-14 08:51 Brad King File Added: 0001-CMake-CompilerId-Fix-patch-level-for-Intel-14.0.patch
2014-03-14 08:52 Brad King Note Added: 0035401
2014-03-14 09:34 Dirk Ribbrock Note Added: 0035404
2014-03-14 09:40 Brad King Note Added: 0035407
2014-03-14 09:40 Brad King Status assigned => resolved
2014-03-14 09:40 Brad King Resolution open => fixed
2014-03-14 09:40 Brad King Fixed in Version => CMake 3.0
2014-10-06 10:32 Robert Maynard Note Added: 0036943
2014-10-06 10:32 Robert Maynard Status resolved => closed


Copyright © 2000 - 2018 MantisBT Team