diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-09-09 13:36:00 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-09-09 13:36:00 +0000 |
commit | d511726ce9c03b59627df9fa97cc267762bf8fcd (patch) | |
tree | 66abc716ac2f0cba37448f96a5a30f05da6b11cc /clang/lib/Driver/ToolChains.cpp | |
parent | d7b073e0aabb1ffab720a7278eee37a4804a7def (diff) | |
download | bcm5719-llvm-d511726ce9c03b59627df9fa97cc267762bf8fcd.tar.gz bcm5719-llvm-d511726ce9c03b59627df9fa97cc267762bf8fcd.zip |
[Solaris] Use the GCC Installation detector to add the C++ include paths.
Patch by Xan López!
llvm-svn: 247144
Diffstat (limited to 'clang/lib/Driver/ToolChains.cpp')
-rw-r--r-- | clang/lib/Driver/ToolChains.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/clang/lib/Driver/ToolChains.cpp b/clang/lib/Driver/ToolChains.cpp index d7989a7993f..7f0b9bb7472 100644 --- a/clang/lib/Driver/ToolChains.cpp +++ b/clang/lib/Driver/ToolChains.cpp @@ -2962,6 +2962,31 @@ Tool *Solaris::buildAssembler() const { Tool *Solaris::buildLinker() const { return new tools::solaris::Linker(*this); } +void Solaris::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, + ArgStringList &CC1Args) const { + if (DriverArgs.hasArg(options::OPT_nostdlibinc) || + DriverArgs.hasArg(options::OPT_nostdincxx)) + return; + + // Include the support directory for things like xlocale and fudged system + // headers. + addSystemInclude(DriverArgs, CC1Args, "/usr/include/c++/v1/support/solaris"); + + if (GCCInstallation.isValid()) { + GCCVersion Version = GCCInstallation.getVersion(); + addSystemInclude(DriverArgs, CC1Args, + getDriver().SysRoot + "/usr/gcc/" + + Version.MajorStr + "." + + Version.MinorStr + + "/include/c++/" + Version.Text); + addSystemInclude(DriverArgs, CC1Args, + getDriver().SysRoot + "/usr/gcc/" + Version.MajorStr + + "." + Version.MinorStr + "/include/c++/" + + Version.Text + "/" + + GCCInstallation.getTriple().str()); + } +} + /// Distribution (very bare-bones at the moment). enum Distro { |