Skip to content
  1. Oct 06, 2011
  2. Oct 05, 2011
  3. Oct 04, 2011
    • Chandler Carruth's avatar
      Now that multiple prefixes are much cheaper to search for GCC · e683a189
      Chandler Carruth authored
      installations, support them when installed directly under the system
      root ('/lib/gcc/...' essentially).
      
      With this, Clang can correctly detect and use a cross-compiling GCC
      installation within a system root and use it.
      
      Again, test cases will be coming in later commits, as I'm going to write
      a few test cases that exercise nearly all of this logic.
      
      llvm-svn: 141121
      e683a189
    • Chandler Carruth's avatar
      Rework the search for a GCC installation still further. This combines · 531f1ff7
      Chandler Carruth authored
      two fundamental changes, as they ended up being interrelated.
      
      The first is to walk from the root down through the filesystem so that
      we prune subtrees which do not exist early. This greatly reduces the
      filesystem traffic of this routine. We store the "best" GCC version we
      encounter, and look at all of the GCC installations available.
      
      Also, we look through GCC versions by scanning the directory rather than
      using a hard-coded list of versions. This has several benefits. It makes
      it much more efficient to locate a GCC installation even in the presence
      of a large number of different options by simply reading the directory
      once. It also future-proofs us as new GCC versions are released and
      installed. We no longer have a hard coded list of version numbers, and
      won't need to manually updated it. We can still filter out known-bad
      versions as needed. Currently I've left in filtering for all GCC
      installations prior to 4.1.1, as that was the first one supported
      previously.
      
      llvm-svn: 141120
      531f1ff7
Loading