summaryrefslogtreecommitdiffstats
path: root/libcxx/utils/gen_link_script
Commit message (Collapse)AuthorAgeFilesLines
* Start libc++ python cleanup and consolidation.Eric Fiselier2017-02-091-84/+0
| | | | | | | | | Libc++ frequently creates and uses utilities written in python. Currently there are python modules under both libcxx/test and libcxx/util. My goal with these changes is to consolidate them into a single package under libcxx/utils/libcxx. llvm-svn: 294644
* Remove debug output from gen_linker_script.pyEric Fiselier2016-10-091-3/+1
| | | | llvm-svn: 283701
* Fix linker script generation for in-tree buildsEric Fiselier2016-10-091-4/+6
| | | | llvm-svn: 283700
* [cmake] Split linked libraries into private & public, for linker scriptMichal Gorny2016-10-081-12/+8
| | | | | | | | | | | | | | | Introduce LIBCXX_LIBRARIES_PUBLIC in addition to LIBCXX_LIBRARIES that holds 'public' interface libraries -- that is, libraries that both libc++ links to and programs linked against it need to link to. Currently this includes the ABI library and optionally -lunwind (when LIBCXXABI_USE_LLVM_UNWINDER is on). The libraries are included in the linker script, in order to make it possible to link C++ programs using clang with compiler-rt runtime out-of-the-box. Differential Revision: https://reviews.llvm.org/D25008 llvm-svn: 283659
* Add more missing license headersEric Fiselier2016-01-191-0/+9
| | | | llvm-svn: 258198
* [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
OpenPOWER on IntegriCloud