Douglas Gregor
7e9e36a23e
Eliminate object-relinking support from CMake. Fixes PR 4429 and
...
cleans up the CMake-based build system a bit. Started by a patch from
Xerxes Rånby.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73969 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23 17:57:35 +00:00
Douglas Gregor
e9d683b052
Define LLVM_NATIVE_ARCH in CMake, so that lli can actually JIT
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73616 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-17 17:01:56 +00:00
Oscar Fuentes
af0f65fe6a
CMake: New variable LLVM_LIBDIR_SUFFIX.
...
Patch by Ingmar Vanhassel!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73216 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-12 02:49:53 +00:00
Oscar Fuentes
99b94892f5
CMake: Fixed parallel build problem related to native tblgen when
...
cross-compiling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73180 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-11 04:16:10 +00:00
Douglas Gregor
318de60701
More portability checks for CMake's config.h.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72975 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-05 23:46:34 +00:00
Douglas Gregor
8eeb96d2d5
CMake: Use explicit dependencies for Xcode (as well as MSVC), to make
...
the CMake-generated Xcode project build properly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72883 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-04 19:53:37 +00:00
Douglas Gregor
ef23d711bc
Properly detect malloc_zone_statistics in CMake build system
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72873 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-04 17:22:52 +00:00
Oscar Fuentes
1a53cbfb4a
CMake: Set LIBS on llvm-config so we can query the system libraries
...
used by CMake with --ldflags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72470 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-27 15:49:33 +00:00
Oscar Fuentes
db917fe8aa
CMake: Use libdl only when available. Fixes build on FreeBSD.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72311 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-23 02:37:24 +00:00
Douglas Gregor
071d73d67e
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72018 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-18 17:21:34 +00:00
Douglas Gregor
01746745f1
Add terminal width detection to llvm::sys::Process. This is needed to
...
fix Clang PRs 4148 and 4183.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71448 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-11 18:05:52 +00:00
Oscar Fuentes
69b20fd6f9
CMake: Use pthread library when requested and available.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71116 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-06 20:42:04 +00:00
Oscar Fuentes
d413c01088
CMake: Detects libpthread and sets HAVE_LIBPTHREAD.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71084 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-06 14:40:37 +00:00
Oscar Fuentes
34fc51710a
CMake: Added notes pointing to the LLVM CMake documentation.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68429 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 22:52:02 +00:00
Oscar Fuentes
9a0107db72
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68428 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 22:41:07 +00:00
Douglas Gregor
4752bd3b40
CMake: Build system fixes for XCode. llvm-config still causes us some serious trouble, but it's less serious than it used to be
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67056 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16 22:53:26 +00:00
Douglas Gregor
af3f5441b5
CMake: Make sure to build TableGen'd files in the binary directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67052 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16 21:35:18 +00:00
Nick Lewycky
59fad7d933
Remove configurey-fu to autodetect hash_map and hash_set now that they are
...
no longer used in LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66406 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-09 06:16:26 +00:00
Cedric Venet
07b9d69ad1
Add mode_t to the config.h generated by cmake on win32. Used by clang.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64555 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-14 16:13:26 +00:00
Oscar Fuentes
1271b9f071
CMake: Tests PERL availability with PERL_EXECUTABLE variable.
...
On MSVC 64bits, does not put underscore before the symbol name on the
/INCLUDE linker parameter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62738 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-22 01:20:31 +00:00
Oscar Fuentes
82447ebb41
CMake: replace `rm' with portable invocations of cmake.
...
Based on a bug report by Yonggang Luo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61875 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-07 19:24:44 +00:00
Eli Friedman
56e6d644d0
Fix a link issue I ran into trying compiling LLVM on MinGW with CMake.
...
Hopefully this doesn't break anyone else's build... it shouldn't unless
the MinGW variable means something other than compiling with MinGW.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60273 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30 02:42:05 +00:00
Oscar Fuentes
beb7a05086
CMake: Do not rebuild the world when tblgen changes but the .inc files
...
it produces are not affected by the change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59763 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-21 00:18:45 +00:00
Oscar Fuentes
148d245c32
CMake: when building shared libraries, use -fPIC for compiling
...
partially linked objects.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59699 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-20 03:10:17 +00:00
Oscar Fuentes
4b442836fc
CMake: Option for enabling/disabling threads.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59565 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-18 23:45:21 +00:00
Oscar Fuentes
808e3a9266
CMake: MSVC: Pass list of components the right way to msvc_llvm_config
...
and siblings. Support targets whose name does not end on
`CodeGen'. Remove a performance bottleneck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59383 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-16 04:13:19 +00:00
Oscar Fuentes
7f6f21ebae
CMake: Forces linking of the rest of architecture targets and its
...
respective asm printers on MSVC.
Based on a patch by Scott Graham.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59379 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-15 22:51:03 +00:00
Oscar Fuentes
50925fbed4
CMake: Adds header and TableGen files to Visual Studio solution. A new
...
dummy library, `llvm_headers_do_not_build', is created for containing
all header and TableGen files under include/llvm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59346 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-15 02:08:08 +00:00
Oscar Fuentes
cccecb8ea2
CMake: Use LLVM_MAIN_SRC_DIR instead of CMAKE_SOURCE_DIR, for
...
consistency.
Patch by Kevin Andre!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59326 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-14 22:21:02 +00:00
Oscar Fuentes
1bbdd4645b
CMake: Fixed dependencies of .cpp source files on .td and tablegenned
...
files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59325 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-14 22:06:14 +00:00
Oscar Fuentes
3af7fd5038
CMake: Updated library dependency info used for MSVC++.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59079 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-11 20:04:40 +00:00
Oscar Fuentes
578f6cf6d0
CMake: Removed unnecessary library path setting that was breaking the
...
build on OS X.
Fix by Jjgod Jiang!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59048 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-11 16:56:52 +00:00
Oscar Fuentes
0ef3b61c98
CMake: Fixed cross-compiling.
...
`clean' makefile target removes add-hoc directory created for building
the native tablegen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59005 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-10 22:09:59 +00:00
Oscar Fuentes
41bdedf17a
CMake: Builds a native tblgen when cross-compiling and the user didn't
...
set LLVM_TABLEGEN.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58953 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-10 02:35:55 +00:00
Oscar Fuentes
02516ba8b4
CMake: Non-working code for auto-building the native tblgen util when
...
cross-compiling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58950 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-10 01:32:14 +00:00
Oscar Fuentes
3ab40ca3d5
CMake: Support for cross-compiling. For now, requires a previously
...
built native tblgen which is passed to cmake in the variable
LLVM_TABLEGEN.
See
http://www.cmake.org/Wiki/CmakeMingw
for a quick example on how to cross-compile with CMake.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58939 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-09 18:53:19 +00:00
Oscar Fuentes
b0c56992ce
CMake: Support for building 32 bit mode libs and binaries on
...
Linux/x86-64.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58677 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04 03:27:24 +00:00
Oscar Fuentes
4727f83741
CMake: Fix some unwanted commentary line wraps on the last change.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58485 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31 01:37:26 +00:00
Oscar Fuentes
9b17d97bc5
CMake: Establish dependencies among executables and libraries, using
...
data manually extracted from llvm-config.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58484 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31 01:24:51 +00:00
Oscar Fuentes
980e842153
CMake: Removed some cruft.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58358 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-29 02:33:15 +00:00
Oscar Fuentes
bcc1db5f0a
CMake: Support for LLVM_USED_LIBS variable, which is the cmake
...
counterpart of USED_LIBS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58178 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-26 00:51:05 +00:00
Oscar Fuentes
579e43a44a
CMake: GetTargetTriple: new module for determining the target
...
triple. Assign to LLVM_HOSTTRIPLE so it figures in config.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58176 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-26 00:47:52 +00:00
Oscar Fuentes
de98db33fb
CMake: MSVC++ no longer uses a special configuration method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58132 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-25 03:29:36 +00:00
Cedric Venet
389b715e0f
Modify the cmake build system so that if it doesn't find bison, it will use the pregenerated file in from the svn (.cvs). Work only for windows for the moment. Tested on Vista64 with MSVC2008express.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58090 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-24 11:24:33 +00:00
Oscar Fuentes
1dc9716121
CMake: `make install' for libraries, executables and header files.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57945 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-22 02:56:07 +00:00
Oscar Fuentes
e1ad087fcb
CMake: Builds all targets.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56641 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 04:40:32 +00:00
Oscar Fuentes
cb7053bf7a
CMake: Removed unnecessary messages from msvc_llvm_config macro.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56540 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-24 01:54:03 +00:00
Oscar Fuentes
1d8e4cfdb7
CMake build system: support for parallel builds.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56453 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 18:21:51 +00:00
Oscar Fuentes
b3334b6cce
add_partially_linked_object: Replaced nonexistent MESSAGE option in
...
add_custom_command with COMMENT. It was forcing unconditional command
execution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56425 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 02:33:43 +00:00
Oscar Fuentes
3d01fc7de8
Initial support for the CMake build system.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 01:08:49 +00:00