summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorChuck Cranor <chuck@ece.cmu.edu>2019-01-24 15:30:03 (GMT)
committerChuck Cranor <chuck@ece.cmu.edu>2019-01-25 14:48:00 (GMT)
commit568343767e5852f0e5751341a3aa44ab6feffb8a (patch)
tree155402b29ad86aaefdf3838fc42ba5594ad798b2 /Source
parent40628b2519ae1553a33f701cf46ee8fbbd013b85 (diff)
downloadCMake-568343767e5852f0e5751341a3aa44ab6feffb8a.zip
CMake-568343767e5852f0e5751341a3aa44ab6feffb8a.tar.gz
CMake-568343767e5852f0e5751341a3aa44ab6feffb8a.tar.bz2
ParseImplicitIncludeInfo: handle/add SunPro, XL, and -nostdinc test cases
Add parser code for compiler IDs SunPro and XL. For SunPro, /usr/include appears to be hardwired in and it does not have a -nostdinc-type flag. For XL, the "xlc" and "xlC" commands determine if you are C or C++ based on input filename. So compiling x.c with "xlC" reverts to C and compiling x.cc with "xlc" upgrades to CXX. System include paths are specified by: -qc_stdinc=[path] and -qgcc_c_stdinc=[path] (for C) -qcpp_stdinc=[path] and -qgcc_cpp_stdinc=[path] (for CXX) If you specify "-qnostdinc" then the above flags are ignored. Specifying an empty path reverts the value to the default path (e.g. "-qgcc_c_stdinc=" reverts that to the default). Adjust the code to handle parsing the case where the user specifies additional compiler include flags via CMAKE_C_FLAGS/CMAKE_CXX_FLAGS. For example: "-DCMAKE_C_FLAGS=-nostdinc" ... note that gcc and clang output slightly differ when -nostdinc is specified (clang skips printing 'search starts here:' with the angle brackets, gcc always prints it). Enable sunos-{C,CXX}-SunPro test cases and add XL test cases. Also add a few -nostdinc style tests.
Diffstat (limited to 'Source')
0 files changed, 0 insertions, 0 deletions