Oscar Fuentes
978e5284fa
Fixed the build of Clang's unit tests on MinGW. Also removed some
...
unnecesary conditionals and introduced a new convenience function.
The problem was that the list of libraries for Clang's unit tests was
<clang libraries> <system libraries> <llvm libraries>. As the llvm
libraries references symbols defined on the system libraries, those
were reported as undefined.
llvm-svn: 128484
2011-03-29 20:51:08 +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
Oscar Fuentes
27cfcbac82
Updated library dependencies.
...
Now we can remove RuntimeDyld from the LLVM_LINK_COMPONENTS of
tools/lli. CMakeLists.txt LLVM_LINK_COMPONENTS shall not differ from
its companion Makefile LINK_COMPONENTS.
llvm-svn: 128069
2011-03-22 03:58:55 +00:00
Oscar Fuentes
e4840e2918
Build the new RuntimeDyld library.
...
llvm-svn: 128035
2011-03-21 23:07:53 +00:00
Oscar Fuentes
623b5dae21
Removed workaround for unspecified build problem on MinGW.
...
Tested that MinGW/MSYS builds fine without that.
llvm-svn: 128033
2011-03-21 22:53:51 +00:00
Oscar Fuentes
877894a2fa
Update CMake library dependencies.
...
llvm-svn: 127956
2011-03-19 22:52:13 +00:00
Oscar Fuentes
638b8b783f
is_llvm_target_library: recognize libraries without the LLVM prefix.
...
Without this cmake fails at configuration when some target pass
"native" on LLVM_LINK_COMPONENTS and that is expanded to "X86".
llvm-svn: 127679
2011-03-15 14:53:53 +00:00
Oscar Fuentes
cc48b9ac0f
Whe we build a shared library, add its list of used libraries to the
...
link command.
Fixed a pair of IF expressions too.
llvm-svn: 127546
2011-03-12 16:48:54 +00:00
Oscar Fuentes
e503506048
Process some link components that map to other expandable components
...
before the main loop. This is necessary because the loop ignores the
items added to `link_components' after it is entered.
llvm-svn: 127333
2011-03-09 14:44:46 +00:00
Oscar Fuentes
a693632dfd
Remove remnant of my experimentation with CMake.
...
llvm-svn: 127244
2011-03-08 13:30:52 +00:00
Oscar Fuentes
318c3f1717
Support for parallel compilation (/MP) when using the VS IDE.
...
Patch by Erik Olofsson!
llvm-svn: 126847
2011-03-02 17:47:37 +00:00
Talin
de422beba4
Added missing va_end().
...
llvm-svn: 126759
2011-03-01 18:00:49 +00:00
Oscar Fuentes
2ece0b171f
Export TARGET_TRIPLE on LLVM.cmake. It is necessary for running tests
...
on Clang when it builds using LLVM as an external library.
Fixes PR9293.
llvm-svn: 126309
2011-02-23 11:28:40 +00:00
Oscar Fuentes
ab0465020b
CMake: remove unnecessary variable.
...
llvm-svn: 126224
2011-02-22 15:40:20 +00:00
NAKAMURA Takumi
66242b85f0
CMake: Define LLVM_INCLUDE_TESTS in cmake/modules/HandleLLVMOptions.cmake. It affects testing stuff on clang-standalone build.
...
llvm-svn: 126107
2011-02-21 03:21:06 +00:00
NAKAMURA Takumi
27b0b5a997
CMake: Fix breakage on clang standalone build.
...
llvm-svn: 126106
2011-02-21 03:20:57 +00:00
Oscar Fuentes
3145e923c1
Put targets on folders, if the IDE supports the feature.
...
Requires CMake 2.8.3 or newer.
llvm-svn: 126092
2011-02-20 22:06:10 +00:00
Oscar Fuentes
ba1186c23e
Use explicit add_subdirectory's for LLVM target sublibraries instead
...
of testing for its presence at cmake time.
This way the build automatically regenerates the makefiles when a svn
update brings in a new sublibrary.
llvm-svn: 126068
2011-02-20 02:55:27 +00:00
Jeffrey Yasskin
139412e169
Add the PARSE_ARGUMENTS CMake macro to LLVM so I can use it to clean
...
up add_clang_unittest's calling convention.
llvm-svn: 126031
2011-02-19 18:01:15 +00:00
Oscar Fuentes
5ed962656c
Move library stuff out of the toplevel CMakeLists.txt file.
...
llvm-svn: 125968
2011-02-18 22:06:14 +00:00
Oscar Fuentes
c9b7c4af5a
New library: LLVMX86Utils.
...
llvm-svn: 125786
2011-02-17 22:26:11 +00:00
NAKAMURA Takumi
860dc41218
CMake: LLVM_LIT_TOOLS_DIR is needed only on Win32 hosts to use GnuWin32 tools.
...
Unixen and Cygwin do not need it.
llvm-svn: 125277
2011-02-10 10:29:42 +00:00
NAKAMURA Takumi
5b4c155112
CMake: Add the new option LLVM_LIT_TOOLS_DIR. It can specify "Path to GnuWin32 tools".
...
llvm-svn: 125173
2011-02-09 04:18:58 +00:00
Oscar Fuentes
0209aec4c6
Install only *.cmake files. Don't install .svn directory.
...
Fixes PR9159.
llvm-svn: 125001
2011-02-07 02:22:23 +00:00
Oscar Fuentes
7dc9dce770
Don't define NDEBUG on MSVC_IDE and XCode builds. Fixes PR9155.
...
llvm-svn: 124985
2011-02-06 19:07:06 +00:00
Oscar Fuentes
3522179e36
Moved more stuff to HandleLLVMOptions.cmake
...
llvm-svn: 124968
2011-02-05 19:08:42 +00:00
Oscar Fuentes
a6aa87898b
Add the tablegenned files to the `clean' target.
...
llvm-svn: 124854
2011-02-04 03:47:50 +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
NAKAMURA Takumi
9795860250
cmake/*: Add svn:eol-style=native and fix CRLF.
...
llvm-svn: 124793
2011-02-03 11:41:27 +00:00
Oscar Fuentes
632ad9bfe6
Don't show -pedantic, -W and -Wall on the output of
...
llvm-config --cflags --cxxflags --cppflags
We shouldn't impose those flags on people who use llvm-config for
building their own projects.
llvm-svn: 124399
2011-01-27 19:29:48 +00:00
Oscar Fuentes
77c4f70123
Made llvm_replace_compiler_option more robust. Use it on
...
llvm_process_sources.
llvm-svn: 123232
2011-01-11 12:31:34 +00:00
Oscar Fuentes
9bf259581c
Don't use -O3 on Mingw, as people report it as unreliable. Use -O2
...
instead.
llvm-svn: 123028
2011-01-07 20:31:03 +00:00
Oscar Fuentes
0db031d532
TableGen.cmake: sometimes the .td file is not in the current directory
...
(clang/include/clang/Basic/StmtNodes.td, for instance, is tablegenned
from clang/include/clang/AST/CMakeLists.txt) so it is not contained on
the list of all .td files on the current source directory which is
used as the DEPENDS of the custom command. We must add the .td file to
the DEPENDS list of the custom command. Otherwise some .inc files are
not regenerated when the corresponding .td file changes.
llvm-svn: 122768
2011-01-03 20:01:32 +00:00
Oscar Fuentes
13ce15ca69
LLVMProcessSources: add .def files along with .h files to targets for
...
the benefit of project-based generators (VS, XCode, etc).
llvm-svn: 122749
2011-01-03 16:59:52 +00:00
Oscar Fuentes
3aea80b564
Propagate to parent scope changes made to CMAKE_CXX_FLAGS.
...
llvm-svn: 122692
2011-01-02 12:30:18 +00:00
Oscar Fuentes
eb6d777882
CMake (MSVC): cmake automatically adds the /EHsc and /GR compiler
...
options. If we are building with exceptions/rtti disabled, we replace
/EHsc with /EHs-c- and /GR with /GR-, respectively. If we just add the
disabling options we get warnings like this:
cl : Command line warning D9025 : overriding '/EHs' with '/EHs-'
llvm-svn: 122648
2010-12-31 19:10:49 +00:00
Oscar Fuentes
9f2b3842a3
Fixes file extension for loadable modules on OS X.
...
Patch by Wesley Peck!
llvm-svn: 122395
2010-12-22 08:30:17 +00:00
Oscar Fuentes
029b1e3802
Update cmake library dependencies.
...
llvm-svn: 122239
2010-12-20 09:47:08 +00:00
Wesley Peck
15b1679cae
Reverting commit to LLVMLibDeps that was inadvertently done in 121649.
...
llvm-svn: 121651
2010-12-12 22:28:51 +00:00
Wesley Peck
632b5926d3
The ADD and ADDK (and all variants) instructions where flip-flopped in the MBlaze backend. This bug fix makes 64-bit math work on the MBlaze backend.
...
llvm-svn: 121649
2010-12-12 22:02:31 +00:00
NAKAMURA Takumi
a8c1c3fe22
Add dependency to "make check".
...
cmake/modules/AddLLVM.cmake: Add empty "phony" target in add_llvm_loadable_module() even if loadable module were not supported.
llvm-svn: 121455
2010-12-10 02:15:36 +00:00
Francois Pichet
82f3b5f945
Disable C++ exception handling on MSVC.
...
Total size of bin\Release on disk goes from 82.9 MB to 74.2 MB. (~10% saving)
llvm-svn: 120908
2010-12-04 14:30:22 +00:00
Francois Pichet
916fae2a34
Disable RTTI on Windows.
...
Total size of bin\Release on disk goes from 83.6 MB to 81.8MB. (~2% saving)
llvm-svn: 120901
2010-12-04 09:42:30 +00:00
Michael J. Spencer
edb9523e09
Update library dependencies changed in the System -> Support merge.
...
llvm-svn: 120308
2010-11-29 19:28:48 +00:00
Wesley Peck
7699d6cfe9
Implement ELF object file writing support for the MBlaze backend. Its not perfect yet, but it works for many tests.
...
llvm-svn: 119952
2010-11-21 22:06:28 +00:00
Oscar Fuentes
b59ee62583
Updated library dependencies.
...
llvm-svn: 119592
2010-11-18 00:12:27 +00:00
Jim Grosbach
186747527a
Revert inadvertant checkin of CMake libdeps.
...
llvm-svn: 119355
2010-11-16 18:14:41 +00:00
Jim Grosbach
e600aba989
ARM conditional mov encoding fix.
...
llvm-svn: 119354
2010-11-16 18:13:42 +00:00
Oscar Fuentes
07c99ebf52
Updated CMake library dependencies.
...
llvm-svn: 119076
2010-11-14 21:17:08 +00:00
Wesley Peck
c542248602
1. Finishing MBlaze MC asm parser test cases
...
2. Parsing .word directive in MBlaze asm parser
3. Fixing hack where memory instructions reversed order of last two parameters
4. Fixing many improperly encoded instructions
5. Support parsing special instructions (MFS,MTS,etc.)
6. Removing unused functions from inst printer
llvm-svn: 118941
2010-11-12 23:30:17 +00:00
Wesley Peck
fc82674b9c
Adding working version of assembly parser for the MBlaze backend
...
Major cleanup of whitespace and formatting issues in MBlaze backend
llvm-svn: 118434
2010-11-08 19:40:01 +00:00
Wesley Peck
e9b429e96f
Adding disassembler to the MicroBlaze backend.
...
llvm-svn: 117420
2010-10-27 00:23:01 +00:00
Oscar Fuentes
ff11a23ef3
Loadable modules are not supported on Cygwin. PR 6655.
...
llvm-svn: 117130
2010-10-22 19:03:24 +00:00
Oscar Fuentes
a522175a90
Avoid stalled file dependency when tablegenning.
...
Patch by Frits van Bommel!
llvm-svn: 117113
2010-10-22 17:37:42 +00:00
Oscar Fuentes
26b1d20b98
Don't try to guess svn version when current path is a symlink.
...
See PR 8473.
llvm-svn: 117109
2010-10-22 17:16:26 +00:00
Oscar Fuentes
861e51a244
Teach CMake to only touch tablegen-generated files if anything
...
actually changed.
Patch by Frits van Bommel!
llvm-svn: 117102
2010-10-22 16:20:10 +00:00
Wesley Peck
a7f6150c14
Adding initial AsmParser implementation for the MBlaze backend. It is
...
mostly based on the ARM AsmParser at this time and is not particularly
functional.
Changed the MBlaze data layout from:
"E-p:32:32-i8:8:8-i16:16:16-i64:32:32-f64:32:32-v64:32:32-v128:32:32-n32"
to:
"E-p:32:32:32-i8:8:8-i16:16:16"
because the MicroBlaze doesn't have i64, f64, v64, or v128 data types.
Cleaned up the MBlaze source code:
1. The floating point register class has been removed. The
MicroBlaze does not have floating point registers. Floating
point values are simply stored in integer registers.
2. Renaming the CPURegs register class to GPR to reflect the
standard naming.
3. Removing a lot of stale code from AsmPrinter after
the conversion to InstPrinter.
4. Simplified sign extended loads by marking them as
expanded in ISelLowering.
llvm-svn: 117054
2010-10-21 19:48:38 +00:00
Wesley Peck
c16f77fb27
Recommit 116986 with capitalization typo fixed.
...
llvm-svn: 116993
2010-10-21 03:57:26 +00:00
Wesley Peck
078db00f1d
Reverting the commit 116986. It was breaking the build on llvm-x86_64-linux though it
...
compiles on OS X. I'll ensure that it builds on a linux machine before committing
again.
llvm-svn: 116991
2010-10-21 03:34:22 +00:00
Wesley Peck
f608ac4db9
Major update of the MicroBlaze backend. The new features are:
...
1. A delay slot filler that searches for valid instructions
to fill the delay slot with. Previously NOPs would always
be inserted into delay slots.
2. Support for MC based instruction printer added.
3. Support for MC based machine code generation and ELF
file generation. ELF file generation does not yet
completely work as much of the ELF support infrastructure
is still x86/x86-64 specific.
4. General clean up of the MBlaze backend code. Much of the
tablegen code has been cleanup and simplified.
Bug Fixes:
1. Removed duplicate periods from subtarget feature descriptions.
2. Many of the instructions had bad machine code information
in the tablegen files. Much of this has been fixed.
llvm-svn: 116986
2010-10-21 03:09:55 +00:00
Oscar Fuentes
889c1e7d80
Build with RTTI and exceptions disabled. Only in GCC for now.
...
llvm-svn: 116682
2010-10-17 02:26:16 +00:00
Oscar Fuentes
ffe32e1137
When building shared libraries, link to required system libraries.
...
PR 8375
llvm-svn: 116479
2010-10-14 15:54:41 +00:00
Oscar Fuentes
d6c1f37f86
GetTargetTriple.cmake: detect MinGW 64 bits.
...
llvm-svn: 116424
2010-10-13 20:15:08 +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
Jim Grosbach
f5e294027e
Update LLVMLibDeps
...
llvm-svn: 115583
2010-10-05 00:35:16 +00:00
Oscar Fuentes
010f24977d
Update library dependencies.
...
llvm-svn: 115404
2010-10-02 03:04:43 +00:00
Oscar Fuentes
fb8126796d
Export LLVM_ALL_TARGETS in LLVM.cmake. It is used by LLVMConfig.
...
llvm-svn: 115039
2010-09-29 15:28:55 +00:00
Oscar Fuentes
18811d503d
Simplified LLVMConfig.
...
llvm-svn: 114998
2010-09-28 22:38:39 +00:00
Oscar Fuentes
cd43c696c9
Use the canonical library name for library PIC16Passes.
...
llvm-svn: 114953
2010-09-28 14:24:47 +00:00
Oscar Fuentes
0fcb8c688d
Added library LLVMPIC16passes to CMake build.
...
llvm-svn: 114952
2010-09-28 14:02:45 +00:00
Oscar Fuentes
b35856e338
Added PTX target to the CMake build.
...
llvm-svn: 114951
2010-09-28 14:02:36 +00:00
Oscar Fuentes
5680231071
Removed remnant target library dependencies from LLVMLibDeps.cmake
...
llvm-svn: 114826
2010-09-27 13:49:41 +00:00
Oscar Fuentes
f80c3c1a30
Updated LLVMLibDeps.cmake
...
llvm-svn: 114825
2010-09-27 13:33:17 +00:00
Oscar Fuentes
46d8a93005
Reverting "CMake: Don't include tools, unittets, or examples as
...
available targets unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies
LLVM_INCLUDE_X"
It breaks the configuration phase when cmake is invoked without
parameters, it is too complex for the purpose and introduces an
incovenience for the user (as both LLVM_BUILD_X and LLVM_INCLUDE_X
must set to OFF for not including X on the build)
llvm-svn: 114795
2010-09-25 20:25:25 +00:00
Michael J. Spencer
e35a611aa5
CMake: Don't include tools, unittets, or examples as available targets
...
unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies LLVM_INCLUDE_X
llvm-svn: 114747
2010-09-24 19:10:51 +00:00
Oscar Fuentes
80a32d62f6
Updated LLVMLibDeps.cmake
...
llvm-svn: 114143
2010-09-17 00:43:53 +00:00
Michael J. Spencer
93c9b2ea93
Revert "CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally."
...
This reverts commit r113632
Conflicts:
cmake/modules/AddLLVM.cmake
llvm-svn: 113819
2010-09-13 23:59:48 +00:00
Michael J. Spencer
7c3a5ee996
CMake: Fix mingw32 build.
...
llvm-svn: 113676
2010-09-11 02:13:39 +00:00
Michael J. Spencer
dc38d36ccb
CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally.
...
llvm-svn: 113632
2010-09-10 21:14:25 +00:00
Michael J. Spencer
ad39c92fbd
CMake: Use the svn revision information from git-svn if available.
...
llvm-svn: 113405
2010-09-08 20:49:40 +00:00
Chandler Carruth
1ddaacebf6
Attempt to remove the MSIL backend from CMake as well based on Chris's r112375.
...
llvm-svn: 112464
2010-08-30 07:25:54 +00:00
Oscar Fuentes
c5c36191fb
Updated CMake library dependencies. Removed unnecessary component name
...
from llvm-link/CMakeLists.txt
llvm-svn: 112153
2010-08-26 02:29:53 +00:00
Oscar Fuentes
53339a737f
Updated LLVMLibDeps.cmake
...
llvm-svn: 111112
2010-08-15 22:14:42 +00:00
Oscar Fuentes
8146b6ccd9
Updated the GenLibDeps -> LLVMLibDeps.cmake transformation example.
...
llvm-svn: 111104
2010-08-15 15:08:27 +00:00
Oscar Fuentes
945f64ebac
CMake: corrections on LLVM.cmake external services.
...
llvm-svn: 110763
2010-08-11 00:51:32 +00:00
Oscar Fuentes
788e84d70e
Update cmake library dependencies.
...
llvm-svn: 110594
2010-08-09 20:33:20 +00:00
Oscar Fuentes
a6c1337239
CMake: llvm_map_components_to_libraries now returns system libs too.
...
llvm-svn: 110563
2010-08-09 03:47:11 +00:00
Oscar Fuentes
a389c58598
CMake: system for providing llvm-config-like features to the user.
...
The user can use a cmake function for obtaining the LLVM libraries
corresponding to a list of LLVM components.
llvm-svn: 110560
2010-08-09 03:26:43 +00:00
Oscar Fuentes
fc21c3aa32
When building from git, add ref-id to PACKAGE_VERSION
...
llvm-svn: 110301
2010-08-05 02:22:51 +00:00
Oscar Fuentes
396cc7d477
New system for choosing CRT type on MSVC.
...
Is setted on a per build type basis. This is useful for generators
that comprise several build types, i.e. VC++ solutions.
llvm-svn: 110296
2010-08-05 01:25:48 +00:00
Oscar Fuentes
371b1b91bf
CMake: Change somme target library names:
...
XCore->XCoreGen
PIC16->PIC16CodeGen
After updating your working copy, the first build will fail because it
is using the old library dependencies. Start the build again and it
will work fine.
llvm-svn: 110127
2010-08-03 17:40:31 +00:00
Oscar Fuentes
052c23cd2f
CMake: add version control info to PACKAGE_VERSION, if available.
...
Adds "svn" or "git", depending on the VCS used. If svn, adds the
revision number as well.
llvm-svn: 110121
2010-08-03 17:28:09 +00:00
Oscar Fuentes
d945ae652a
Improve discrimination of unknown libraries from ignored targets on
...
LLVMConfig.
llvm-svn: 110065
2010-08-02 21:24:12 +00:00
Oscar Fuentes
e53004b188
explicit_map_components_to_libraries now does not complain when there
...
is a dependence on an LLVM target that is not included on the build.
When LLVM_TARGETS_TO_BUILD didn't include all the targets, the
function emitted an error like
"Library LLVMArmParser not found in list of llvm libraries."
llvm-svn: 110060
2010-08-02 20:48:01 +00:00
Oscar Fuentes
e4e9e8e6e7
Updated LLVMLibDeps.cmake.
...
llvm-svn: 110055
2010-08-02 18:36:53 +00:00
Oscar Fuentes
40b31ad3ee
Prefix `next' iterator operation with `llvm::'.
...
Fixes potential ambiguity problems on VS 2010.
Patch by nobled!
llvm-svn: 110029
2010-08-02 06:00:15 +00:00
Douglas Gregor
934ced7749
Allow absolute paths in LLVM_TARGET_DEFINITIONS for CMake's TableGen rule
...
llvm-svn: 106219
2010-06-17 15:17:07 +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
Daniel Dunbar
a7269442d9
Update CMake LibDeps
...
llvm-svn: 94185
2010-01-22 18:14:14 +00:00
Daniel Dunbar
4a8d96df0b
Update CMake LibDeps
...
llvm-svn: 92540
2010-01-04 23:17:24 +00:00
Douglas Gregor
5b88b8a365
Fix CMake build for InstCombine changes
...
llvm-svn: 92519
2010-01-04 21:58:55 +00:00
Daniel Dunbar
039d6e11a8
CMake: Update lib deps.
...
llvm-svn: 91786
2009-12-19 21:27:30 +00:00
Sean Callanan
04cc307edd
Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit
...
incarnations), integrated into the MC framework.
The disassembler is table-driven, using a custom TableGen backend to
generate hierarchical tables optimized for fast decode. The disassembler
consumes MemoryObjects and produces arrays of MCInsts, adhering to the
abstract base class MCDisassembler (llvm/MC/MCDisassembler.h).
The disassembler is documented in detail in
- lib/Target/X86/Disassembler/X86Disassembler.cpp (disassembler runtime)
- utils/TableGen/DisassemblerEmitter.cpp (table emitter)
You can test the disassembler by running llvm-mc -disassemble for i386
or x86_64 targets. Please let me know if you encounter any problems
with it.
llvm-svn: 91749
2009-12-19 02:59:52 +00:00
Oscar Fuentes
58eea20f47
CheckAtomic.cmake: Put all C++ code inside CHECK_CXX_SOURCE_COMPILES.
...
llvm-svn: 90685
2009-12-06 00:06:33 +00:00
Oscar Fuentes
4f6d1eb3e0
Fix for atomic intrinsics detection when using MSVC.
...
Patch by Michael Beck!
llvm-svn: 90683
2009-12-05 23:19:33 +00:00
Oscar Fuentes
d2d1be4d22
* cmake/modules/LLVMLibDeps.cmake: Updated library dependencies.
...
llvm-svn: 90169
2009-11-30 23:48:51 +00:00
Daniel Dunbar
e8b8ccefcb
Add the rest of the build system logic for optional target disassemblers
...
llvm-svn: 89841
2009-11-25 04:46:58 +00:00
Oscar Fuentes
1251697156
CMake: Updated library dependencies.
...
llvm-svn: 89637
2009-11-23 00:40:39 +00:00
Oscar Fuentes
dea579fde3
CMake: Do not try to install a target before it is defined.
...
llvm-svn: 89636
2009-11-23 00:32:42 +00:00
Oscar Fuentes
0c2443a28d
CMake: generate targets for tools and examples even when
...
LLVM_BUILD_TOOLS or LLVM_BUILD_EXAMPLES are OFF.
llvm-svn: 89635
2009-11-23 00:21:43 +00:00
Oscar Fuentes
36dd7d5f5c
Use CMAKE_DL_LIBS instead of raw library name. Fixes bug 5536.
...
Patch by Tobias Grosser!
llvm-svn: 89406
2009-11-19 23:21:43 +00:00
Douglas Gregor
66df54f92c
CMake: Add Darwin-specific linker flags for building loadable modules
...
llvm-svn: 86684
2009-11-10 15:30:33 +00:00
Oscar Fuentes
bbc1067001
CMake: Support for building llvm loadable modules.
...
llvm-svn: 86656
2009-11-10 02:45:37 +00:00
Daniel Dunbar
39a6c62b9d
Fix CMake reporting of target triple.
...
llvm-svn: 86419
2009-11-07 23:52:27 +00:00
Oscar Fuentes
c710219d1c
CMake: Report an error if there is an unknown .cpp file in a source
...
directory.
This is useful in case someone who works with the config&make build
system forgot to add a file to its CMakeLists.txt. Instead of
obtaining undefined references at link time, cmake will complain at
configure time on the first build after a svn update.
llvm-svn: 85817
2009-11-02 19:11:03 +00:00
Daniel Dunbar
d8358b9db6
Update CMake dependencies.
...
llvm-svn: 85013
2009-10-24 20:32:43 +00:00
Oscar Fuentes
5e3fd4df6f
Updated cmake library dependencies.
...
llvm-svn: 84564
2009-10-19 23:00:00 +00:00
Daniel Dunbar
487d1c8138
Update CMake.
...
llvm-svn: 82097
2009-09-17 00:06:48 +00:00
Daniel Dunbar
25ac142b37
Update CMake dependencies.
...
llvm-svn: 81758
2009-09-14 05:22:54 +00:00
Daniel Dunbar
59eb5ef136
Update lib deps.
...
llvm-svn: 80985
2009-09-04 05:07:44 +00:00
Oscar Fuentes
c6db3ee94b
CMake: updated library dependencies.
...
llvm-svn: 80531
2009-08-31 01:58:50 +00:00
Oscar Fuentes
94e470504f
CMake: Updated library dependencies and list of source files.
...
llvm-svn: 79876
2009-08-23 23:59:15 +00:00
Douglas Gregor
81c0524102
CMake: Don't use copy_if_different for TableGen output, because it does not work with IDE targets
...
llvm-svn: 79732
2009-08-22 07:00:18 +00:00
Duncan Sands
a21fe10c06
Fix cmake build on non-x86 targets. Patch by
...
Xerxes Rånby.
llvm-svn: 79419
2009-08-19 12:41:52 +00:00
Oscar Fuentes
a6cf97dc22
CMake: Updated library dependencies.
...
llvm-svn: 79223
2009-08-17 04:23:50 +00:00
Oscar Fuentes
349df2c976
CMake: LLVMConfig assigns LLVMX86 to the `native' component
...
name. Updated LLVM_LINK_COMPONENTS of Kaleidoscope.
llvm-svn: 79219
2009-08-17 01:41:46 +00:00
Oscar Fuentes
91bd6c922d
CMake: Discriminate MINGW, MSYS, CYGWIN: does not try to build llvm-config under mingw without msys.
...
llvm-svn: 79202
2009-08-16 20:50:41 +00:00
Benjamin Kramer
171a7d6823
Fix the MSVC build again.
...
llvm-svn: 79186
2009-08-16 09:44:27 +00:00
Oscar Fuentes
9496a6d7ef
CMake: Hopefully this will fix the build on VS. I can't replicate the
...
failure with VS 9.0, nmake and cmake 2.6.4. The buildbot output does
not show the patch level of cmake, it just says 2.6.
Sadly, parallel builds are broken due to recent changes on LLVM Target
libraries and its auxiliaries (TargetInfo, AsmPrinter, AsmParser). I
have a patch for stablishing the correct dependencies, but cmake is
buggy and generates makefiles that can't handle them.
llvm-svn: 79180
2009-08-16 07:44:02 +00:00
Oscar Fuentes
8160d28712
CMake: Revert r79144. It reverted a change necessary for correct
...
parallel builds.
llvm-svn: 79177
2009-08-16 05:16:43 +00:00
Benjamin Kramer
42f3b9d02d
Revert 78996. It was breaking MSVC builds.
...
llvm-svn: 79144
2009-08-15 21:57:01 +00:00
Richard Osborne
ddd1d4e0f2
Move XCore AsmPrinter to XCore/AsmPrinter directory.
...
llvm-svn: 79094
2009-08-15 12:53:15 +00:00
Oscar Fuentes
cc756e70ad
CMake: Updated library dependence info.
...
llvm-svn: 79038
2009-08-14 20:30:18 +00:00
Oscar Fuentes
1ea4b3a4b5
CMake: Automatic regeneration of the library dependencies file.
...
It doesn't stop or reconfigure the build, though, so the user will see
a broken build that magically succeeds at the next attempt. It is
technically possible to halt the build with a helpful message, and
even to automatically restart the build using the new dependencies as
it we did when llvm-config was used by cmake for learning
dependencies. This is left on the TODO list.
llvm-svn: 79004
2009-08-14 16:59:41 +00:00
Oscar Fuentes
5717a72863
CMake: Builds main LLVM Target library before its sublibraries. This
...
way we ensure that tablegenned files exist before they are #include'd
by the LLVM Target sublibraries. Required for parallel builds.
llvm-svn: 78996
2009-08-14 05:17:24 +00:00
Oscar Fuentes
3fca0e811c
CMake: Use LLVM_COMMON_DEPENDS on add_llvm_executable.
...
llvm-svn: 78990
2009-08-14 04:38:57 +00:00
Oscar Fuentes
96147c60f1
CMake: updated library dependencies.
...
llvm-svn: 78976
2009-08-14 01:55:28 +00:00
Oscar Fuentes
da3b250796
CMake: Fixed sed script for translating library dependencies from
...
LibDeps.txt format to LLVMLibDeps.cmake format.
llvm-svn: 78789
2009-08-12 04:18:10 +00:00
Oscar Fuentes
06eef1c2fe
CMake: Localized dependency on Perl.
...
llvm-svn: 78788
2009-08-12 04:16:19 +00:00
Oscar Fuentes
a88916d94f
CMake: Rely on llvm_config again for obtaining the list of required
...
libraries for an executable.
Now LLVMConfig uses a new system for sorting library dependencies, as
the list of dependent libraries for each entry of FinalLibDeps.txt no
longer is topologically sorted.
llvm-svn: 78787
2009-08-12 04:05:26 +00:00
Oscar Fuentes
1b9110699c
CMake: updated library dependencies.
...
llvm-svn: 78786
2009-08-12 03:57:26 +00:00
Oscar Fuentes
f7591af58e
CMake: cmake/modules/LLVMLibDeps.cmake: Use unix line endings.
...
llvm-svn: 78785
2009-08-12 03:36:43 +00:00
Oscar Fuentes
64f955b732
CMake: Moved hard-coded library dependencies to its own file.
...
llvm-svn: 78784
2009-08-12 03:32:44 +00:00
Oscar Fuentes
e93b54be8d
CMake: target triple for MSVC on Windows 64.
...
llvm-svn: 78753
2009-08-12 00:04:12 +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
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
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
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
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
Oscar Fuentes
58e257de2e
CMake: Use pthread library when requested and available.
...
llvm-svn: 71116
2009-05-06 20:42:04 +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
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
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
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