NAKAMURA Takumi
4471f82e91
Windows/DynamicLibrary.inc: Clean up ELM_Callback. We may check the decl instead of the versions of individual libraries.
...
autoconf: Add checking ELM_Callback decl for mingw32 and mingw-w64.
cmake/config-ix.cmake: Add checking ELM_Callback decl for win32.
llvm-svn: 130657
2011-05-01 13:29:49 +00:00
Oscar Fuentes
f2ab92833a
Handle changing of LLVM_ENABLE_FFI.
...
If someone first configure build with LLVM_ENABLE_FFI=1 and then turn it
off, the build will fail in lib/ExecutionEngine/Interpreter because
Interpreter will try still to #include <ffi/ffi.h>, but there are no
include_directories(${FFI_INCLUDE_DIR}) now.
This patch unset()'s HAVE_FFI_H and HAVE_FFI_FFI_H from cache file if
LLVM_ENABLE_FFI=0. This forces CMake to update config.h.
Patch by arrowdodger!
llvm-svn: 128769
2011-04-02 13:21:12 +00:00
Oscar Fuentes
465f93645f
Supports building with a list of targets that does not contain
...
X86. Fixes PR9533.
llvm-svn: 128154
2011-03-23 17:42:13 +00:00
Tobias Grosser
1b4f94070f
cmake: Add xdot.py support as it already exists in autoconf.
...
llvm-svn: 126563
2011-02-27 04:11:05 +00:00
NAKAMURA Takumi
189111808e
lib/Support/Errno.cpp: Check strerror_s() with HAVE_DECL_STRERROR_S in config.h.*.
...
AC_CHECK_FUNCS seeks a symbol only in libs. We should check the declaration in string.h.
FIXME: I have never seen mingw(s) have strerror_s() (not _strerror_s()).
FIXME: Autoconf/CMake may seek strerror_s() with the definition MINGW_HAS_SECURE_API in future.
llvm-svn: 125172
2011-02-09 04:18:48 +00:00
NAKAMURA Takumi
03a541f5c4
Windows/DynamicLibrary.inc: Split explicit symbols into explicit_symbols.inc.
...
config.h.* have conditions whether each symbol is defined or not.
Autoconf and CMake may check symbols in libgcc.a for JIT on Mingw.
llvm-svn: 124950
2011-02-05 15:11:53 +00:00
Oscar Fuentes
2761c7ab34
LLVM_ON_WIN32 is not defined on config-ix.cmake. Use something else.
...
llvm-svn: 124857
2011-02-04 05:40:04 +00:00
Oscar Fuentes
f4202ba475
Changes for building Clang and others using LLVM as an external
...
library.
Installs tblgen (required by Clang).
Translates handling of user settings and platform-dependant options to
its own file, where it can included by another project.
Installs the .cmake files required by projects like Clang.
llvm-svn: 124816
2011-02-03 20:57:36 +00:00
Oscar Fuentes
ed27eadd29
Platform tests for `sys/uio.h' header and `writev' function.
...
This is the cmake equivalent for r124769.
llvm-svn: 124775
2011-02-03 04:23:07 +00:00
Oscar Fuentes
e866c41f5c
Adds some platform checks to cmake/config-ix.cmake and fixes checking
...
for dlopen/dlerror.
Patch by arrowdodger!
llvm-svn: 124590
2011-01-31 18:25:25 +00:00
Oscar Fuentes
6495595382
Handles libffi on the CMake build.
...
Patch by arrowdodger!
llvm-svn: 123976
2011-01-21 15:42:54 +00:00
Oscar Fuentes
e65ed1c794
Add some platform checks. Also fix a typo on a Makefile.
...
Patch by arrowdodger!
llvm-svn: 123659
2011-01-17 16:35:14 +00:00
Oscar Fuentes
25ac830e72
Make config.h.cmake similar to config.h.in
...
Patch by arrowdodger!
llvm-svn: 123539
2011-01-15 13:35:37 +00:00
Oscar Fuentes
0a1b6b8ff2
Add some platform tests.
...
Patch by arrowdodger!
llvm-svn: 123388
2011-01-13 19:17:28 +00:00
Oscar Fuentes
f8e26b123c
Platform tests for argz_* functions.
...
Patch by arrowdodger!
llvm-svn: 123376
2011-01-13 15:06:32 +00:00
Oscar Fuentes
c8cb58e130
Add to the CMake build some options and platform tests supported by
...
the traditional build.
Patch by arrowdodger!
llvm-svn: 123233
2011-01-11 12:31:54 +00:00
Oscar Fuentes
edfc184222
Rewrite handling of LLVM_ENABLE_PIC. It was being processed after
...
config.h was generated, so it had no effect on it.
Thanks to arrowdodger for pointing out this and a tentative patch.
llvm-svn: 123119
2011-01-09 14:34:39 +00:00
Michael J. Spencer
ca242f2c36
Support/FileSystem: Fix MinGW build. It doesn't have _chsize_s.
...
llvm-svn: 120826
2010-12-03 18:48:56 +00:00
Michael J. Spencer
447762da85
Merge System into Support.
...
llvm-svn: 120298
2010-11-29 18:16:10 +00:00
Michael J. Spencer
46ea135ea7
Endian: Get rid of LLVM_IS_HOST_BIG_ENDIAN.
...
llvm-svn: 117124
2010-10-22 18:45:12 +00:00
Michael J. Spencer
f572e3fc4c
Rename LLVM_IS_TARGET_BIG_ENDIAN to LLVM_IS_HOST_BIG_ENDIAN to reflect what it actually means.
...
llvm-svn: 117092
2010-10-22 08:47:28 +00:00
Michael J. Spencer
b550b66543
Support: Add Endian.h
...
llvm-svn: 117057
2010-10-21 20:28:21 +00:00
Chris Lattner
1ef5e84c31
Per discussion with Sanjiv, remove the PIC16 target from mainline. When/if
...
it comes back, it will be largely a rewrite, so keeping the old codebase
in tree isn't helping anyone.
llvm-svn: 116190
2010-10-11 05:44:40 +00:00
Michael J. Spencer
33a390e2ca
CMake: Fix warning in gtest.
...
llvm-svn: 115935
2010-10-07 18:12:54 +00:00
Michael J. Spencer
1444f47deb
Fix whitespace.
...
llvm-svn: 114724
2010-09-24 09:00:56 +00:00
Oscar Fuentes
bcc8b2f9e5
cmake: test for the presence of fenv.h
...
llvm-svn: 114205
2010-09-17 20:30:48 +00:00
Oscar Fuentes
e16dc06159
Fix cmake build without native target selected.
...
The cmake (+ MSVC) build is broken if you don't select your native
target.
e.g. 'cmake -D LLVM_TARGETS_TO_BUILD="MyNonNativeTarget" .'
This is because cmake currently sets the LLVM_NATIVE_* definitions
regardless of whether the native target is selected (causing build
errors).
Patch by Mike Gist!
llvm-svn: 112946
2010-09-03 02:22:23 +00:00
Eric Christopher
e7a9db16bb
Fix LLVM target initialization to deal with sociopathic outside projects
...
that like to randomly define things like "X86", regenerate autoconf bits
and update cmake.
Fixes PR7852.
Patch by Xerxes Rånby!
llvm-svn: 112499
2010-08-30 18:34:48 +00:00
Oscar Fuentes
2b1077fb1d
CMake: set configure macro LLVM_PREFIX
...
llvm-svn: 110536
2010-08-08 04:32:21 +00:00
Oscar Fuentes
74f92e1102
CMake: configure header llvm-config.h
...
This is the cmake equivalent of r110532, which fixed bug #7809 .
llvm-svn: 110535
2010-08-08 04:17:18 +00:00
Daniel Dunbar
edf7b8bd4e
build: Add LLVM_NATIVE_ARCHNAME, which has the sensible value, without "Target"
...
appended.
llvm-svn: 110109
2010-08-03 14:26:17 +00:00
Nick Lewycky
99d71d1e7a
Don't link against libm and libpthread which don't exist in BeOS/Haiku. Also,
...
Haiku like Linux provides <regex.h>, so use it. Patch by Paul Davey!
llvm-svn: 106620
2010-06-23 06:48:34 +00:00
Jeffrey Yasskin
3ddd88f523
Tell Valgrind when we modify already-executed machine code so it knows
...
to re-instrument the code. We depend on the system valgrind.h to
avoid adding a new license.
llvm-svn: 98529
2010-03-15 04:57:55 +00:00
Oscar Fuentes
d533e1d46b
CMake: Pass -lm to check_symbol_exists for detecting several math
...
functions like floorf, ceilf, ... Add test for detecting nearbyintf.
This change was prompted by test/Transforms/SimplifyLibCalls/floor.ll
llvm-svn: 86954
2009-11-12 05:36:09 +00:00
Oscar Fuentes
b8d7793628
CMake: Remove unnecessary `unset' which was not supported by old cmake
...
releases.
llvm-svn: 86644
2009-11-10 01:45:05 +00:00
Oscar Fuentes
de8f431edf
CMake: Detect gv, circo, twopi, neato, fdo, dot and dotty.
...
Patch by Arnaud Allard de Grandmaison!
llvm-svn: 86547
2009-11-09 15:26:40 +00:00
Daniel Dunbar
39a6c62b9d
Fix CMake reporting of target triple.
...
llvm-svn: 86419
2009-11-07 23:52:27 +00:00
Daniel Dunbar
c0fd8a4360
Stop running get_target_triple more than we need to.
...
llvm-svn: 86418
2009-11-07 23:52:20 +00:00
Oscar Fuentes
17feb2a9ee
CMake: Detect dotty.
...
Patch by Arnaud Allard de Grandmaison!
llvm-svn: 86153
2009-11-05 19:03:26 +00:00
Oscar Fuentes
1a0bfb6290
CMake: do not test for pthread and dl libraries on Windows (except
...
Cygwin). Fixes PR 5368.
llvm-svn: 86152
2009-11-05 18:57:56 +00:00
Benjamin Kramer
c1ba4c2941
Teach cmake that mk[sd]temp is defined in stdlib.h on some systems.
...
This fixes parallel build with clang on glibc platforms.
llvm-svn: 85414
2009-10-28 18:37:31 +00:00
Chandler Carruth
56869f22c4
Move DataTypes.h to include/llvm/System, update all users. This breaks the last
...
direct inclusion edge from System to Support.
llvm-svn: 85086
2009-10-26 01:35:46 +00:00
Edward O'Callaghan
396ed2bcaa
Fix LLVM CMake build system so that it may now work on Solaris and AuroraUX.
...
llvm-svn: 83819
2009-10-12 04:00:11 +00:00
Edward O'Callaghan
655314ef95
CMake misses a check for sbrk on NetBSD.
...
llvm-svn: 83341
2009-10-05 23:05:32 +00:00
Douglas Gregor
f99626ed11
Teach CMake to look for bidirectional_iterator, iterator, forward_iterator, uint64_t, and u_int64_t, from Yonggang Luo
...
llvm-svn: 83203
2009-10-01 17:25:36 +00:00
Jeffrey Yasskin
14a5cc54e5
Fix a compile failure introduced by r82675 on MinGW which doesn't have
...
setenv(). This patch just disables the test rather than getting putenv() to
work. Thanks to Sandeep Patel for reporting the problem.
llvm-svn: 82797
2009-09-25 21:07:20 +00:00
Oscar Fuentes
b9a781373c
CMake: New user-settable variable LLVM_TARGET_ARCH useful when
...
cross-compiling.
Patch by Xerxes Rånby!
llvm-svn: 81722
2009-09-13 22:18:38 +00:00
Gabor Greif
962c374781
re-apply r80197, now that iterator.h is not mentioned any more
...
llvm-svn: 80254
2009-08-27 17:07:35 +00:00
Bill Wendling
c7d230f736
--- Reverse-merging r80147 into '.':
...
A include/llvm/ADT/iterator.cmake
U autoconf/configure.ac
--- Reverse-merging r80161 into '.':
U cmake/config-ix.cmake
--- Reverse-merging r80171 into '.':
U Makefile
--- Reverse-merging r80173 into '.':
U configure
U include/llvm/Config/config.h.in
--- Reverse-merging r80180 into '.':
A include/llvm/ADT/iterator.h.in
Despite common miscomceptions, iterator.h is alive and well. It broke the build
bots for several hours. And yet no one bothered to look at them.
Gabor and Doug, please review your changes and make sure that they actually
build before resubmitting them.
llvm-svn: 80197
2009-08-27 03:29:26 +00:00
Douglas Gregor
7e3778948a
De-bork CMake build
...
llvm-svn: 80161
2009-08-26 22:12:02 +00:00
Oscar Fuentes
175a6e4a3b
Ignore -fPIC test on Windows. Suggested by Yonggang Luo.
...
llvm-svn: 80111
2009-08-26 17:05:06 +00:00
Daniel Dunbar
83dbd7a432
Remove alloca config.h support.
...
- I did not actually remove the configure test itself, someone who can
regenerate configure should do this (see FIXME in autoconf/configure.ac)
llvm-svn: 79881
2009-08-24 02:14:39 +00:00
Douglas Gregor
24be97df67
CMake configuration: find mkdtemp, mkstemp, mktemp.
...
llvm-svn: 77219
2009-07-27 18:23:41 +00:00
Dan Gohman
17151155ed
Remove the IA-64 backend.
...
llvm-svn: 76920
2009-07-24 00:30:09 +00:00
Xerxes Ranby
64c6d42a9a
Implement cmake LLVM_MULTITHREADED gcc atomic builtin checks.
...
llvm-svn: 76221
2009-07-17 19:22:41 +00:00
Jeffrey Yasskin
1a93330ffa
Add a portable strerror*() wrapper, llvm::sys::StrError(). This includes the
...
Windows variant, strerror_s, but I couldn't test that.
I'll update configure and config.h.in in a subsequent patch.
llvm-svn: 74621
2009-07-01 18:11:20 +00:00
Douglas Gregor
e081d90233
Fix CMake checks for pthread_getspecific and pthread_rwlock_init, from Xerxes Ranby
...
llvm-svn: 74426
2009-06-29 16:25:22 +00:00
Douglas Gregor
1d88779e2f
CMake: add configure checks for pthread_rwlock_init and pthread_getspecific
...
llvm-svn: 74284
2009-06-26 14:35:43 +00:00
Douglas Gregor
3def847551
Define LLVM_NATIVE_ARCH in CMake, so that lli can actually JIT
...
llvm-svn: 73616
2009-06-17 17:01:56 +00:00
Douglas Gregor
5f11afc442
More portability checks for CMake's config.h.
...
llvm-svn: 72975
2009-06-05 23:46:34 +00:00
Douglas Gregor
60dd76fbc9
Properly detect malloc_zone_statistics in CMake build system
...
llvm-svn: 72873
2009-06-04 17:22:52 +00:00
Oscar Fuentes
eeac588471
CMake: Use libdl only when available. Fixes build on FreeBSD.
...
llvm-svn: 72311
2009-05-23 02:37:24 +00:00
Douglas Gregor
b81294d989
termios.h contains the winsize structure we need to determine the
...
width of a terminal. Don't try to get the width of a terminal if we
don't have this header.
llvm-svn: 72018
2009-05-18 17:21:34 +00:00
Douglas Gregor
15436617f4
Add terminal width detection to llvm::sys::Process. This is needed to
...
fix Clang PRs 4148 and 4183.
llvm-svn: 71448
2009-05-11 18:05:52 +00:00
Oscar Fuentes
a6e2006f83
CMake: Detects libpthread and sets HAVE_LIBPTHREAD.
...
llvm-svn: 71084
2009-05-06 14:40:37 +00:00
Oscar Fuentes
bda403b4c8
CMake: defines and uses macro add_llvm_definitions for keeping track
...
of compiler parameters explicitly added by the build
specification. This macro replaces the cmake built-in
`add_definitions'.
Detects glibc and defines _GNU_SOURCE accordingly.
Resolves bug 3882.
llvm-svn: 68428
2009-04-04 22:41:07 +00:00
Nick Lewycky
b2f34f6211
Remove configurey-fu to autodetect hash_map and hash_set now that they are
...
no longer used in LLVM.
llvm-svn: 66406
2009-03-09 06:16:26 +00:00
Cedric Venet
b8aa2ea72a
Add mode_t to the config.h generated by cmake on win32. Used by clang.
...
llvm-svn: 64555
2009-02-14 16:13:26 +00:00
Oscar Fuentes
4d69fd4f1c
CMake: when building shared libraries, use -fPIC for compiling
...
partially linked objects.
llvm-svn: 59699
2008-11-20 03:10:17 +00:00
Oscar Fuentes
366fbb79f5
CMake: Option for enabling/disabling threads.
...
llvm-svn: 59565
2008-11-18 23:45:21 +00:00
Oscar Fuentes
2500aaebdd
CMake: Removed some cruft.
...
llvm-svn: 58358
2008-10-29 02:33:15 +00:00
Oscar Fuentes
bf81f792cd
CMake: GetTargetTriple: new module for determining the target
...
triple. Assign to LLVM_HOSTTRIPLE so it figures in config.h.
llvm-svn: 58176
2008-10-26 00:47:52 +00:00
Oscar Fuentes
a9ac909248
CMake: MSVC++ no longer uses a special configuration method.
...
llvm-svn: 58132
2008-10-25 03:29:36 +00:00
Oscar Fuentes
a229b3c9a7
Initial support for the CMake build system.
...
llvm-svn: 56419
2008-09-22 01:08:49 +00:00