Commit Graph

16 Commits

Author SHA1 Message Date
Mikhail Glushenkov
112972509a Remove duplication.
Factor out common preprocessor-related bits to Makefile.rules.

llvm-svn: 74153
2009-06-25 01:07:00 +00:00
Mikhail Glushenkov
f7b3bf53e2 Make llvmc work again.
Chris recently broke llvmc with his Makefile changes (r75379). That patch made
the global change .o -> .a, which caused built-in llvmc plugins to stop working
since plugin initialization in llvmc is based on static variables not referenced
from the main executable. This patch implements auto-generated forced references
to the plugin libraries.

llvm-svn: 74000
2009-06-23 20:46:48 +00:00
Chris Lattner
3c85f09f57 Remove support for building LLVM libraries into "relinked"
object files.  Now we always build LLVM libraries into archives (.a files).

This makes the 'make' build work more like the cmake build, among other
things.  Doing this exposed some latent circular library dependencies, so
I think that llvm-config wasn't quite right for .o files anyway.

llvm-svn: 73579
2009-06-16 23:00:42 +00:00
Mikhail Glushenkov
86e63a12c5 Use LLVMLIBS instead of USEDLIBS.
Since this Makefile is supposed to be usable from LLVM-based projects not in the
tree, LLVMLIBS should be used instead of USEDLIBS. This depends on my previous
fix to Makefile.rules.

llvm-svn: 65941
2009-03-03 10:03:53 +00:00
Mikhail Glushenkov
3f2bbd6301 Move code from Main.cpp to the include dir.
User drivers based on llvmc must all share the initialization code.
Putting main() into libCompilerDriver is not a very good idea IMO (and ld gave
me some strange EH-related error anyway).

llvm-svn: 65825
2009-03-02 09:03:02 +00:00
Mikhail Glushenkov
3cde18e191 Reorganize llvmc code.
Move the code from 'llvmc/driver' into a new CompilerDriver library, and change
the build system accordingly. Makes it easier for projects using LLVM to build
their own llvmc-based drivers.

Tested with objdir != srcdir.

llvm-svn: 65821
2009-03-02 09:01:14 +00:00
Mikhail Glushenkov
f9201d933e Add some comments.
llvm-svn: 63364
2009-01-30 02:12:57 +00:00
Mikhail Glushenkov
ff00dc77f2 Fix 'llvm-config --libs' output.
Change the naming scheme for llvmc plugins so that they do not appear in
'llvm-config --libs' output.

llvm-svn: 62687
2009-01-21 13:05:00 +00:00
Mikhail Glushenkov
1acdd98295 Make -o a prefix option.
Both 'llvmc -o file' and 'llvmc -ofile' should work.

llvm-svn: 62211
2009-01-14 02:02:16 +00:00
Mikhail Glushenkov
6761ea2676 Add a --check-graph option to llvmc.
llvm-svn: 61989
2009-01-09 16:16:27 +00:00
Oscar Fuentes
3eaab7ff7a CMake: Added Tool.cpp to tools/llvmc/driver.
llvm-svn: 60670
2008-12-07 17:01:16 +00:00
Mikhail Glushenkov
72a5dd4ae6 Join tools couldn't be used in the middle of the toolchain.
llvm-svn: 60665
2008-12-07 16:45:37 +00:00
Mikhail Glushenkov
f01331152a Use (actions) instead of option properties, support external options.
Also includes a major refactoring. See documentation for more
information.

llvm-svn: 60656
2008-12-07 16:41:11 +00:00
Mikhail Glushenkov
869ded12c8 Disallow multiple edges.
llvm-svn: 60127
2008-11-26 22:59:45 +00:00
Oscar Fuentes
4588307b06 CMake: llvmc2 is now known as llvmc.
llvm-svn: 60052
2008-11-25 22:18:49 +00:00
Mikhail Glushenkov
89bfeb825b Since the old llvmc was removed, rename llvmc2 to llvmc.
llvm-svn: 60048
2008-11-25 21:38:12 +00:00