llvm-capstone/llvm
Andy Gibbs 3ef5ed1ec0 Provide bootstrap support to build only llvm+clang when using cmake.
Where a source tree is complete with lld, lldb and polly, it may not be possible to use cmake to configure build scripts if the host compiler it not capable of compiling these sub-projects.  This change makes it possible to first build a bootstrap clang compiler when can then be used to build a complete llvm toolchain.  An example bootstrap build sequence could be as follows:

$ mkdir bootstrap
$ cd bootstrap
$ cmake -G 'Unix Makefiles'
        -DCMAKE_BUILD_TYPE:STRING=Release
        -DCMAKE_PREFIX_PATH:STRING=$(pwd)
        -DLLVM_TARGETS_TO_BUILD:STRING=host
        -DLLVM_INCLUDE_TOOLS:STRING=bootstrap-only
        ../source
$ make clang  # build clang only for host

$ cd ..
$ export CC=$(realpath bootstrap/bin)/clang
$ export CXX=$(realpath bootstrap/bin)/clang++

$ mkdir final
$ cd final
$ cmake -G 'Unix Makefiles' ../source
$ make all check-all

llvm-svn: 184924
2013-06-26 08:05:08 +00:00
..
autoconf Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
bindings We're in 3.4 land now. 2013-05-07 20:31:28 +00:00
cmake Support using "host" as a target in LLVM_TARGETS_TO_BUILD when using cmake. 2013-06-26 07:57:53 +00:00
docs TableGen: Generate a function for getting operand indices based on their defined names 2013-06-25 21:22:09 +00:00
examples ExceptionDemo: Corresponding to r181820, SectionMemoryManager should belong to RTDyldMemoryManager. 2013-05-14 23:05:00 +00:00
include Add a simpler version of remove_all. 2013-06-26 06:06:54 +00:00
lib Remove calls to Path in #ifdefs that don't seem to be used in any of the bots :-( 2013-06-26 06:10:32 +00:00
projects Filter out dragonegg when checked out into a projects subdirectory. 2013-06-24 07:21:35 +00:00
runtime Remove "-Wl,-seg1addr -Wl,0xE0000000" from link options. 2013-06-04 15:26:37 +00:00
test SLPVectorizer: support slp-vectorization of PHINodes between basic blocks 2013-06-25 23:04:09 +00:00
tools Provide bootstrap support to build only llvm+clang when using cmake. 2013-06-26 08:05:08 +00:00
unittests Port GetMainExecutable over to PathV2. 2013-06-26 05:01:35 +00:00
utils TableGen: Generate a function for getting operand indices based on their defined names 2013-06-25 21:22:09 +00:00
.arcconfig
.gitignore
CMakeLists.txt Support using "host" as a target in LLVM_TARGETS_TO_BUILD when using cmake. 2013-06-26 07:57:53 +00:00
CODE_OWNERS.TXT Add myself as SystemZ code owner 2013-05-08 14:41:29 +00:00
configure Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
CREDITS.TXT Identify me on IRC. 2013-06-18 22:09:36 +00:00
LICENSE.TXT Be more specific and capitalize filenames. 2013-05-21 21:22:34 +00:00
llvm.spec.in
LLVMBuild.txt
Makefile Improved svn repo searching for 'make update' 2013-01-28 03:19:57 +00:00
Makefile.common
Makefile.config.in Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
Makefile.rules Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
README.txt test 2013-04-17 05:34:03 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.