2010-08-11 08:51:32 +08:00
|
|
|
# This file provides information and services to the final user.
|
|
|
|
|
2014-02-10 00:35:51 +08:00
|
|
|
@LLVM_CONFIG_CODE@
|
|
|
|
|
2012-02-14 02:48:10 +08:00
|
|
|
set(LLVM_VERSION_MAJOR @LLVM_VERSION_MAJOR@)
|
|
|
|
set(LLVM_VERSION_MINOR @LLVM_VERSION_MINOR@)
|
2014-04-17 07:15:28 +08:00
|
|
|
set(LLVM_VERSION_PATCH @LLVM_VERSION_PATCH@)
|
2018-08-09 04:44:58 +08:00
|
|
|
set(LLVM_VERSION_SUFFIX @LLVM_VERSION_SUFFIX@)
|
2011-04-11 22:52:39 +08:00
|
|
|
set(LLVM_PACKAGE_VERSION @PACKAGE_VERSION@)
|
2011-02-04 04:57:36 +08:00
|
|
|
|
2016-06-25 19:31:50 +08:00
|
|
|
set(LLVM_BUILD_TYPE @CMAKE_BUILD_TYPE@)
|
|
|
|
|
2019-09-23 22:11:48 +08:00
|
|
|
set(LLVM_USE_CRT_DEBUG @LLVM_USE_CRT_DEBUG@)
|
|
|
|
set(LLVM_USE_CRT_MINSIZEREL @LLVM_USE_CRT_MINSIZEREL@)
|
|
|
|
set(LLVM_USE_CRT_RELEASE @LLVM_USE_CRT_RELEASE@)
|
|
|
|
set(LLVM_USE_CRT_RELWITHDEBINFO @LLVM_USE_CRT_RELWITHDEBINFO@)
|
|
|
|
|
2010-08-09 11:26:43 +08:00
|
|
|
set(LLVM_COMMON_DEPENDS @LLVM_COMMON_DEPENDS@)
|
|
|
|
|
2014-02-21 22:17:07 +08:00
|
|
|
set(LLVM_AVAILABLE_LIBS @LLVM_AVAILABLE_LIBS@)
|
2010-08-09 11:26:43 +08:00
|
|
|
|
[CMake] Followup for r337366: Only export LLVM_LINK_LLVM_DYLIB if it's set to ON
Summary:
As it was, always exporting LLVM_LINK_LLVM_DYLIB caused out-of-tree
clients to lose the ability to link against the dylib, even if in-tree tools did
not. By only exporting the setting if it is enabled, out-of-tree clients get the
correct default, but may still choose if they can.
Reviewers: mgorny, beanz, labath, bogner, chandlerc
Reviewed By: bogner, chandlerc
Subscribers: bollu, llvm-commits
Differential Revision: https://reviews.llvm.org/D49843
llvm-svn: 338119
2018-07-27 18:57:51 +08:00
|
|
|
@LLVM_CONFIG_LINK_LLVM_DYLIB@
|
[CMake] Export the LLVM_LINK_LLVM_DYLIB setting
Summary:
When building out-of-tree tools, there are several macros available to
automate linking against llvm. An examples is `add_llvm_executable`, or
the clang variant of this.
These macros use the LLVM_LINK_LLVM_DYLIB option to decide whether to
link against libraries defined by setting LLVM_LINK_COMPONENTS or to
link against libLLVM instead. Currently this is problematic in
out-of-tree targets, because they cannot identify whether this option is
required or even available. If the option was enabled in LLVM's own
build, the clang libraries are built against libLLVM, so a client
linking against those must link against it too. On the other hand the
client can't just always link against it, because it might not be
available.
This is related to D44391, but that change assumed the client knew
whether they wanted the dylib or not.
Reviewers: mgorny, beanz, labath
Reviewed By: mgorny
Subscribers: bollu, llvm-commits
Differential Revision: https://reviews.llvm.org/D49193
llvm-svn: 337366
2018-07-18 16:53:31 +08:00
|
|
|
|
2018-03-14 17:28:38 +08:00
|
|
|
set(LLVM_DYLIB_COMPONENTS @LLVM_DYLIB_COMPONENTS@)
|
|
|
|
|
2010-09-29 23:28:55 +08:00
|
|
|
set(LLVM_ALL_TARGETS @LLVM_ALL_TARGETS@)
|
|
|
|
|
2010-08-09 11:26:43 +08:00
|
|
|
set(LLVM_TARGETS_TO_BUILD @LLVM_TARGETS_TO_BUILD@)
|
|
|
|
|
2011-04-13 23:25:31 +08:00
|
|
|
set(LLVM_TARGETS_WITH_JIT @LLVM_TARGETS_WITH_JIT@)
|
|
|
|
|
2011-07-30 07:52:01 +08:00
|
|
|
@all_llvm_lib_deps@
|
|
|
|
|
2011-02-23 19:28:40 +08:00
|
|
|
set(TARGET_TRIPLE "@TARGET_TRIPLE@")
|
|
|
|
|
2015-04-01 19:46:15 +08:00
|
|
|
set(LLVM_ABI_BREAKING_CHECKS @LLVM_ABI_BREAKING_CHECKS@)
|
|
|
|
|
2014-07-21 22:17:15 +08:00
|
|
|
set(LLVM_ENABLE_ASSERTIONS @LLVM_ENABLE_ASSERTIONS@)
|
|
|
|
|
2014-07-22 23:41:33 +08:00
|
|
|
set(LLVM_ENABLE_EH @LLVM_ENABLE_EH@)
|
|
|
|
|
|
|
|
set(LLVM_ENABLE_RTTI @LLVM_ENABLE_RTTI@)
|
|
|
|
|
2013-08-12 17:49:17 +08:00
|
|
|
set(LLVM_ENABLE_TERMINFO @LLVM_ENABLE_TERMINFO@)
|
2013-08-07 16:47:36 +08:00
|
|
|
|
2010-08-09 11:47:11 +08:00
|
|
|
set(LLVM_ENABLE_THREADS @LLVM_ENABLE_THREADS@)
|
2010-08-09 11:26:43 +08:00
|
|
|
|
2019-10-01 04:03:59 +08:00
|
|
|
set(LLVM_ENABLE_UNWIND_TABLES @LLVM_ENABLE_UNWIND_TABLES@)
|
|
|
|
|
2013-04-23 16:28:39 +08:00
|
|
|
set(LLVM_ENABLE_ZLIB @LLVM_ENABLE_ZLIB@)
|
|
|
|
|
2018-01-20 01:47:03 +08:00
|
|
|
set(LLVM_LIBXML2_ENABLED @LLVM_LIBXML2_ENABLED@)
|
|
|
|
|
2019-03-26 01:47:45 +08:00
|
|
|
set(LLVM_WITH_Z3 @LLVM_WITH_Z3@)
|
|
|
|
|
2017-01-03 02:19:35 +08:00
|
|
|
set(LLVM_ENABLE_DIA_SDK @LLVM_ENABLE_DIA_SDK@)
|
|
|
|
|
2010-08-11 08:51:32 +08:00
|
|
|
set(LLVM_NATIVE_ARCH @LLVM_NATIVE_ARCH@)
|
|
|
|
|
2011-02-04 04:57:36 +08:00
|
|
|
set(LLVM_ENABLE_PIC @LLVM_ENABLE_PIC@)
|
|
|
|
|
2016-07-01 22:22:52 +08:00
|
|
|
set(LLVM_BUILD_32_BITS @LLVM_BUILD_32_BITS@)
|
|
|
|
|
2017-02-10 09:59:20 +08:00
|
|
|
if (NOT "@LLVM_PTHREAD_LIB@" STREQUAL "")
|
|
|
|
set(LLVM_PTHREAD_LIB "@LLVM_PTHREAD_LIB@")
|
|
|
|
endif()
|
|
|
|
|
2015-09-30 18:34:06 +08:00
|
|
|
set(LLVM_ENABLE_PLUGINS @LLVM_ENABLE_PLUGINS@)
|
2016-05-26 19:16:43 +08:00
|
|
|
set(LLVM_EXPORT_SYMBOLS_FOR_PLUGINS @LLVM_EXPORT_SYMBOLS_FOR_PLUGINS@)
|
2015-09-30 18:34:06 +08:00
|
|
|
set(LLVM_PLUGIN_EXT @LLVM_PLUGIN_EXT@)
|
|
|
|
|
2011-04-04 00:12:38 +08:00
|
|
|
set(LLVM_ON_UNIX @LLVM_ON_UNIX@)
|
2011-02-04 04:57:36 +08:00
|
|
|
|
2014-12-29 19:16:23 +08:00
|
|
|
set(LLVM_LIBDIR_SUFFIX @LLVM_LIBDIR_SUFFIX@)
|
|
|
|
|
2016-09-02 00:43:39 +08:00
|
|
|
set(LLVM_INCLUDE_DIRS "@LLVM_CONFIG_INCLUDE_DIRS@")
|
|
|
|
set(LLVM_LIBRARY_DIRS "@LLVM_CONFIG_LIBRARY_DIRS@")
|
|
|
|
|
2019-02-13 16:34:40 +08:00
|
|
|
# These variables are duplicated for install tree but they have different
|
|
|
|
# values for build tree. LLVM_INCLUDE_DIRS contains both source
|
|
|
|
# and generated include directories while the following variables have
|
|
|
|
# them split.
|
|
|
|
set(LLVM_INCLUDE_DIR "@LLVM_CONFIG_INCLUDE_DIR@")
|
|
|
|
set(LLVM_MAIN_INCLUDE_DIR "@LLVM_CONFIG_MAIN_INCLUDE_DIR@")
|
2016-05-11 03:45:17 +08:00
|
|
|
set(LLVM_LIBRARY_DIR "@LLVM_CONFIG_LIBRARY_DIRS@")
|
2016-09-02 00:43:39 +08:00
|
|
|
|
2015-09-30 18:34:06 +08:00
|
|
|
set(LLVM_DEFINITIONS "@LLVM_DEFINITIONS@")
|
2014-02-10 00:35:51 +08:00
|
|
|
set(LLVM_CMAKE_DIR "@LLVM_CONFIG_CMAKE_DIR@")
|
2016-06-23 05:01:19 +08:00
|
|
|
set(LLVM_BINARY_DIR "@LLVM_CONFIG_BINARY_DIR@")
|
2014-07-23 01:48:51 +08:00
|
|
|
set(LLVM_TOOLS_BINARY_DIR "@LLVM_CONFIG_TOOLS_BINARY_DIR@")
|
2016-06-10 01:22:02 +08:00
|
|
|
set(LLVM_TOOLS_INSTALL_DIR "@LLVM_TOOLS_INSTALL_DIR@")
|
2017-12-01 09:44:26 +08:00
|
|
|
set(LLVM_HAVE_OPT_VIEWER_MODULES @LLVM_HAVE_OPT_VIEWER_MODULES@)
|
2019-06-05 16:29:24 +08:00
|
|
|
set(LLVM_CONFIGURATION_TYPES @CMAKE_CONFIGURATION_TYPES@)
|
2019-08-31 07:16:02 +08:00
|
|
|
set(LLVM_ENABLE_SHARED_LIBS @BUILD_SHARED_LIBS@)
|
2011-04-11 00:17:49 +08:00
|
|
|
|
2014-02-10 00:36:28 +08:00
|
|
|
if(NOT TARGET LLVMSupport)
|
2016-09-10 03:45:34 +08:00
|
|
|
set(LLVM_EXPORTED_TARGETS "@LLVM_CONFIG_EXPORTS@")
|
2014-02-10 00:36:28 +08:00
|
|
|
include("@LLVM_CONFIG_EXPORTS_FILE@")
|
2016-09-10 03:45:34 +08:00
|
|
|
@llvm_config_include_buildtree_only_exports@
|
2014-02-10 00:36:28 +08:00
|
|
|
endif()
|
|
|
|
|
2017-07-28 23:33:35 +08:00
|
|
|
# By creating intrinsics_gen here, subprojects that depend on LLVM's
|
|
|
|
# tablegen-generated headers can always depend on this target whether building
|
|
|
|
# in-tree with LLVM or not.
|
|
|
|
if(NOT TARGET intrinsics_gen)
|
|
|
|
add_custom_target(intrinsics_gen)
|
|
|
|
endif()
|
|
|
|
|
2017-02-10 02:14:12 +08:00
|
|
|
set_property(GLOBAL PROPERTY LLVM_TARGETS_CONFIGURED On)
|
2014-02-10 00:35:51 +08:00
|
|
|
include(${LLVM_CMAKE_DIR}/LLVM-Config.cmake)
|