Jay Foad
b807bd761c
Work around the fact that GNU libstdc++'s debug mode uses RTTI.
...
llvm-svn: 71871
2009-05-15 18:13:31 +00:00
Daniel Dunbar
353db71295
Allow client Makefiles control over whether they want -pedantic by
...
defining NO_PEDANTIC.
- Pedantic C89 is a painful language...
llvm-svn: 71545
2009-05-12 07:26:49 +00:00
Daniel Dunbar
0d350a6e69
Refactor dependency generation for .ll files.
...
- This matches the normal dependency generation code.
- This also fixes the problem that when building a normal and bitcode
archive from the same source, the dependency files would overwrite
one another. Which was bad.
llvm-svn: 71542
2009-05-12 06:35:50 +00:00
Daniel Dunbar
f9f96f1ce1
Remove obsolete Makefile magic for calling llvm-upgrade
...
llvm-svn: 71540
2009-05-12 05:49:22 +00:00
Daniel Dunbar
92d38f05bc
Install bytecode libraries with a .bca suffix, otherwise it isn't
...
possible to build both a .a and a .bca.
- My understanding is no one else is using this stuff, please let me
know if I am wrong.
llvm-svn: 71539
2009-05-12 05:35:40 +00:00
Mike Stump
5deb77232a
In non-pic builds, we can use -mdynamic-no-pic for a little more speed.
...
llvm-svn: 71281
2009-05-08 23:08:58 +00:00
Anton Korobeynikov
68dee47353
Workaround libstdc++ bug when crosscompiling to mingw.
...
Patch by Jay Foad!
llvm-svn: 70849
2009-05-04 10:25:30 +00:00
Mikhail Glushenkov
1b37a864d2
Support --with-llvmgccdir and friends in llvmc, take 2.
...
Should now work when building with objdir != srcdir and when llvm-gcc is not
available.
Thanks to Duncan Sands for testing and advice!
llvm-svn: 69700
2009-04-21 19:46:10 +00:00
Evan Cheng
2ae6d55955
No, we are not avoiding -O3, just -fstrict-aliasing.
...
llvm-svn: 69633
2009-04-20 22:49:59 +00:00
Evan Cheng
9118b7ce52
One Mac OS X, just build with -O3 but without -fstrict-aliasing (which is kinda broken).
...
llvm-svn: 69630
2009-04-20 22:16:40 +00:00
David Greene
ccb1d82cd7
Add a --enable-profiling option to configure to build Debug+Profile and
...
Opt+Profile tools. Now we can profile any kind of flavor we build.
llvm-svn: 69351
2009-04-17 14:49:22 +00:00
Chris Lattner
01ad312099
move clang-specific makefile goop to clang makefile.
...
llvm-svn: 69206
2009-04-15 19:57:42 +00:00
Bill Wendling
8e3613d34b
Don't install the libLLVMHello.dylib example.
...
llvm-svn: 68807
2009-04-10 18:48:38 +00:00
Bill Wendling
e619558f13
Add compatibility_version and current_version flags when creating dylibs.
...
llvm-svn: 68801
2009-04-10 18:20:41 +00:00
Bill Wendling
c2b941b79c
Revert r68708. It was causing this failure in the self-hosting buildbot:
...
llvm[2]: Compiling lto.cpp for Debug build (PIC)
make[2]: *** No rule to make target `/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/Debug/lib/libLLVMBitWriter.a', needed by `/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/Release/lib/libLTO.dylib'. Stop.
make[1]: *** [all] Error 1
make: *** [all] Error 1
llvm-svn: 68721
2009-04-09 18:26:57 +00:00
Misha Brukman
694eb0f18e
Make sure to rebuild dependencies for the check' and
unittests' targets so
...
we're not testing out-of-date code. This also makes "make check" and
"make unittests" work out-of-the box right after the configure step, without
requiring the user to run "make tools-only" or "make libs-only".
Tested on Linux/x86_64 and Darwin/x86.
llvm-svn: 68708
2009-04-09 14:57:00 +00:00
Mike Stump
f8e3eea558
Avoid -O3 on Darwin for now.
...
llvm-svn: 68455
2009-04-06 19:58:11 +00:00
Julien Lerouge
eaa08f7d93
Fix build on MacOS 10.4 systems (suggested by Mike Smith).
...
llvm-svn: 67855
2009-03-27 18:18:00 +00:00
Duncan Sands
28e2a3fee7
Revert previous change in favour of an explanatory
...
comment.
llvm-svn: 67833
2009-03-27 11:35:00 +00:00
Duncan Sands
915db4b084
A Release-Asserts build makes it sound like assertions
...
are turned on, while in fact they are turned off. Name
this Release-NoAsserts instead.
llvm-svn: 67831
2009-03-27 09:41:56 +00:00
Evan Cheng
26bc5d6039
Missed this as part of r67451.
...
llvm-svn: 67500
2009-03-23 03:45:56 +00:00
Bill Wendling
7299f4d1e4
Really should pass -dylib to the linker...
...
llvm-svn: 67469
2009-03-22 08:56:15 +00:00
Bill Wendling
ef7b77b91b
A dylib should be built as a dylib and not a bundle.
...
llvm-svn: 67468
2009-03-22 08:28:45 +00:00
Nick Lewycky
0561fdaaf7
Revert r67334 and r37349 which break "make check" on Linux.
...
llvm-svn: 67368
2009-03-20 07:56:31 +00:00
Evan Cheng
d331946d5b
More makefile changes to allow dejagnu tests to pass when system tools default to a different target from the llvm configuration (e.g. 64-bit gcc and 32-bit llvm).
...
llvm-svn: 67334
2009-03-19 20:27:23 +00:00
Sebastian Redl
5fb9613105
Fix Clang build for srcdir != objdir
...
llvm-svn: 67008
2009-03-14 14:42:51 +00:00
Sebastian Redl
0579fd8f8d
Add support for generating Clang diagnostic defs to Makefile.rules.
...
llvm-svn: 67006
2009-03-14 11:59:18 +00:00
Daniel Dunbar
5c982814cf
Add ENABLE_COVERAGE, for building a +Coverage (gcov) configuration.
...
- Required some extra makefile tweaks to introduce a new flag var
which only goes to compile/link tools but not the relink step,
otherwise we get a copy of libgcov in the relinked .o files.
- No configure magic for this.
llvm-svn: 66945
2009-03-13 20:59:41 +00:00
Scott Michel
addb2cdbea
Darwin 10.4.x: "-rpath" is unnecessary when linking shared libraries.
...
llvm-svn: 66825
2009-03-12 21:03:53 +00:00
Bill Wendling
69b05ddc4f
Revert r66765 and r66766. These were causing build failures on Darwin.
...
llvm-svn: 66770
2009-03-12 04:10:09 +00:00
Nick Lewycky
71fd935173
Set ARCH to x86 on mixed 32/64-bit Linux systems.
...
Remove the explicit if OS = Darwin test around the setting of -m32/-m64.
llvm-svn: 66765
2009-03-12 03:34:19 +00:00
Rafael Espindola
940ac89ff3
Fix rebuilding after a .td file is modified. This was broken since revision
...
65834.
llvm-svn: 66553
2009-03-10 17:58:54 +00:00
Chris Lattner
8ae70c265d
don't pass -Wl,-exported_symbol -Wl,_main to the linker when building on
...
Tiger. PR3743
llvm-svn: 66550
2009-03-10 17:15:56 +00:00
Evan Cheng
7a12489de8
Re-apply 66315, but restrict it to Darwin only.
...
llvm-svn: 66427
2009-03-09 18:28:37 +00:00
Chris Lattner
48b3a32f24
Fix PR3743 - -mmacosx-version-min inappropriate for Mac OS X 10.4.11,
...
by stripping off any versions past the "10.4".
llvm-svn: 66392
2009-03-09 04:45:03 +00:00
Nick Lewycky
aabb2cbf1c
Revert r66315. Fix the build on mixed 64/32 Linux systems.
...
llvm-svn: 66350
2009-03-07 22:17:05 +00:00
Evan Cheng
5582d4bb05
If ARCH is x86_64, pass -m64 to the host compiler. -m32 for i386. This makes sure the JIT work correctly.
...
llvm-svn: 66315
2009-03-07 01:40:17 +00:00
Daniel Dunbar
097458ffb9
Rename my makefile debugging rule to prevent accidental collisions.
...
llvm-svn: 66294
2009-03-06 22:23:25 +00:00
Mikhail Glushenkov
d6a332110e
LINK_COMPONENTS should be added to LLVMLibsOptions.
...
From the code: "There are "Proj" libs (defined by the user's project) and "LLVM"
libs (defined by the LLVM project)." LINK_COMPONENTS are clearly defined by the
LLVM project.
Additionally, this fixes an issue with llvmc's build process:-)
llvm-svn: 65940
2009-03-03 10:03:27 +00:00
Nick Lewycky
28f2571059
Switch to using -Wl,-R on Solaris.
...
llvm-svn: 65927
2009-03-03 04:55:15 +00:00
Nick Lewycky
16799e4e7c
Fix build on Cygwin.
...
llvm-svn: 65922
2009-03-03 03:36:50 +00:00
Mikhail Glushenkov
5d2b946f51
Remove duplication in Makefile.rules.
...
Merge common bits from the LLVMC and TABLEGEN sections.
llvm-svn: 65834
2009-03-02 09:42:59 +00:00
Mikhail Glushenkov
a79911a965
Move the rules for building plugins to Makefile.rules.
...
llvm-svn: 65827
2009-03-02 09:04:13 +00:00
Chris Lattner
d137d547ef
Fix universal builds to not use -XCClinker (a libtool thing) now that
...
libtool doesn't exist.
llvm-svn: 65561
2009-02-26 19:08:30 +00:00
Chris Lattner
91dc97604c
no really, use the right path.
...
llvm-svn: 65554
2009-02-26 18:38:40 +00:00
Chris Lattner
63196eeef8
Search for the export map in a place that it can be found.
...
llvm-svn: 65552
2009-02-26 18:37:59 +00:00
Chris Lattner
a9b773c4d9
strip exported symbols from tools that build with TOOL_NO_EXPORTS=1.
...
llvm-svn: 65543
2009-02-26 17:47:49 +00:00
Chris Lattner
9a85c5a626
pass -mmacosx-version-min to the compiler and linker, which makes the build
...
substantially happier on some versions of Mac OS/X.
llvm-svn: 65542
2009-02-26 17:44:38 +00:00
Nick Lewycky
aa0314b1ff
Fix typo.
...
llvm-svn: 65521
2009-02-26 08:48:14 +00:00
Nick Lewycky
2c0df5ef49
Fix typo!
...
llvm-svn: 65520
2009-02-26 08:03:36 +00:00
Nick Lewycky
bc0bb948cc
Remove libtool.
...
llvm-svn: 65517
2009-02-26 07:44:16 +00:00
Daniel Dunbar
4500ec59c2
Add makefile debugging target; use "make print-FOO" to print the
...
value/definition/origin of FOO.
llvm-svn: 65245
2009-02-21 20:42:39 +00:00
Nick Lewycky
4d6ea70a06
Pass different flags on different platforms when building PIC.
...
llvm-svn: 65229
2009-02-21 08:41:09 +00:00
Mike Stump
780d14738b
Avoid order files for now, as they aren't supported in 3.79.
...
llvm-svn: 64412
2009-02-12 23:45:11 +00:00
Dale Johannesen
fa28929927
Reapply 63765. Patches for clang and llvm-gcc to follow.
...
llvm-svn: 63812
2009-02-05 01:49:45 +00:00
Dale Johannesen
f6e1822ccd
Reverting 63765. This broke the build of both clang
...
and llvm-gcc.
llvm-svn: 63786
2009-02-04 22:47:25 +00:00
Nate Begeman
66f10b55ed
New feature: add support for target intrinsics being defined in the
...
target directories themselves. This also means that VMCore no longer
needs to know about every target's list of intrinsics. Future work
will include converting the PowerPC target to this interface as an
example implementation.
llvm-svn: 63765
2009-02-04 19:47:21 +00:00
Mike Stump
ef377ddede
Perform optional clang building.
...
llvm-svn: 62895
2009-01-24 00:00:41 +00:00
Mike Stump
475c530c8a
Don't create .dir files in installation directories. Switch to using
...
order-only dependancies for installation directories.
llvm-svn: 62746
2009-01-22 03:24:22 +00:00
Mikhail Glushenkov
f6b520e88a
Support llvmc plugins in out-of-tree projects.
...
llvm-svn: 61990
2009-01-09 16:31:01 +00:00
Misha Brukman
69aa9d73f0
Removed trailing whitespace.
...
llvm-svn: 61904
2009-01-08 02:11:55 +00:00
Bill Wendling
a0155c41c9
Modify the unittests Makefiles so that they don't rebuild parts of LLVM just to
...
run the tests. Most of this was stolen from the llvm/test Makefiles.
llvm-svn: 61648
2009-01-04 23:12:21 +00:00
Bill Wendling
e54262ccd2
Revert r61598 as it does nothing.
...
llvm-svn: 61614
2009-01-03 22:46:50 +00:00
Bill Wendling
680d1c8fc5
Make sure that 'ranlib' runs only after 'ar' is completed.
...
llvm-svn: 61598
2009-01-03 01:11:39 +00:00
Chris Lattner
a8158ed0a9
Remove lex/bison support from makefile.rules.
...
llvm-svn: 61562
2009-01-02 07:16:45 +00:00
Bill Wendling
46c9d8127d
Don't error out if ranlib fails.
...
llvm-svn: 61551
2009-01-02 02:53:24 +00:00
Duncan Sands
88a2901801
Fix PR3117: not all nodes being legalized. The
...
essential problem was that the DAG can contain
random unused nodes which were never analyzed.
When remapping a value of a node being processed,
such a node may become used and need to be analyzed;
however due to operands being transformed during
analysis the node may morph into a different one.
Users of the morphing node need to be updated, and
this wasn't happening. While there I added a bunch
of documentation and sanity checks, so I (or some
other poor soul) won't have to scratch their head
over this stuff so long trying to remember how it
was all supposed to work next time some obscure
problem pops up! The extra sanity checking exposed
a few places where invariants weren't being preserved,
so those are fixed too. Since some of the sanity
checking is expensive, I added a flag to turn it
on. It is also turned on when building with
ENABLE_EXPENSIVE_CHECKS=1.
llvm-svn: 60797
2008-12-09 21:33:20 +00:00
Evan Cheng
a19ef59d6c
Move target independent td files from lib/Target/ to include/llvm/Target so they can be distributed along with the header files.
...
llvm-svn: 59953
2008-11-24 07:34:46 +00:00
Anton Korobeynikov
beab79d46c
Proper way of doing llvm canadian-cross compilation.
...
Patch by Jim Grosbach!
llvm-svn: 58981
2008-11-10 07:33:13 +00:00
Daniel Dunbar
cd663da6ec
Comment fix.
...
llvm-svn: 58621
2008-11-03 17:33:36 +00:00
Dan Gohman
268cfea6bc
Fun x86 encoding tricks: when adding an immediate value of 128,
...
use a SUB instruction instead of an ADD, because -128 can be
encoded in an 8-bit signed immediate field, while +128 can't be.
This avoids the need for a 32-bit immediate field in this case.
A similar optimization applies to 64-bit adds with 0x80000000,
with the 32-bit signed immediate field.
To support this, teach tablegen how to handle 64-bit constants.
llvm-svn: 57663
2008-10-17 01:33:43 +00:00
Daniel Dunbar
a2c75a73f3
Another dependency fix, prevent ObjDir from having trailing slash.
...
- It turns out this is enough to completely break dependency file
(.d) usage (at least for my gmake).
llvm-svn: 57030
2008-10-03 21:24:52 +00:00
Daniel Dunbar
2264554763
Add IS_CLEANING_TARGET Makefile variable.
...
- Fixes bug in dependency inclusions where make with unspecified
target wouldn't include dependency files, eek!
llvm-svn: 57026
2008-10-03 19:11:19 +00:00
Jim Grosbach
659f1ab77f
Add support for Canadian Cross builds where the host executables are not
...
runnable on the build machine.
There are a few bits that need built for the build environment (TableGen).
This patch builds those bits, and the associated libraries, for the build
environment as well as the (usual) host environment.
Thanks to Eric C. and Devang P. for pre-commit review.
llvm-svn: 56975
2008-10-02 22:56:44 +00:00
Daniel Dunbar
4929090fb1
Reapply majority of r55557 but with the changes to compilation flags
...
disabled until issues with gcc 4.1 on linux 32-bit are resolved.
llvm-svn: 55636
2008-09-02 17:35:16 +00:00
Matthijs Kooijman
96700eceda
Revert r55557, it is causing linking failures on 32bit linux.
...
llvm-svn: 55628
2008-09-02 09:51:00 +00:00
Daniel Dunbar
767a0be71c
Enable -fvisibility-inlines-hidden by default for compilers which
...
support it.
llvm-svn: 55557
2008-08-30 01:16:19 +00:00
Gabor Greif
c3711501ef
fix the output dumbness I have introduced some time ago
...
llvm-svn: 55506
2008-08-28 22:32:39 +00:00
Dan Gohman
4b1b033f89
Initial checkin of the new "fast" instruction selection support. See
...
the comments in FastISelEmitter.cpp for details on what this is.
This is currently experimental and unusable.
llvm-svn: 54751
2008-08-13 20:19:35 +00:00
Chris Lattner
7fdc625548
Add support for building on solaris, working around namespace
...
polution problems from system headers. Patch by Nathan Keynes!
llvm-svn: 52682
2008-06-24 17:44:42 +00:00
Evan Cheng
9d5a811ae1
Warn of potential violations of strict aliasing rules.
...
llvm-svn: 52027
2008-06-05 23:00:08 +00:00
Evan Cheng
ce2c3b07ba
Revert 51775.
...
llvm-svn: 51795
2008-05-30 22:47:19 +00:00
Evan Cheng
8ebaae9d1c
Patches for building llvm on Solaris x86. Contributed by Nathan Keynes.
...
llvm-svn: 51775
2008-05-30 17:16:20 +00:00
Gabor Greif
48ffb6c7dc
Fix a bunch of 80col violations that arose from the Create API change. Tweak makefile targets to find these better.
...
llvm-svn: 51143
2008-05-15 10:04:30 +00:00
Gordon Henriksen
d42b23a2d9
Refresh Makefile.ocaml in objdir if it is modified in srcdir.
...
Patch by Erick Tryzelaar!
llvm-svn: 48149
2008-03-10 15:58:40 +00:00
Gabor Greif
80152c3b09
Remove inappropriate whitespace, change CVS to SVN where it makes sense.
...
llvm-svn: 47671
2008-02-27 13:34:15 +00:00
Andrew Lenharth
4666486a41
when making bytecode modules, link as library
...
llvm-svn: 47574
2008-02-25 22:41:55 +00:00
Chris Lattner
578a3c2083
Make the check for GCC version more robust, fix shared library
...
dependencies in makefile, and fix llvm_cv_no_link_all_option
on darwin.
Patch by Shantonu Sen, more info here:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2008-February/012410.html
llvm-svn: 46760
2008-02-05 19:43:40 +00:00
Duncan Sands
069f3f7631
Unbreak builds with differing object and source
...
directories. Patch by Sam Bishop.
llvm-svn: 46453
2008-01-28 17:38:30 +00:00
Chris Lattner
01aaf36663
reduce duplicate -I flags passed to the compiler, cleaning up the VERBOSE
...
output. Patch contributed by Sam Bishop!
llvm-svn: 46432
2008-01-28 04:18:41 +00:00
Chris Lattner
892727ad35
One too many )'s breaks 'make clean' with certain versions of make.
...
This fixes PR1927
This should be pulled into llvm 2.2.
llvm-svn: 46245
2008-01-22 05:19:26 +00:00
Chris Lattner
b7af13397a
Commit a piece that I missed before, patch by Alain Frisch
...
llvm-svn: 46032
2008-01-15 23:27:40 +00:00
Gordon Henriksen
87171d82dc
Modify Makefile.rules to allow makefiles to prepend to C.Flags and
...
fiends. Change Makefile.ocaml to not touch CFLAGS.
llvm-svn: 45663
2008-01-06 21:54:35 +00:00
Chris Lattner
48d3d78bcf
Factor out makefile dependency generation better.
...
Don't include system headers in the .d files.
Don't use $@ in the makefile rules, as there are two possible targets it could resolve to: use the one that we need explicitly.
llvm-svn: 45473
2007-12-31 23:58:31 +00:00
Chris Lattner
6aece93d5c
remove attributions from the rest of the llvm makefiles.
...
llvm-svn: 45416
2007-12-29 20:11:13 +00:00
Chris Lattner
a30e6609ec
noone uses etags. Connected to PR1601
...
llvm-svn: 42344
2007-09-26 06:10:47 +00:00
Reid Spencer
35a72e2e77
Restore ability to build archives (oops)
...
Fix -include line so it doesn't reference /dev/null
llvm-svn: 40429
2007-07-23 08:20:46 +00:00
Reid Spencer
6f1704a3ad
Remove bizarre use of /dev/null in a makefile include line that
...
produces warning from make about bad timestamp on /dev/null
Patch by Holger Schurig.
llvm-svn: 40426
2007-07-23 08:09:15 +00:00
Reid Spencer
e8d96d8dac
Make sure to keep symbols for profile build.
...
Patch by Benoit Boissinot. Thanks, Benoit!
llvm-svn: 38490
2007-07-10 14:52:01 +00:00
Reid Spencer
60cb7070fe
Make sure that preprocessor symbols like _DEBUG, NDEBUG, and _GLIBC_DEBUG are
...
put into the CPP.Defines variable. Seems the convention was corrupted with
various changes made. It is important to get command line parameters into the
right variable because things like llvm-config and sub-makefiles depend on it.
llvm-svn: 38486
2007-07-10 07:19:53 +00:00