Commit Graph

417 Commits

Author SHA1 Message Date
Oscar Fuentes e93b54be8d CMake: target triple for MSVC on Windows 64.
llvm-svn: 78753
2009-08-12 00:04:12 +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
Daniel Dunbar 71475775b9 Sketch support for target specific assembly parser.
- Not fully enabled yet, need a configure regeneration.

llvm-svn: 76230
2009-07-17 20:42:00 +00:00
Xerxes Ranby 64c6d42a9a Implement cmake LLVM_MULTITHREADED gcc atomic builtin checks.
llvm-svn: 76221
2009-07-17 19:22:41 +00:00
Daniel Dunbar 0b02da75d6 Regerate CMake library dependencies.
- Added a sed script to do this in the comments.

llvm-svn: 75872
2009-07-16 00:43:36 +00:00
Daniel Dunbar e0daf0ca9e Kill off cmake magic to force linking.
- This isn't needed anymore, we require clients to call the appropriate
   initialization routines using TargetSelect.h.

llvm-svn: 75871
2009-07-16 00:35:05 +00:00
Daniel Dunbar b97d02fd96 Tweak CMake component lookup, I misunderstood what was happening here.though. :(
llvm-svn: 75757
2009-07-15 07:52:36 +00:00
Daniel Dunbar 2179d73133 Teach Makefiles & CMake to link in the <TARGET>Info library when linking the
TARGET component.
 - Also, updated some CMake library dependencies, it is still missing some
   though. :(

llvm-svn: 75755
2009-07-15 07:43:34 +00:00
Oscar Fuentes cb234fec50 CMake: tablegen: Add .td files under the inlude/llvm directory
hierarchy to the list of dependencies.

llvm-svn: 75510
2009-07-13 21:35:00 +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 2042c3519d Add missing dependencies to the CMake build system.
llvm-svn: 74161
2009-06-25 05:03:06 +00:00
Douglas Gregor f42a6ab6b8 Reinstate target dependencies on Table_gen targets in CMake
llvm-svn: 74003
2009-06-23 21:05:21 +00:00
Douglas Gregor e324ceeced CMake: remove support for llvm-config-generated dependencies in the build
llvm-svn: 73979
2009-06-23 18:30:17 +00:00
Douglas Gregor 881af58933 Eliminate some unused code in CMa'e add_llvm_target. No functionality change.
llvm-svn: 73970
2009-06-23 17:58:51 +00:00
Douglas Gregor 85fedbe081 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.

llvm-svn: 73969
2009-06-23 17:57:35 +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
Oscar Fuentes 46fed3b475 CMake: New variable LLVM_LIBDIR_SUFFIX.
Patch by Ingmar Vanhassel!

llvm-svn: 73216
2009-06-12 02:49:53 +00:00
Oscar Fuentes caa7a94f66 CMake: Fixed parallel build problem related to native tblgen when
cross-compiling.

llvm-svn: 73180
2009-06-11 04:16:10 +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 5c273ce20e CMake: Use explicit dependencies for Xcode (as well as MSVC), to make
the CMake-generated Xcode project build properly.

llvm-svn: 72883
2009-06-04 19:53:37 +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 10a71da05a CMake: Set LIBS on llvm-config so we can query the system libraries
used by CMake with --ldflags.

llvm-svn: 72470
2009-05-27 15:49:33 +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 58e257de2e CMake: Use pthread library when requested and available.
llvm-svn: 71116
2009-05-06 20:42:04 +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 fff33a3cdf CMake: Added notes pointing to the LLVM CMake documentation.
llvm-svn: 68429
2009-04-04 22:52:02 +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
Douglas Gregor 6d1ec14f0f CMake: Build system fixes for XCode. llvm-config still causes us some serious trouble, but it's less serious than it used to be
llvm-svn: 67056
2009-03-16 22:53:26 +00:00
Douglas Gregor d36792c86f CMake: Make sure to build TableGen'd files in the binary directory
llvm-svn: 67052
2009-03-16 21:35:18 +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 244d369d53 CMake: Tests PERL availability with PERL_EXECUTABLE variable.
On MSVC 64bits, does not put underscore before the symbol name on the
/INCLUDE linker parameter.

llvm-svn: 62738
2009-01-22 01:20:31 +00:00
Oscar Fuentes b97e96350f CMake: replace `rm' with portable invocations of cmake.
Based on a bug report by Yonggang Luo.

llvm-svn: 61875
2009-01-07 19:24:44 +00:00
Eli Friedman 9ccf574ea0 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.

llvm-svn: 60273
2008-11-30 02:42:05 +00:00
Oscar Fuentes 02b5c3222b CMake: Do not rebuild the world when tblgen changes but the .inc files
it produces are not affected by the change.

llvm-svn: 59763
2008-11-21 00:18:45 +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 08c4a35caa 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.

llvm-svn: 59383
2008-11-16 04:13:19 +00:00
Oscar Fuentes b5b8bd85fd CMake: Forces linking of the rest of architecture targets and its
respective asm printers on MSVC.

Based on a patch by Scott Graham.

llvm-svn: 59379
2008-11-15 22:51:03 +00:00
Oscar Fuentes 2c10b22b62 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.

llvm-svn: 59346
2008-11-15 02:08:08 +00:00
Oscar Fuentes 070114fd79 CMake: Use LLVM_MAIN_SRC_DIR instead of CMAKE_SOURCE_DIR, for
consistency.

Patch by Kevin Andre!

llvm-svn: 59326
2008-11-14 22:21:02 +00:00
Oscar Fuentes 751ea9d957 CMake: Fixed dependencies of .cpp source files on .td and tablegenned
files.

llvm-svn: 59325
2008-11-14 22:06:14 +00:00
Oscar Fuentes 7ae7d91ee0 CMake: Updated library dependency info used for MSVC++.
llvm-svn: 59079
2008-11-11 20:04:40 +00:00
Oscar Fuentes 90cf22e013 CMake: Removed unnecessary library path setting that was breaking the
build on OS X.

Fix by Jjgod Jiang!

llvm-svn: 59048
2008-11-11 16:56:52 +00:00
Oscar Fuentes 54c1dedd42 CMake: Fixed cross-compiling.
`clean' makefile target removes add-hoc directory created for building
the native tablegen.

llvm-svn: 59005
2008-11-10 22:09:59 +00:00
Oscar Fuentes 9530edd1f4 CMake: Builds a native tblgen when cross-compiling and the user didn't
set LLVM_TABLEGEN.

llvm-svn: 58953
2008-11-10 02:35:55 +00:00
Oscar Fuentes e352ca077c CMake: Non-working code for auto-building the native tblgen util when
cross-compiling.

llvm-svn: 58950
2008-11-10 01:32:14 +00:00
Oscar Fuentes b45a43aec4 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.

llvm-svn: 58939
2008-11-09 18:53:19 +00:00
Oscar Fuentes 7751a7b78d CMake: Support for building 32 bit mode libs and binaries on
Linux/x86-64.

llvm-svn: 58677
2008-11-04 03:27:24 +00:00
Oscar Fuentes 39304667af CMake: Fix some unwanted commentary line wraps on the last change.
llvm-svn: 58485
2008-10-31 01:37:26 +00:00
Oscar Fuentes c999dfadf1 CMake: Establish dependencies among executables and libraries, using
data manually extracted from llvm-config.

llvm-svn: 58484
2008-10-31 01:24:51 +00:00
Oscar Fuentes 2500aaebdd CMake: Removed some cruft.
llvm-svn: 58358
2008-10-29 02:33:15 +00:00
Oscar Fuentes 20baf2fc3c CMake: Support for LLVM_USED_LIBS variable, which is the cmake
counterpart of USED_LIBS.

llvm-svn: 58178
2008-10-26 00:51:05 +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
Cedric Venet a00d112486 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.
llvm-svn: 58090
2008-10-24 11:24:33 +00:00
Oscar Fuentes 64c996271e CMake: `make install' for libraries, executables and header files.
llvm-svn: 57945
2008-10-22 02:56:07 +00:00
Oscar Fuentes cdc95498f5 CMake: Builds all targets.
llvm-svn: 56641
2008-09-26 04:40:32 +00:00
Oscar Fuentes 0d94c21a2b CMake: Removed unnecessary messages from msvc_llvm_config macro.
llvm-svn: 56540
2008-09-24 01:54:03 +00:00
Oscar Fuentes 8807bddf08 CMake build system: support for parallel builds.
llvm-svn: 56453
2008-09-22 18:21:51 +00:00
Oscar Fuentes f3d3a0dfca add_partially_linked_object: Replaced nonexistent MESSAGE option in
add_custom_command with COMMENT. It was forcing unconditional command
execution.

llvm-svn: 56425
2008-09-22 02:33:43 +00:00
Oscar Fuentes a229b3c9a7 Initial support for the CMake build system.
llvm-svn: 56419
2008-09-22 01:08:49 +00:00