MantisBT - CMake | |||||||||||||||
| View Issue Details | |||||||||||||||
| ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||||
| 0004462 | CMake | CMake | public | 2007-02-14 09:29 | 2016-02-07 07:18 | ||||||||||
| Reporter | Ludovic Rousseau | ||||||||||||||
| Assigned To | Brad King | ||||||||||||||
| Priority | urgent | Severity | major | Reproducibility | always | ||||||||||
| Status | closed | Resolution | fixed | ||||||||||||
| Platform | OS | OS Version | |||||||||||||
| Product Version | |||||||||||||||
| Target Version | Fixed in Version | ||||||||||||||
| Summary | 0004462: Do not use -isystem on Mac OS X | ||||||||||||||
| Description | Mac OS X does not support -isystem instead of -I The compilation fails with errors like: /usr/include/wx-2.5/wx/defs.h:528: error: template with C linkage /usr/include/wx-2.5/wx/string.h:940: error: declaration of C function 'wxString operator+(const wxString&, wxChar)' conflicts with /usr/include/wx-2.5/wx/string.h:938: error: previous declaration 'wxString operator+(const wxString&, const wxString&)' here /usr/include/wx-2.5/wx/string.h:942: error: declaration of C function 'wxString operator+(wxChar, const wxString&)' conflicts with /usr/include/wx-2.5/wx/string.h:940: error: previous declaration 'wxString operator+(const wxString&, wxChar)' here /usr/include/wx-2.5/wx/string.h:944: error: declaration of C function 'wxString operator+(const wxString&, const wxChar*)' conflicts with /usr/include/wx-2.5/wx/string.h:942: error: previous declaration 'wxString operator+(wxChar, const wxString&)' here I already reported a similar bug (Bug 0003453 - FindwxWindows.cmake: do not modify the output of wx-config --cxxflags) so that -isystem is not used on Mac OS X for wx-widgets. It now looks like cmake 2.4.6 uses -isystem at a higher level and not just if wx-widgets is used. Proposed patch: --- ./Modules/Platform/gcc.cmake.orig 2007-02-14 15:03:12.000000000 +0100 +++ ./Modules/Platform/gcc.cmake 2007-02-14 15:26:44.000000000 +0100 @@ -17,6 +17,8 @@ SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-O2 -g") SET (CMAKE_CXX_CREATE_PREPROCESSED_SOURCE "<CMAKE_CXX_COMPILER> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>") SET (CMAKE_CXX_CREATE_ASSEMBLY_SOURCE "<CMAKE_CXX_COMPILER> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>") - SET (CMAKE_INCLUDE_SYSTEM_FLAG_CXX "-isystem ") + IF(NOT APPLE) + SET (CMAKE_INCLUDE_SYSTEM_FLAG_CXX "-isystem ") + ENDIF(NOT APPLE) ENDIF(CMAKE_COMPILER_IS_GNUCXX) I don't know if CMAKE_INCLUDE_SYSTEM_FLAG_C must be changed the same way CMAKE_INCLUDE_SYSTEM_FLAG_CXX is. Maybe yes. Bye | ||||||||||||||
| Steps To Reproduce | |||||||||||||||
| Additional Information | |||||||||||||||
| Tags | No tags attached. | ||||||||||||||
| Relationships |
| ||||||||||||||
| Attached Files | |||||||||||||||
| Issue History | |||||||||||||||
| Date Modified | Username | Field | Change | ||||||||||||
| 2011-01-07 16:49 | Brad King | Relationship added | related to 0010837 | ||||||||||||
| 2016-02-07 07:18 | Gregor Jasny | Relationship added | related to 0015953 | ||||||||||||
| Notes | |||||
|
|
|||||
|
|
||||