Skip to content
  1. Jul 26, 2011
    • Chandler Carruth's avatar
      Clean up a pile of hacks in our CMake build relating to TableGen. · 97c069c1
      Chandler Carruth authored
      The first problem to fix is to stop creating synthetic *Table_gen
      targets next to all of the LLVM libraries. These had no real effect as
      CMake specifies that add_custom_command(OUTPUT ...) directives (what the
      'tablegen(...)' stuff expands to) are implicitly added as dependencies
      to all the rules in that CMakeLists.txt.
      
      These synthetic rules started to cause problems as we started more and
      more heavily using tablegen files from *subdirectories* of the one where
      they were generated. Within those directories, the set of tablegen
      outputs was still available and so these synthetic rules added them as
      dependencies of those subdirectories. However, they were no longer
      properly associated with the custom command to generate them. Most of
      the time this "just worked" because something would get to the parent
      directory first, and run tablegen there. Once run, the files existed and
      the build proceeded happily. However, as more and more subdirectories
      have started using this, the probability of this failing to happen has
      increased. Recently with the MC refactorings, it became quite common for
      me when touching a large enough number of targets.
      
      To add insult to injury, several of the backends *tried* to fix this by
      adding explicit dependencies back to the parent directory's tablegen
      rules, but those dependencies didn't work as expected -- they weren't
      forming a linear chain, they were adding another thread in the race.
      
      This patch removes these synthetic rules completely, and adds a much
      simpler function to declare explicitly that a collection of tablegen'ed
      files are referenced by other libraries. From that, we can add explicit
      dependencies from the smaller libraries (such as every architectures
      Desc library) on this and correctly form a linear sequence. All of the
      backends are updated to use it, sometimes replacing the existing attempt
      at adding a dependency, sometimes adding a previously missing dependency
      edge.
      
      Please let me know if this causes any problems, but it fixes a rather
      persistent and problematic source of build flakiness on our end.
      
      llvm-svn: 136023
      97c069c1
  2. Jul 25, 2011
  3. Apr 29, 2011
    • Nick Lewycky's avatar
      Rename profile_rt.so to libprofile_rt.so under configure+make (it already was · 61aed87a
      Nick Lewycky authored
      under cmake).
      
      Add libprofile_rt.a so that we can tell clang to link against it in --coverage
      mode. Also turn it on by default in cmake builds.
      
      Oscar, this touches a change you made for EXCLUDE_FROM_ALL support -- I think
      I've done the right thing, but please let me know (or fix and commit) if not!
      
      llvm-svn: 130470
      61aed87a
  4. Apr 26, 2011
  5. Apr 05, 2011
  6. Mar 29, 2011
    • Oscar Fuentes's avatar
      Fixed the build of Clang's unit tests on MinGW. Also removed some · 978e5284
      Oscar Fuentes authored
      unnecesary conditionals and introduced a new convenience function.
      
      The problem was that the list of libraries for Clang's unit tests was
      <clang libraries> <system libraries> <llvm libraries>. As the llvm
      libraries references symbols defined on the system libraries, those
      were reported as undefined.
      
      llvm-svn: 128484
      978e5284
  7. Mar 21, 2011
  8. Mar 12, 2011
  9. Feb 22, 2011
  10. Feb 20, 2011
  11. Feb 18, 2011
  12. Dec 22, 2010
  13. Dec 10, 2010
    • NAKAMURA Takumi's avatar
      Add dependency to "make check". · a8c1c3fe
      NAKAMURA Takumi authored
      cmake/modules/AddLLVM.cmake: Add empty "phony" target in add_llvm_loadable_module() even if loadable module were not supported.
      
      llvm-svn: 121455
      a8c1c3fe
  14. Oct 22, 2010
  15. Oct 14, 2010
  16. Sep 25, 2010
    • Oscar Fuentes's avatar
      Reverting "CMake: Don't include tools, unittets, or examples as · 46d8a930
      Oscar Fuentes authored
      available targets unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies
      LLVM_INCLUDE_X"
      
      It breaks the configuration phase when cmake is invoked without
      parameters, it is too complex for the purpose and introduces an
      incovenience for the user (as both LLVM_BUILD_X and LLVM_INCLUDE_X
      must set to OFF for not including X on the build)
      
      llvm-svn: 114795
      46d8a930
  17. Sep 24, 2010
  18. Sep 14, 2010
  19. Sep 11, 2010
  20. Sep 10, 2010
  21. Nov 23, 2009
  22. Nov 10, 2009
  23. Aug 16, 2009
  24. Aug 15, 2009
  25. Aug 14, 2009
  26. Aug 12, 2009
  27. Jun 23, 2009
  28. Jun 12, 2009
  29. Jun 04, 2009
  30. May 27, 2009
Loading