summaryrefslogtreecommitdiffstats
path: root/libcxx/utils
Commit message (Collapse)AuthorAgeFilesLines
* [libcxx] Make it drastically simpler to link libc++.Eric Fiselier2015-10-141-0/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Currently on most platforms you have to manually link the c++ abi library used with libc++ whenever you use libc++. So your typical libc++ command like invocation might look like: ``` clang++ -stdlib=libc++ foo.cpp -lc++abi ``` Having to manually link `libc++abi.so` makes it harder for libc++ to be used generically. This patch fixes that by generating a linker script for `libc++.so` that correctly links the ABI library. On linux the linker script for libc++abi would look like: ``` # libc++.so INPUT(libc++.so.1 -lc++abi) ``` With the linker script you can now use libc++ using only `-stdlib=libc++`. This is the technique that is used on FreeBSD in ordered to link cxxrt and I think it's the best approach to make our users lives simpler. The CMake option used to enable this is `LIBCXX_ENABLE_ABI_LINKER_SCRIPT`. In future I would like to enable this by default on all platforms except for Darwin. Reviewers: mclow.lists, danalbert, rsmith, jroelofs, EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D12508 llvm-svn: 250319
* cleanup comments in sym_checkEric Fiselier2015-03-271-5/+5
| | | | llvm-svn: 233364
* Add readelf support to abi_check. Prefer readelf over nmEric Fiselier2015-03-271-12/+88
| | | | llvm-svn: 233360
* Improve automatic detection of filetype for sym_checkEric Fiselier2015-03-201-1/+27
| | | | llvm-svn: 232858
* Fix use of incorrect package name in sym_checkEric Fiselier2015-03-201-1/+1
| | | | llvm-svn: 232856
* Add symbol checking script to libc++ to help manage exported symbols.Eric Fiselier2015-03-2010-0/+492
| | | | | | | | | | | | | | | | | Summary: Add symbol checking scripts for extracting a list of symbols from shared libraries and for comparing symbol lists for differences. Reviewers: mclow.lists, danalbert, EricWF Reviewed By: EricWF Subscribers: majnemer, emaste, cfe-commits Differential Revision: http://reviews.llvm.org/D4946 llvm-svn: 232855
* [libcxx] Allow use of ShTest in libc++ tests along with other changes.Eric Fiselier2015-01-221-0/+35
Summary: This patch allows the use of LIT's ShTest format in the libc++ test suite. ShTests have the suffix '.sh.cpp'. It also introduces a series of other changes. These changes are: - More functionality including parsing test metadata has been moved into LIT. - LibcxxTestFormat now supports multi-part suffixes. - the `CXXCompiler` functionality has been used to shrink the size of LibcxxTestFormat. - The recursive loading of the site config has been turned into `libcxx.test.config.loadSiteConfig` so it can be used with libc++abi. - Temporary files are now created in the build directory of libc++. This follows how it is down in ShTest. - `not.py` was added as a utility executable that mirrors the functionality of LLVM's `not` executable. - The first ShTest test was added under test/libcxx/double_include.sh.cpp Reviewers: jroelofs, danalbert Reviewed By: danalbert Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D7073 llvm-svn: 226844
OpenPOWER on IntegriCloud