summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* build: fix erroneous overwriting of flagsSaleem Abdulrasool2014-03-121-2/+2
| | | | | | | | | | Always use list(APPEND) as it will perform the desired action even if the list is empty or previously unset. The first set is harmless, however, the subsequent set was overwriting the previous flag setup resulting in an improper compilation command being generated. This manifested as a build failure on Linux when using cmake + ninja. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@203638 91177308-0d34-0410-b5e6-96231b3b80d8
* build: fix add_definition abuse in CMakeSaleem Abdulrasool2014-03-121-5/+8
| | | | | | | | | add_definitions is meant for adding C preprocessor definitions. Modern cmake suggests use of the CMAKE_CXX_FLAGS for the purposes of pushing flags to the compilation commands. Simply switch to the modern form given that we are already requiring a new enough cmake. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@203637 91177308-0d34-0410-b5e6-96231b3b80d8
* build: remove an errant commaSaleem Abdulrasool2014-03-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@203636 91177308-0d34-0410-b5e6-96231b3b80d8
* Justin Bogner: This makes the headers available in the build directory, ↵Howard Hinnant2013-11-151-0/+1
| | | | | | | | | | | | making it easier to use freshly-built clang with freshly-built libc++. Basically, this makes it possible to run clang with libc++ without having to install it, even if you don't have any version of libc++ installed in /usr/ git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@194825 91177308-0d34-0410-b5e6-96231b3b80d8
* Patch by GM: Turn off 'deprecated' warnings when building with MSVC, and add ↵Marshall Clow2013-10-211-0/+6
| | | | | | '-Werror=return-type' to catch funtions that aren't returning what they should. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@193088 91177308-0d34-0410-b5e6-96231b3b80d8
* Make it possible to link against libstdc++ as well as libsupc++ with CMake.Peter Collingbourne2013-10-061-5/+14
| | | | | | | | | | | | | | | Linking against libstdc++, rather than libsupc++, is probably better for people who need to link against clients of libstdc++. Because libsupc++ is provided only as a static library, its globals are not shared between the static library and the copy linked into libstdc++. This has been found to cause at least one test failure. This also removes a number of symbols which were multiply defined between libstdc++ and libc++, only when linking with libstdc++. Differential Revision: http://llvm-reviews.chandlerc.com/D1825 git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@192075 91177308-0d34-0410-b5e6-96231b3b80d8
* G M: Attached is a patch for libcxx's cmake file.Howard Hinnant2013-10-051-1/+3
| | | | | | | | | I've changed it so we don't set highest level warnings (all) for MSVC when building projects using cmake and instead leave the default. That's /W4 on my machine and seems to be ok. With all warnings on for msvc, we see literally thousands of warnings. 99.99% aren't relevant and just obscure the ones that are. I think the user can still override things if they want something different from the command line when using cmake. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@192010 91177308-0d34-0410-b5e6-96231b3b80d8
* libc++abi no longer has a cxa_demangle.h header.Peter Collingbourne2013-10-031-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@191935 91177308-0d34-0410-b5e6-96231b3b80d8
* Make it possible to run the test suite when built as part of LLVM.Peter Collingbourne2013-10-031-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@191930 91177308-0d34-0410-b5e6-96231b3b80d8
* Explicitly specify -Wno-error if LIBCXX_ENABLE_WERROR is false.Alexey Samsonov2013-10-021-0/+3
| | | | | | | | | libcxx doesn't build with -Werror because of #warnings in its source code. But when libcxx is built as an external LLVM project, it inherits LLVM build flags, breaking the build if LLVM_ENABLE_WERROR is enabled. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@191814 91177308-0d34-0410-b5e6-96231b3b80d8
* [CMake] Put libcxx-specific module directories to the front of ↵Alexey Samsonov2013-09-301-1/+1
| | | | | | | | | | | CMAKE_MODULE_PATH. Otherwise if libcxx is built as an LLVM external project (after r191624), "include(config-ix)" will include config-ix.cmake from LLVM, not from libcxx, which will result in misconfigured build tree. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@191657 91177308-0d34-0410-b5e6-96231b3b80d8
* [cmake] Provide an option to not install the support headers so that the ↵Michael Gottesman2013-09-021-0/+1
| | | | | | cmake build can match the make build if requested. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@189739 91177308-0d34-0410-b5e6-96231b3b80d8
* G M: minor fix to silence warning in cmake version 2.8.11.20130809-gba97e.Howard Hinnant2013-08-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@188712 91177308-0d34-0410-b5e6-96231b3b80d8
* The cmake script is failing to copy cxxabi.h to the right place because it ↵Howard Hinnant2013-04-021-1/+1
| | | | | | was generating to destination path like so /include// and dstdir can legally be blank from my interpretation of the script, and this would then generate a path like libcxx/include// which is illegal. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@178579 91177308-0d34-0410-b5e6-96231b3b80d8
* Alexey Samsonov: #ifdefs out undefined function in static build of libc++ ↵Howard Hinnant2013-02-251-0/+4
| | | | | | w/o RTTI. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@176026 91177308-0d34-0410-b5e6-96231b3b80d8
* Michael van der Westhuizen: update to CMake.Howard Hinnant2013-02-081-110/+59
| | | | git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@174731 91177308-0d34-0410-b5e6-96231b3b80d8
* Michael van der Westhuizen: The attached patch add support for building ↵Howard Hinnant2013-02-071-0/+83
| | | | | | | | | | | against libc++abi and libcxxrt to CMake builds of libc++. Usage (with the appropriate CC and CXX environment variables) is: $ cmake -DLIBCXX_CXX_ABI=libcxxabi '-DLIBCXX_LIBCXXABI_INCLUDE_PATHS=/home/michael/libcxxabi/include' ../libcxx and: $ cmake -DLIBCXX_CXX_ABI=libcxxrt '-DLIBCXX_LIBCXXRT_INCLUDE_PATHS=/home/michael/libcxxrt/src' ../libcxx git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@174623 91177308-0d34-0410-b5e6-96231b3b80d8
* Saleem Abdulrasool: Ensure that __GLIBCXX__ is defined when building with ↵Howard Hinnant2013-01-221-0/+1
| | | | | | libsupc++. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@173164 91177308-0d34-0410-b5e6-96231b3b80d8
* Michael van der Westhuizen: Patches for Linux. Fixes ↵Howard Hinnant2013-01-141-1/+1
| | | | | | http://llvm.org/bugs/show_bug.cgi?id=14648. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@172435 91177308-0d34-0410-b5e6-96231b3b80d8
* [CMake] Fix c++ abi library configuration on Linux.Michael J. Spencer2012-12-311-4/+11
| | | | | | | | | | You can now configure from the command line using: -DLIBCXX_CXX_ABI=libsupc++ -DLIBCXX_LIBSUPCXX_INCLUDE_PATHS="path;path Also documents how to build on Linux. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@171316 91177308-0d34-0410-b5e6-96231b3b80d8
* [CMake] Add support for selecting which c++ abi library to use.Michael J. Spencer2012-11-301-0/+53
| | | | git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@169036 91177308-0d34-0410-b5e6-96231b3b80d8
* Andrew Morrow: The current CMake setup for libc++ incorrectly uses the variableHoward Hinnant2012-08-051-1/+2
| | | | | | | | | | | | LLVM_ENABLE_ASSERTIONS instead of LIBCXX_ENABLE_ASSERTIONS when figuring out what _DEBUG/NDEBUG defines to set. It also tries to test the non-existent variable 'uppercase_CMAKE_BUILD_TYPE', which the top level LLVM CMakeLists.txt sets up, but which the top level libc++ CMakeLists.txt currently does not. Changing the variable name tested and creating the uppercase release name variable allows libc++ to honor the LIBCXX_ENABLE_ASSERTIONS option correctly. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@161308 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix warning flags for CMake builds, from Andrew C. Morrow!Douglas Gregor2012-06-071-8/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@158172 91177308-0d34-0410-b5e6-96231b3b80d8
* Add CMake build and fix major Linux blockers.Michael J. Spencer2010-12-101-0/+159
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121510 91177308-0d34-0410-b5e6-96231b3b80d8