]> granicus.if.org Git - clang/commit
[Solaris] gcc toolchain handling revamp
authorFedor Sergeev <fedor.sergeev@azul.com>
Tue, 23 Jan 2018 12:23:52 +0000 (12:23 +0000)
committerFedor Sergeev <fedor.sergeev@azul.com>
Tue, 23 Jan 2018 12:23:52 +0000 (12:23 +0000)
commitb0e59244792fe591689e3b9e99035302538973b5
treeee5dce9c5575d3a48db0aee2e72da7122ae3947d
parentee026abc72c6d68c7006f4252ba0b92ce23c661c
[Solaris] gcc toolchain handling revamp

Summary:
General idea is to utilize generic (mostly Generic_GCC) code
and get rid of Solaris-specific handling as much as possible.

In particular:
- scanLibDirForGCCTripleSolaris was removed, relying on generic
  CollectLibDirsAndTriples

- findBiarchMultilibs is now properly utilized to switch between
   m32 and m64 include & lib paths on Solaris

- C system include handling copied from Linux (bar multilib hacks)

Fixes PR24606.

Reviewers: dlj, rafael, jyknight, theraven, tstellar

Reviewed By: jyknight

Subscribers: aaron.ballman, mgorny, krytarowski, ro, joerg, cfe-commits

Differential Revision: https://reviews.llvm.org/D35755

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@323193 91177308-0d34-0410-b5e6-96231b3b80d8
39 files changed:
lib/Driver/ToolChains/Gnu.cpp
lib/Driver/ToolChains/Gnu.h
lib/Driver/ToolChains/Solaris.cpp
lib/Driver/ToolChains/Solaris.h
lib/Frontend/InitHeaderSearch.cpp
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/include/c++/4.8.2/sparc-sun-solaris2.11/bits/gthr.h [moved from test/Driver/Inputs/sparc-sun-solaris2.11/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/crt1.o with 100% similarity]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/include/c++/4.8.2/typeinfo [moved from test/Driver/Inputs/sparc-sun-solaris2.11/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/crtbegin.o with 100% similarity]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/crt1.o [moved from test/Driver/Inputs/sparc-sun-solaris2.11/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/crtend.o with 100% similarity]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/crtbegin.o [moved from test/Driver/Inputs/sparc-sun-solaris2.11/usr/lib/crti.o with 100% similarity]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/crtend.o [moved from test/Driver/Inputs/sparc-sun-solaris2.11/usr/lib/crtn.o with 100% similarity]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/sparcv9/crt1.o [moved from test/Driver/Inputs/sparc-sun-solaris2.11/usr/lib/ld.so.1 with 100% similarity]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/sparcv9/crtbegin.o [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/gcc/sparc-sun-solaris2.11/4.8.2/sparcv9/crtend.o [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/libatomic.a [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/gcc/4.8/lib/sparcv9/libatomic.a [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/lib/crti.o [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/lib/crtn.o [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/lib/ld.so.1 [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/lib/sparcv9/crti.o [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/lib/sparcv9/crtn.o [new file with mode: 0644]
test/Driver/Inputs/solaris_sparc_tree/usr/lib/sparcv9/ld.so.1 [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/include/c++/4.9.4/i386-pc-solaris2.11/bits/gthr.h [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/include/c++/4.9.4/typeinfo [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/lib/amd64/libatomic.a [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/lib/gcc/i386-pc-solaris2.11/4.9.4/amd64/crtbegin.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/lib/gcc/i386-pc-solaris2.11/4.9.4/amd64/crtend.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/lib/gcc/i386-pc-solaris2.11/4.9.4/crtbegin.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/lib/gcc/i386-pc-solaris2.11/4.9.4/crtend.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/gcc/4.9/lib/libatomic.a [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/amd64/crt1.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/amd64/crti.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/amd64/crtn.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/amd64/ld.so.1 [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/crt1.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/crti.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/crtn.o [new file with mode: 0644]
test/Driver/Inputs/solaris_x86_tree/usr/lib/ld.so.1 [new file with mode: 0644]
test/Driver/solaris-header-search.cpp
test/Driver/solaris-ld.c