llvm-mirror/tools
Andrew Wilkins e690f5b8b2 tools/llvm-config: improve shared library support
Summary:

This is a re-commit of r257003, which was reverted,
along with the fixes from http://reviews.llvm.org/D15986.

r252532 added support for reporting the monolithic library
when LLVM_BUILD_LLVM_DYLIB is used. This would only be done
if the individual components were not found, and the dynamic
library is found.

This diff extends this as follows:
 - If LLVM_LINK_LLVM_DYLIB is set, then prefer the shared
   library, even if all component libraries exist.
 - Two flags, --link-shared and --link-static are introduced
   to provide explicit guidance. If --link-shared is passed
   and the shared library does not exist, an error results.

Additionally, changed the expected shared library names from
(e.g.) LLVM-3.8.0 to LLVM-3.8. The former exists only in an
installation (and then only in CMake builds I think?), and not
in the build tree; this breaks usage of llvm-config during
builds, e.g. by llvm-go.

Reviewers: DiamondLovesYou, beanz

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D15986

llvm-svn: 258283
2016-01-20 04:03:09 +00:00
..
bugpoint Change linkInModule to take a std::unique_ptr. 2015-12-16 23:16:33 +00:00
bugpoint-passes [bugpoint] Add a named metadata (+their operands) reducer 2015-11-06 00:12:50 +00:00
dsymutil Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
gold Disable use list order on the gold plugin. 2015-12-22 23:45:49 +00:00
llc fix 'the the '; NFC 2015-12-07 19:21:39 +00:00
lli Remove some stale comments and fix a typo as suggested by David Blaikie in his 2016-01-17 01:49:46 +00:00
llvm-ar [llvm-ar] Use failIfError/fail helpers. 2015-11-14 19:00:33 +00:00
llvm-as Support for function summary index bitcode sections and files. 2015-10-04 14:33:43 +00:00
llvm-as-fuzzer [libFuzzer] make LLVMFuzzerTestOneInput (the fuzzer target function) return int instead of void. The actual return value is not *yet* used (and expected to be 0). This change is API breaking, so the fuzzers will need to be updated. 2015-10-02 23:34:06 +00:00
llvm-bcanalyzer [IR] Remove terminatepad 2015-12-14 18:34:23 +00:00
llvm-c-test Deprecate a few C APIs. 2015-12-18 23:46:42 +00:00
llvm-config tools/llvm-config: improve shared library support 2016-01-20 04:03:09 +00:00
llvm-cov [llvm-cov] Adjust column widths for function and file reports 2015-10-21 16:03:32 +00:00
llvm-cxxdump Reapply r250906 with many suggested updates from Rafael Espindola. 2015-11-05 19:24:56 +00:00
llvm-diff llvm-diff: Remove implicit ilist iterator conversions, NFC 2015-10-20 18:17:05 +00:00
llvm-dis Drop materializeAllPermanently. 2015-12-18 20:13:39 +00:00
llvm-dwarfdump llvm-dwarfdump: Add support for dumping .dSYM bundles. 2015-12-23 21:51:13 +00:00
llvm-dwp [MC, COFF] Support link /incremental conditionally 2015-12-21 22:09:27 +00:00
llvm-extract Bring back "Assert that we have all use/users in the getters." 2016-01-15 19:00:20 +00:00
llvm-go tools/llvm-config: improve shared library support 2016-01-20 04:03:09 +00:00
llvm-jitlistener Fix the -DBUILD_SHARED_LIBS=ON build. 2015-07-07 17:48:00 +00:00
llvm-link [ThinLTO] Metadata linking for imported functions 2015-12-17 17:14:09 +00:00
llvm-lto Add a change accidentally left out from r258100 2016-01-18 23:35:24 +00:00
llvm-mc [MC, COFF] Support link /incremental conditionally 2015-12-21 22:09:27 +00:00
llvm-mc-fuzzer [libFuzzer] make LLVMFuzzerTestOneInput (the fuzzer target function) return int instead of void. The actual return value is not *yet* used (and expected to be 0). This change is API breaking, so the fuzzers will need to be updated. 2015-10-02 23:34:06 +00:00
llvm-mcmarkup Explicitly pass ownership of the MemoryBuffer to AddNewSourceBuffer using std::unique_ptr 2014-08-21 20:44:56 +00:00
llvm-nm GlobalValue: use getValueType() instead of getType()->getPointerElementType(). 2016-01-16 20:30:46 +00:00
llvm-objdump [llvm-readobj] Remove dead code. Add an assertion instead. 2016-01-13 04:11:36 +00:00
llvm-pdbdump Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
llvm-profdata [PGO] fix a bug in profile summary computation 2016-01-16 05:29:49 +00:00
llvm-readobj Use new function name. NFC. 2016-01-18 20:55:24 +00:00
llvm-rtdyld Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
llvm-shlib [CMake] Bug 25059 - CMake libllvm.so.$MAJOR.$MINOR shared object name not compatible with ldconfig 2015-11-04 23:11:12 +00:00
llvm-size Reapply r250906 with many suggested updates from Rafael Espindola. 2015-11-05 19:24:56 +00:00
llvm-split Add to the split module utility an SCC based method which allows not to globalize any local variables. 2016-01-18 21:07:13 +00:00
llvm-stress Use CmpInst::Predicate instead of 'unsigned short' in some places. NFC 2015-12-15 06:11:33 +00:00
llvm-symbolizer [llvm-symbolizer] -print-source-context-lines option to print source code around the line. 2016-01-09 00:14:35 +00:00
lto Fix the order of destructors in LibLTOCodeGenerator 2015-12-09 03:37:51 +00:00
msbuild MSBuild integration: fix the loop in install.bat 2014-09-30 22:30:06 +00:00
obj2yaml [obj2yaml] Fix "time of check to time of use" bug. Add a test. 2015-09-19 20:49:34 +00:00
opt [opt] Fix run-twice option for non-idempotent passes 2015-12-05 01:38:12 +00:00
sancov [sancov] html report 2016-01-14 22:34:11 +00:00
sanstats Introduce sanstats tool and llvm::CreateSanitizerStatReport function. 2016-01-16 00:31:11 +00:00
verify-uselistorder [uselistorder] Insert blank line, NFC 2015-10-13 21:51:02 +00:00
xcode-toolchain [CMake] [Darwin] Add support for generating Xcode-compatible toolchains that xcodebuild and xcrun can search 2015-10-15 20:09:01 +00:00
yaml2obj Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
CMakeLists.txt [CMake] Adding llvm-profdata to the list of tools clang needs. 2015-12-16 18:30:36 +00:00
LLVMBuild.txt llvm-dwp: Initial layout 2015-12-01 00:48:34 +00:00
Makefile Introduce sanstats tool and llvm::CreateSanitizerStatReport function. 2016-01-16 00:31:11 +00:00