diff options
author | Chris Bieneman <beanz@apple.com> | 2014-10-23 17:22:14 +0000 |
---|---|---|
committer | Chris Bieneman <beanz@apple.com> | 2014-10-23 17:22:14 +0000 |
commit | adffd01498bbbe16a9bc63009cdbd62954c3fa8b (patch) | |
tree | 7be15896438f1583bfe8e888f395dda6b7909313 /llvm/tools/llvm-shlib/libllvm.cpp | |
parent | acb64e8875a7191c48d2240a2c8de74736ef8ac6 (diff) | |
download | bcm5719-llvm-adffd01498bbbe16a9bc63009cdbd62954c3fa8b.tar.gz bcm5719-llvm-adffd01498bbbe16a9bc63009cdbd62954c3fa8b.zip |
Adding llvm-shlib to CMake build system with a few new bells and whistles
Summary:
This patch adds a new CMake build setting LLVM_BUILD_LLVM_DYLIB, which defaults to OFF. When set to ON, this will generate a shared library containing most of LLVM. The contents of the shared library can be overriden by specifying LLVM_DYLIB_COMPONENTS. LLVM_DYLIB_COMPONENTS can be set to a semi-colon delimited list of any LLVM components that you llvm-config can resolve.
On Windows, unless you are using Cygwin, you must specify an explicit symbol export file using LLVM_EXPORTED_SYMBOL_FILE. On Cygwin and all unix-like platforms if you do not specify LLVM_EXPORTED_SYMBOL_FILE, an export file containing only the LLVM C API will be auto-generated from the list of LLVM components specified in LLVM_DYLIB_COMPONENTS.
Reviewers: rnk
Reviewed By: rnk
Subscribers: rnk, llvm-commits
Differential Revision: http://reviews.llvm.org/D5890
llvm-svn: 220490
Diffstat (limited to 'llvm/tools/llvm-shlib/libllvm.cpp')
-rw-r--r-- | llvm/tools/llvm-shlib/libllvm.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/tools/llvm-shlib/libllvm.cpp b/llvm/tools/llvm-shlib/libllvm.cpp new file mode 100644 index 00000000000..40b4f66b073 --- /dev/null +++ b/llvm/tools/llvm-shlib/libllvm.cpp @@ -0,0 +1,13 @@ +//===-libllvm.cpp - LLVM Shared Library -----------------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file is empty and serves only the purpose of making CMake happy because +// you can't define a target with no sources. +// +//===----------------------------------------------------------------------===// |