View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0011700CMakeModulespublic2011-01-14 12:292011-01-31 16:05
ReporterBrian Lewis 
Assigned ToBrad King 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSSCO UNIXOS VersionOpenServer 5.0.x
Product VersionCMake 2.8.3 
Target VersionCMake 2.8.4Fixed in VersionCMake 2.8.4 
Summary0011700: SCO: GNU compiler not supported
Description$ CC=/usr/local/gcc-3.3.1/bin/gcc CXX=/usr/local/gcc-3.3.1/bin/g++ ./bootstrap && make

eventually fails with

gcc: `-b' must come at the start of the command line

because the flags set in Modules/Platform/SCO_SV.cmake are only appropriate for the default SCO compiler.
Additional InformationThe attached patch fixes the issue for me. Thanks.
TagsNo tags attached.
Attached Filespatch file icon sco-gcc.patch [^] (922 bytes) 2011-01-14 12:29 [Show Content]
patch file icon sco-gcc-r2.patch [^] (790 bytes) 2011-01-14 14:03 [Show Content]
patch file icon 28a0403c+0001-Recognize-SCO-UnixWare-C-C-compilers-11700.patch [^] (1,402 bytes) 2011-01-17 09:59 [Show Content]
patch file icon 28a0403c+0002-Factor-SCO-compiler-info-out-of-platform-file-11700.patch [^] (2,747 bytes) 2011-01-17 10:00 [Show Content]

 Relationships

  Notes
(0024681)
Brad King (manager)
2011-01-14 13:05

What is the default compiler on SCO? Perhaps:

  http://predef.sourceforge.net/precomp.html#sec45 [^]

?
(0024683)
Brad King (manager)
2011-01-14 13:31

http://osr600doc.sco.com/en/manCP/cc.CP.html [^]
http://osr600doc.sco.com/en/manCP/CC.CP.html [^]
(0024689)
Brad King (manager)
2011-01-14 13:55

I'd like to identify the native SCO compiler and then move the options for it over to Modules/Compiler/SCO-<lang>.cmake or something like that. Then they won't be in the SCO_SV platform file at all and the normal GNU compiler rules from Platform/Compiler/GNU* should work.
(0024691)
Brian Lewis (reporter)
2011-01-14 14:03

I'm not sure what information you want about the native SCO compiler. Please let me know and I'll try to get it for you.

In the meantime, I'll attach a revised version of the patch.
(0024692)
Brad King (manager)
2011-01-14 14:11

The SCO_SV file is leftover from an outdated platform file layout design that mixed together the platform (operating system) and compiler. Most of the files have been refactored out to put compiler-specific information in modules called

  Compiler/<id>-<lang>.cmake

platform information like the preferred shared library extension in

  Platform/<os>.cmake

and platform-specific compiler information in

  Platform/<os>-<id>-<lang>.cmake

This all depends on having an "<id>" for each compiler vendor that is recognized in Modules/CMakeCCompilerId.c.in and Modules/CMakeCXXCompilerId.cpp.in.

The reason you are having trouble is that the Platform/SCO_SV.cmake file still contains compiler-specific information for one particular compiler. Rather than adding more compiler-specific information to it for more compilers we should take out the SCO compiler information and put it in the right place. Then it won't interfere with other compilers on that platform.

I need to know the official vendor's name for the default compiler and the preprocessor symbol that identifies it. From the above-linked man pages I think this is

  SCO UnixWare C/C++ Compiler
  __SCO_VERSION__

Correct?
(0024693)
Brian Lewis (reporter)
2011-01-14 14:17

I think that information is correct. Thanks.
(0024749)
Brad King (manager)
2011-01-17 10:01

Please apply the attached patches:

  28a0403c+0001-Recognize-SCO-UnixWare-C-C-compilers-11700.patch
  28a0403c+0002-Factor-SCO-compiler-info-out-of-platform-file-11700.patch

The GNU compiler should then be able to work.
(0024751)
Brian Lewis (reporter)
2011-01-17 10:22

Brad, it seems to work. Thank you!
(0024753)
Brad King (manager)
2011-01-17 10:36

Thanks for testing:

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=db05da35 [^]
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e60c8ec6 [^]

 Issue History
Date Modified Username Field Change
2011-01-14 12:29 Brian Lewis New Issue
2011-01-14 12:29 Brian Lewis File Added: sco-gcc.patch
2011-01-14 12:56 Brad King Assigned To => Brad King
2011-01-14 12:56 Brad King Status new => assigned
2011-01-14 12:56 Brad King Summary bootstrap fails when using gcc, g++ => SCO: GNU compiler not supported
2011-01-14 13:05 Brad King Note Added: 0024681
2011-01-14 13:31 Brad King Note Added: 0024683
2011-01-14 13:55 Brad King Note Added: 0024689
2011-01-14 14:03 Brian Lewis Note Added: 0024691
2011-01-14 14:03 Brian Lewis File Added: sco-gcc-r2.patch
2011-01-14 14:11 Brad King Note Added: 0024692
2011-01-14 14:17 Brian Lewis Note Added: 0024693
2011-01-17 09:59 Brad King File Added: 28a0403c+0001-Recognize-SCO-UnixWare-C-C-compilers-11700.patch
2011-01-17 10:00 Brad King File Added: 28a0403c+0002-Factor-SCO-compiler-info-out-of-platform-file-11700.patch
2011-01-17 10:01 Brad King Note Added: 0024749
2011-01-17 10:22 Brian Lewis Note Added: 0024751
2011-01-17 10:36 Brad King Note Added: 0024753
2011-01-17 10:36 Brad King Status assigned => closed
2011-01-17 10:36 Brad King Resolution open => fixed
2011-01-31 16:05 David Cole Fixed in Version => CMake 2.8.4
2011-01-31 16:05 David Cole Target Version => CMake 2.8.4


Copyright © 2000 - 2018 MantisBT Team