Skip to content
  1. Dec 29, 2013
  2. Dec 20, 2013
  3. Dec 19, 2013
  4. Dec 16, 2013
  5. Dec 04, 2013
  6. Dec 02, 2013
  7. Aug 27, 2013
  8. Aug 24, 2013
  9. Aug 21, 2013
    • Argyrios Kyrtzidis's avatar
      [CMake] Automatically pick up subdirectories in llvm/tools as 'external... · 7eec9d0c
      Argyrios Kyrtzidis authored
      [CMake] Automatically pick up subdirectories in llvm/tools as 'external projects' if they contain a 'CMakeLists.txt' file.
      
      Allow CMake to pick up external projects in llvm/tools without the need to modify the "llvm/tools/CMakeLists.txt" file.
      This makes it easier to work with projects that live in other repositories, without needing to specify each one in "llvm/tools/CMakeLists.txt".
      
      llvm-svn: 188921
      7eec9d0c
  10. Aug 14, 2013
  11. Aug 07, 2013
  12. Apr 21, 2013
  13. Feb 14, 2013
    • Tim Northover's avatar
      Use correct host/target CMake variables to define lit variables. · bfe84685
      Tim Northover authored
      CMake and autotools disagree on what "host" means in a cross-compilation
      context. Autotools (and lit) take it to be the machine the binaries being
      compiled now will run on. CMake takes it to be the machine actually compiling
      the binaries now.
      
      This change makes lit.site-cfg more consistent between autotools and CMake,
      allowing lit tests (particularly in ExecutionEngine) to run correctly when
      cross-compiled with CMake
      
      llvm-svn: 175179
      bfe84685
  14. Jan 27, 2013
  15. Dec 24, 2012
  16. Dec 19, 2012
  17. Oct 10, 2012
  18. Oct 05, 2012
    • NAKAMURA Takumi's avatar
      [CMake] Enhance add_llvm_external_project. · 700cd405
      NAKAMURA Takumi authored
        - Substitute hyphen to underscore, s/-/_/g, as the variable name.
        - Additional parameter can be specified as the name of directory.
      
      e.g.) add_llvm_external_project(clang-tools-extra extra)
      
        - LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR=/path/to/llvm-srcroot/tools/clang/tools/extra, by default.
        - Build directory is in ${CMAKE_CURRENT_BINARY_DIR}/extra
      
      llvm-svn: 165311
      700cd405
  19. Aug 04, 2012
  20. Jul 12, 2012
  21. Jul 02, 2012
  22. Jun 30, 2012
  23. Jun 29, 2012
  24. Jun 28, 2012
  25. Jun 21, 2012
    • Chandler Carruth's avatar
      Avoid using the recently added APPEND_STRING feature. This should · 582e8a5d
      Chandler Carruth authored
      restore support for CMake versions before 2.8.6 -- sorry for the
      trouble!
      
      llvm-svn: 158930
      582e8a5d
    • Chandler Carruth's avatar
      Completely refactor the structuring of unittest CMake files to match the · 94d02518
      Chandler Carruth authored
      Makefiles, the CMake files in every other part of the LLVM tree, and
      sanity.
      
      This should also restore the output tree structure of all the unit
      tests, sorry for breaking that, and thanks for letting me know.
      
      The fundamental change is to put a CMakeLists.txt file in the unittest
      directory, with a single test binary produced from it. This has several
      advantages:
      
      - No more weird directory stripping in the unittest macro, allowing it
        to be used more readily in other projects.
      - No more directory prefixes on all the source files.
      - Allows correct and precise use of LLVM's per-directory dependency
        system.
      - Allows use of the checking logic for source files that have not been
        added to the CMake build. This uncovered a file being skipped with
        CMake in LLVM and one in Clang's unit tests.
      - Makes Specifying conditional compilation or other custom logic for JIT
        tests easier.
      
      It did require adding the concept of an explicit 'optional' source file
      to the CMake build so that the missing-file check can skip cases where
      the file is *supposed* to be missing. =]
      
      This is another chunk of refactoring the CMake build in order to make it
      usable for other clients like CompilerRT / ASan / TSan.
      
      Note that this is interdependent with a Clang CMake change.
      
      llvm-svn: 158909
      94d02518
    • Chandler Carruth's avatar
      Factor the logic for setting up a GoogleTest unit test executable into · a5d42f83
      Chandler Carruth authored
      a helper function in CMake. This will allow us to share all of this
      logic with Clang, and eventually CompilerRT.
      
      llvm-svn: 158896
      a5d42f83
    • Chandler Carruth's avatar
      Remove one of the LLVM-specific CMake hacks in favor of standard CMake · e530d2ba
      Chandler Carruth authored
      facilities.
      
      This was only used in one place in LLVM, and was used pervasively (but
      with different code!) in Clang. It has no advantages over the standard
      CMake facilities and in some cases disadvantages.
      
      llvm-svn: 158889
      e530d2ba
  26. Apr 26, 2012
    • Michael J. Spencer's avatar
      [CMake] Restructure how Clang, Polly and other external projects get included. · e734f541
      Michael J. Spencer authored
      While making lld build under the tools directory I decided to refactor how this
      works.
      
      There is now a macro, add_llvm_external_project, which takes the name of the
      expected subdirectory. This sets up two CMake options.
      
       * LLVM_EXTERNAL_${NAME}_SOURCE_DIR
           This is the path to the source. It defaults to
           ${CMAKE_CURRENT_SOURCE_DIR}/${name}.
       * LLVM_EXTERNAL_${NAME}_BUILD
           Enable and disable building the tool as part of LLVM.
      
      I chose LLVM_EXTERNAL_${NAME} as a prefix so they all show up together in the
      GUI.
      
      llvm-svn: 155654
      e734f541
  27. Nov 29, 2011
  28. Jul 30, 2011
    • Chandler Carruth's avatar
      Remove yet another buried and hidden implicit dependency: every single · b58053bb
      Chandler Carruth authored
      sub-library for the targets depended on the core target CodeGen library.
      This completely undermined the careful work to separate the those
      libraries, especially the MC-layer ones. This surfaced as circular
      dependencies when the libraries were built as shared libraries where
      CMake doesn't allow cycles.
      
      This should fix PR10537. I'll watch the bots to see if there is fallout
      on other platforms.
      
      llvm-svn: 136565
      b58053bb
    • Chandler Carruth's avatar
      Make my attempt to build up global deps variables actually utilize · 68b23116
      Chandler Carruth authored
      globally scoped constructs. Also, round-trip these dependencies through
      the LLVMConfig.cmake.in file thata is used by CMake-based clients of
      "installed" (or built) LLVM trees.
      
      llvm-svn: 136543
      68b23116
  29. Jul 29, 2011
    • Chandler Carruth's avatar
      Rewrite the CMake build to use explicit dependencies between libraries, · 9d7feab3
      Chandler Carruth authored
      specified in the same file that the library itself is created. This is
      more idiomatic for CMake builds, and also allows us to correctly specify
      dependencies that are missed due to bugs in the GenLibDeps perl script,
      or change from compiler to compiler. On Linux, this returns CMake to
      a place where it can relably rebuild several targets of LLVM.
      
      I have tried not to change the dependencies from the ones in the current
      auto-generated file. The only places I've really diverged are in places
      where I was seeing link failures, and added a dependency. The goal of
      this patch is not to start changing the dependencies, merely to move
      them into the correct location, and an explicit form that we can control
      and change when necessary.
      
      This also removes a serialization point in the build because we don't
      have to scan all the libraries before we begin building various tools.
      We no longer have a step of the build that regenerates a file inside the
      source tree. A few other associated cleanups fall out of this.
      
      This isn't really finished yet though. After talking to dgregor he urged
      switching to a single CMake macro to construct libraries with both
      sources and dependencies in the arguments. Migrating from the two macros
      to that style will be a follow-up patch.
      
      Also, llvm-config is still generated with GenLibDeps.pl, which means it
      still has slightly buggy dependencies. The internal CMake
      'llvm-config-like' macro uses the correct explicitly specified
      dependencies however. A future patch will switch llvm-config generation
      (when using CMake) to be based on these deps as well.
      
      This may well break Windows. I'm getting a machine set up now to dig
      into any failures there. If anyone can chime in with problems they see
      or ideas of how to solve them for Windows, much appreciated.
      
      llvm-svn: 136433
      9d7feab3
Loading