summaryrefslogtreecommitdiffstats
path: root/llvm/cmake
Commit message (Collapse)AuthorAgeFilesLines
...
* Re-enabling the C4065 warning for MSVC builds as it no longer fires due to ↵Aaron Ballman2013-07-261-1/+0
| | | | | | tablegen. llvm-svn: 187252
* Remove dead or useless header checks from cmake and autoconfReid Kleckner2013-07-261-34/+1
| | | | | | | | | | On Windows, this improves clean cmake configuration time on my workstation from 1m58s to 1m32s, which is pretty significant. There's probably more that can be done here, but this is the low hanging fruit. Eric volunteered to regenerate ./configure for me. llvm-svn: 187209
* Tweak the cmake interaction between CMAKE_BUILD_TYPE and LLVM_ENABLE_ASSERTIONS.Duncan Sands2013-07-171-2/+2
| | | | | | | | | | | | | | The issue is that CMAKE_BUILD_TYPE=RelWithDebInfo LLVM_ENABLE_ASSERTIONS=ON was not building with assertions enabled. (I was unable to find what in the LLVM source tree was adding -DNDEBUG to the build line in this case, so decided that it must be cmake itself that was adding it - this may depend on the cmake version). The fix treats any mode that is not Debug as being the same as Release for this purpose (previously it was being assumed that cmake would only add -DNDEBUG for Release and not for RelWithDebInfo or MinSizeRel). If other versions of cmake don't add -DNDEBUG for RelWithDebInfo then that's OK: with this change you just get a useless but harmless -UNDEBUG or -DNDEBUG. llvm-svn: 186499
* Find xdot or xdot.py.Matt Arsenault2013-07-081-1/+1
| | | | | | Ubuntu installs this as xdot, so finding xdot.py would fail. llvm-svn: 185860
* Allow llvm_find_program to find alternate namesMatt Arsenault2013-07-081-1/+2
| | | | llvm-svn: 185859
* Reapply r185601 with a fix for the cmake build.Eric Christopher2013-07-041-0/+2
| | | | llvm-svn: 185605
* Temporarily revert 185601 as it caused cmake build regressions.Eric Christopher2013-07-041-2/+0
| | | | llvm-svn: 185603
* Add support for futimens for platforms that don't support futimes.Eric Christopher2013-07-041-0/+2
| | | | | | Patch by pashev.igor. llvm-svn: 185601
* Support using "host" as a target in LLVM_TARGETS_TO_BUILD when using cmake.Andy Gibbs2013-06-261-0/+8
| | | | llvm-svn: 184923
* Revert "Cmake: add compiler option in a more idiomatic way"Rafael Espindola2013-06-141-2/+4
| | | | | | | | | This reverts commit 183995. It broke the bots: http://bb.pgr.jp/builders/cmake-clang-x86_64-linux/builds/9730/steps/build_clang/logs/stdio llvm-svn: 183997
* Cmake: add compiler option in a more idiomatic wayArnaud A. de Grandmaison2013-06-141-4/+2
| | | | llvm-svn: 183995
* Don't define LTDL_SHLIBPATH_VAR.Rafael Espindola2013-06-111-2/+0
| | | | llvm-svn: 183771
* Add colored diagnostics when building LLVM with cmake + ninja + clangArnaud A. de Grandmaison2013-05-291-0/+7
| | | | | | When invoked from Ninja, clang does not detect that it can use colors : see https://github.com/martine/ninja/issues/174 llvm-svn: 182878
* Allow overriding the location of C/C++ compilers in Android CMake build.Evgeniy Stepanov2013-05-291-2/+9
| | | | | | Patch by Greg Fitzgerald. llvm-svn: 182831
* [SystemZ] Add configure bitsUlrich Weigand2013-05-061-0/+2
| | | | | | | | | | This patch wires up the SystemZ target in configure, so that it can now be built using --enable-targets=systemz. It is not yet included in the default build (--enable-targets=all); this will be done by a follow-up patch. Patch by Richard Sandiford. llvm-svn: 181208
* Build system changes to enable MCJIT on AArch64Tim Northover2013-05-041-0/+2
| | | | | | | These changes just allow AArch64 to take part in the MCJIT world when built correctly. llvm-svn: 181130
* Allow host triple to be correctly overridden in CMake buildsTim Northover2013-05-041-4/+5
| | | | | | | | | | | The intended semantics mirror autoconf, where the user is able to specify a host triple, but if it's left to the build system then "config.guess" is invoked for the default. This also renames the LLVM_HOSTTRIPLE define to LLVM_HOST_TRIPLE to fit in with the style of the surrounding defines. llvm-svn: 181112
* CMake: cxxabi.h is only available to C++ compilers, use the right check macro.Benjamin Kramer2013-05-031-1/+2
| | | | llvm-svn: 181019
* Only use cxxabi.h's demangler, if it is actually available.Joerg Sonnenberger2013-04-271-0/+1
| | | | llvm-svn: 180684
* Use zlib to uncompress debug sections in DWARF parser.Alexey Samsonov2013-04-231-1/+5
| | | | | | | This makes llvm-dwarfdump and llvm-symbolizer understand debug info sections compressed by ld.gold linker. llvm-svn: 180088
* Add basic zlib support to LLVM. This would allow to use ↵Alexey Samsonov2013-04-233-0/+15
| | | | | | compression/uncompression in selected LLVM tools. llvm-svn: 180083
* Remove the executable bit on cmake filesSylvestre Ledru2013-04-212-0/+0
| | | | llvm-svn: 179976
* Don't explicitly provide -pie in MSan bootstrap of LLVM, as it's now implied ↵Alexey Samsonov2013-04-121-2/+0
| | | | | | by the driver llvm-svn: 179367
* [cmake] Avoid rel+asserts warnings when passing -UNDEBUGReid Kleckner2013-04-071-0/+3
| | | | | | | MSVC 2012 gives warning D9025, "overriding /D NDEBUG with -UNDEBUG". Removing the original definition of NDEBUG silences this. llvm-svn: 178967
* Add CMake option LLVM_USE_SANITIZER={Address,Memory,MemoryWithOrigins} to ↵Alexey Samsonov2013-03-261-3/+42
| | | | | | simplify bootstrap of LLVM/Clang under ASan/MSan llvm-svn: 177992
* Introduce a tiny CMake project to gather Subversion revision information and ↵Douglas Gregor2013-03-251-0/+25
| | | | | | place it into a header. llvm-svn: 177938
* Don't use add_llvm_definitions for adding warning flags. It makes it too hardDuncan Sands2013-03-251-14/+20
| | | | | | | | | to have them appear in the right order. Instead append all warnings explicitly to the language flags. This was already the case for many warnings. Fixes the issue of -Wno-maybe-uninitialized not being effective because -Wall was being placed after it rather than before. llvm-svn: 177866
* Refine fenv.h handling: check if the desired macros exist, before usingJoerg Sonnenberger2013-03-251-0/+3
| | | | | | | it. NetBSD/ARM and TILE-Gx are examples for platforms that have an unusable fenv.h and this avoids the need for a blacklist. llvm-svn: 177865
* Enable -Wnon-virtual-dtor build warningAlexey Samsonov2013-03-191-0/+2
| | | | llvm-svn: 177385
* Turn anonymous type in anonymous union warning back on after cleaning upEric Christopher2013-03-151-2/+0
| | | | | | issues. llvm-svn: 177136
* Simplify CMake rules in HandleLLVMOptions module.Alexey Samsonov2013-03-131-27/+26
| | | | | | | | | | | | | | Summary: No functionality change. Reviewers: Bigcheese Reviewed By: Bigcheese CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D535 llvm-svn: 176973
* CMake: Always include the CheckCXXCompilerFlag in HandleLLVMOptions.cmake.Jordan Rose2013-03-021-1/+1
| | | | | | Previously we relied on it being included by config-ix.cmake. llvm-svn: 176396
* Use correct host/target CMake variables to define lit variables.Tim Northover2013-02-141-2/+2
| | | | | | | | | | | | | CMake and autotools disagree on what "host" means in a cross-compilation context. Autotools (and lit) take it to be the machine the binaries being compiled now will run on. CMake takes it to be the machine actually compiling the binaries now. This change makes lit.site-cfg more consistent between autotools and CMake, allowing lit tests (particularly in ExecutionEngine) to run correctly when cross-compiled with CMake llvm-svn: 175179
* CMake: Use check_symbol_exists instead of check_cxx_symbol_exists.Jordan Rose2013-02-081-7/+6
| | | | | | | | | | | check_cxx_symbol_exists requires CMake 2.8.6, so even though I recommended it to Owen it's probably better to stay away for now. This check is not technically correct because we're checking <math.h> but then using <cmath> in the actual code, but if we run into problems we can do the same sort of dance as isinf() and isnan() where we check /both/ headers and then write a wrapper header around them. llvm-svn: 174773
* Fix CMake detection of various cmath functions, and XFAIL the test on ↵Owen Anderson2013-02-071-6/+7
| | | | | | platforms that are known to be missing them. llvm-svn: 174564
* Conditionalize constant folding of math intrinsics on the availability of an ↵Owen Anderson2013-02-071-0/+6
| | | | | | implementation on the host. This is a little bit unfortunate, but until someone decides to implement a full libm for APFloat, we don't have a better way to get this functionality. llvm-svn: 174561
* Turn off uninitialized-use warnings for gcc in cmake buildEdwin Vane2013-02-042-0/+24
| | | | | | | | | | | | Added support to the cmake build to turn off uninitialized use warnings for gcc. This cleans the build up somewhat. Used logic simpler than found in autoconf by making use of the fact that although gcc won't complain about unsupported -Wno-* flags it *will* complain about unsupported -W flags. Reviewers: gribozavr, doug.gregor, chandlerc llvm-svn: 174299
* Add -Wno-nested-anon-types to -pedantic builds of LLVM. This Clang warningRichard Smith2013-01-311-0/+4
| | | | | | | | | | | | | | | | | | | catches uses of an extremely minor and widely-available C++ extension (which every C++ compiler I could find supports, but EDG and Clang reject in strict mode). The diagnosed code pattern looks like this: struct X { union { struct { int a; int b; } S; }; }; llvm-svn: 174103
* Turn off missing field initializer warnings for gccEdwin Vane2013-01-311-0/+13
| | | | | | | | | gcc produces false positives for empty braces so turning the warning off. Instead, turning the warning on for clang so proper warnings aren't missed. Reviewers: dblaikie, chandlerc llvm-svn: 174073
* Annotate BumpPtrAllocator for MemorySanitizer.Evgeniy Stepanov2013-01-311-0/+1
| | | | | | | This change adds MemorySanitizer annotations to BumpPtrAllocator to improve report quality. llvm-svn: 174051
* [CMake][Lit][unittests] Cleanup in AddLLVM.cmake.NAKAMURA Takumi2013-01-271-8/+1
| | | | llvm-svn: 173617
* [CMake][Lit][unittests] Deprecate CMAKE_BUILD_TYPE in each build directory ↵NAKAMURA Takumi2013-01-272-23/+4
| | | | | | | | | | | | | | | | | | | | | | | | for unittests. For example, cur) unittests/ADT/Release/ADTTests new) unittests/ADT/ADTTests RUNTIME_BUILD_MODE can be substituted to CMAKE_CFG_INTDIR. With Make and Ninja, the tree is not built with multiple configurations. Then, including the build type in target directory doesn't make sense. See also "How can I build multiple modes without switching?" http://www.cmake.org/Wiki/CMake_FAQ CMAKE_CFG_INTDIR is set to "." With multiple-configuration-aware build system, like Visual Studio, each unittest is built on appropriate directory, for example, unittests/ADT/Release/ADTTests.exe CMAKE_CFG_INTDIR is set to build system's variable, like "$(Configuration)" or "$(OutDir)". Thus, "--param build_config" is also deprecated. llvm-svn: 173616
* Disable MSVC's warning about noreturn destructorsReid Kleckner2013-01-251-0/+1
| | | | | | | | | | | | This warning fires on: Operator::~Operator() { llvm_unreachable("should never destroy an Operator"); } That seems like a false positive. I don't see any good way to silence the warning here, so I'm disabling it. llvm-svn: 173455
* Add time getters to the process interface for requesting the elapsedChandler Carruth2013-01-042-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wall time, user time, and system time since a process started. For walltime, we currently use TimeValue's interface and a global initializer to compute a close approximation of total process runtime. For user time, this adds support for an somewhat more precise timing mechanism -- clock_gettime with the CLOCK_PROCESS_CPUTIME_ID clock selected. For system time, we have to do a full getrusage call to extract the system time from the OS. This is expensive but unavoidable. In passing, clean up the implementation of the old APIs and fix some latent bugs in the Windows code. This might have manifested on Windows ARM systems or other systems with strange 64-bit integer behavior. The old API for this both user time and system time simultaneously from a single getrusage call. While this results in fewer system calls, it also results in a lower precision user time and if only user time is desired, it introduces a higher overhead. It may be worthwhile to switch some of the pass timers to not track system time and directly track user and wall time. The old API also tracked walltime in a confusing way -- it just set it to the current walltime rather than providing any measure of wall time since the process started the way buth user and system time are tracked. The new API is more consistent here. The plan is to eventually implement these methods for a *child* process by using the wait3(2) system call to populate an rusage struct representing the whole subprocess execution. That way, after waiting on a child process its stats will become accurate and cheap to query. llvm-svn: 171551
* [CMake] MSVC is incorrectly emitting C4239 in some cases. Disable it.Michael J. Spencer2013-01-031-1/+0
| | | | llvm-svn: 171430
* [CMake] AddLLVM.cmake: Tweak the corner case that "check-all" doesn't have ↵NAKAMURA Takumi2012-12-241-5/+11
| | | | | | | | | | | any tests. "check-all" can be executed with 0 status, "check-all does nothing, no tools built." LLVM_EXTERNAL_CLANG_BUILD=OFF LLVM_BUILD_TOOLS=OFF can reproduce this. Oscar Fuentes reported this. Thank you. llvm-svn: 171046
* Fix a typo introduced in r168577: FlAGS -> FLAGS (note the lowercase ell)Dmitri Gribenko2012-12-241-2/+2
| | | | | | Now we really pass -Wcovered-switch-default if the compiler supports it. llvm-svn: 171040
* CMake: factor out a function that returns the expected directory for unit testAlexey Samsonov2012-12-191-5/+11
| | | | llvm-svn: 170539
* [CMake] Move libxml2 stuff from clang to llvm/cmake.NAKAMURA Takumi2012-12-141-0/+5
| | | | llvm-svn: 170225
* CMake: Don't run 'git svn' if there is no .git/svn directory.Jim Grosbach2012-12-101-40/+42
| | | | | | | If the local checkout does not have 'git svn' references set up, don't try to use 'git svn' for version information. llvm-svn: 169749
OpenPOWER on IntegriCloud