Commit Graph

424 Commits

Author SHA1 Message Date
Reid Spencer
9eb0b8c719 Make the cleaning of BUILT_SOURCES be a "clean-all" target item, not a
"clean" target item. This gets around having the built sources disappear
when only one build mode wants to be cleaned. With the "clean-all" target,
all build modes are cleaned so it also makes sense to clean out the built
sources at that point.

llvm-svn: 34003
2007-02-07 19:13:19 +00:00
Reid Spencer
b5bffb4290 Remove a spurious ;
llvm-svn: 33976
2007-02-07 03:29:29 +00:00
Reid Spencer
38185b79da Implement the NO_INSTALL feature. Setting this variable to any value in
a directory's Makefile will prevent the build products from that directory
from being installed. This is useful for tools and libraries that are
only useful as part of the build process.

llvm-svn: 33968
2007-02-06 18:53:14 +00:00
Reid Spencer
bf4d68efba When using LINK_COMPONENTS, append the components to the end of the
libraries linked with. This permits a project to still use USEDLIBS to
specify its own libraries in conjunction with LINK_COMPONENTS. llvm-stacker
needs this after libLLVMTransforms.a went away.

llvm-svn: 33886
2007-02-04 22:12:25 +00:00
Andrew Lenharth
6ae270ed50 Work around broken binutils on alpha
llvm-svn: 33535
2007-01-26 13:34:50 +00:00
Reid Spencer
3e2c56c26a Don't remove the find_rule label from FLEX output. It is needed by some
versions of FLEX even through we don't use REJECT. Thanks to Jeff Cohen
for tracking this down.

llvm-svn: 33085
2007-01-11 21:40:25 +00:00
Reid Spencer
f83a0f9a60 Remove the find_rule label from the output of flex. This will break any
use of the REJECT macro but we don't use it. This just hushes up a warning
in the presence of -Wno-unused.

llvm-svn: 32843
2007-01-03 19:56:14 +00:00
Reid Spencer
2137e26989 When compiling a C or C++ file to assembly, make the assembly output
depend on the compiler. This works around problems in the Stacker runtime
when the CFE changes in such a way that the assembly file needs to be
updated.

llvm-svn: 32773
2006-12-30 16:31:02 +00:00
Reid Spencer
758736b8df Allow an --enable-pic option to turn on -fPIC compiler option when building.
The default is disabled until we know this doesn't break anyone.

llvm-svn: 32635
2006-12-16 22:07:52 +00:00
Reid Spencer
ff1f259232 Don't bother with setting the path before running llvm-gcc4, it doesn't
need it like llvm-gcc3 did.

llvm-svn: 32410
2006-12-10 04:56:38 +00:00
Reid Spencer
b4f3be3e27 Remove line not meant to be committed.
llvm-svn: 32163
2006-12-03 21:17:12 +00:00
Reid Spencer
0eff823a44 Handle upgrade of llvm-gcc3 assembly files.
llvm-svn: 32161
2006-12-03 21:01:45 +00:00
Reid Spencer
788d8ef578 Undo removal of the runtime libraries. While this may have been a bit
premature, these libraries will be going away for the 2.0 release. Other
arrangements for profiling, gc, etc. should be made in the next few months.

llvm-svn: 31807
2006-11-17 03:32:33 +00:00
Reid Spencer
77422c102b In LLVM 2.0 we won't use the runtime libraries as llvm-gcc3 support will
be dropped. This patch pertains to removing the runtime directory from LLVM.

llvm-svn: 31793
2006-11-16 23:17:27 +00:00
Chris Lattner
aeddf14f03 Fix typo pointed out by Bryan Adams
llvm-svn: 31766
2006-11-15 21:04:15 +00:00
Reid Spencer
ecf811ba9d Allow ENABLE_OPTIMIZED=0 to turn off optimization (turn on debug).
llvm-svn: 31655
2006-11-11 00:00:31 +00:00
Reid Spencer
4bafa71dc1 For PR786:
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.

llvm-svn: 31380
2006-11-02 20:25:50 +00:00
Chris Lattner
4b204306fa Targets should depend on all the intrinsics.td files also, otherwise they
will compute a locally wrong numbering for the intrinsics.  This fixes a
nasty issue where the x86 backend started miscompiling stuff in a 'cvs up'd
build after the altivec intrinsics were added.

llvm-svn: 31172
2006-10-24 20:32:44 +00:00
Chris Lattner
e7547ac6eb Move CompileCommonOpts to the end of the list so that EXTRA_OPTIONS=-O0 will
override the optimization level.

llvm-svn: 30672
2006-09-29 18:47:13 +00:00
Chris Lattner
8ecba10feb Fix a build problem
llvm-svn: 30096
2006-09-04 06:39:52 +00:00
Chris Lattner
e160871264 Remove some dead makefilery
llvm-svn: 30093
2006-09-04 06:07:12 +00:00
Chris Lattner
ef62912925 Bugfix for llvm-config support
llvm-svn: 30087
2006-09-04 05:23:20 +00:00
Chris Lattner
04697c6d6f Make LINK_COMPONENTS interact well with make clean
llvm-svn: 30086
2006-09-04 04:50:10 +00:00
Chris Lattner
465fd1af4f Add a new make option (LINK_COMPONENTS) which tools can use to specify what
libraries they need.  This uses llvm-config to link the tools.

llvm-svn: 30084
2006-09-04 04:47:21 +00:00
Chris Lattner
8eb46f18d6 Rearrange library linkage order.
llvm-svn: 30074
2006-09-04 01:02:25 +00:00
Reid Spencer
2567610703 For PR387:
Close out this long standing bug by removing the remaining overloaded
virtual functions in LLVM. The -Woverloaded-virtual option is now turned on.

llvm-svn: 29934
2006-08-28 01:02:49 +00:00
Reid Spencer
f653398f0c Doh! Commit the change that turns ON -fno-exceptions.
llvm-svn: 29883
2006-08-25 20:56:59 +00:00
Reid Spencer
e2b7b29a82 For PR797:
Final commit for this bug. This removes the last EH holdouts in LLVM
and turns off exception support by using the -fno-exceptions option. This
leads to the following reduction in library and executable sizes:
                DEBUG BUILD                RELEASE BUILD
         before     after   delta     before   after    delta
lib    162,328K  157,616K   4,712    17,864K  16,416K  1,448K
bin    571,444K  557,156K  14,288    63,296K   56,996K 6,300K

Debug   Improvement: 19,000K (2.59%)
Release Improvement:  7,748K (9.55%)

llvm-svn: 29882
2006-08-25 19:54:53 +00:00
Reid Spencer
45b86c1ebe For PR738:
Demote check for bison from error to warning and make sure that the
makefile can handle an empty definition for BISON variable.

llvm-svn: 29861
2006-08-24 22:41:20 +00:00
Reid Spencer
700153c9dd To avoid errors where a non-exception .o is on the stack between a throw
and a handler, which would produce errors like:
  terminate called after throwing an instance of 'std::string'
we must comment out setting -fno-exceptions until PR797 is completely
fixed. Once libraries like lib/System and lib/Support are exception free,
we can turn it back on.

llvm-svn: 29768
2006-08-18 17:22:07 +00:00
Reid Spencer
10758a6ae5 For PR797:
1. Actually turn on -fno-exceptions in libraries that do not have the
   REQUIRES_EH option in their Makefile. The following library file size
   savings were made (DEBUG):
      libLLVMDataStructure.a  525K
      libLLVMCore.a           380K
      libLLVMCodeGen.a        350K
      libLLVMTransformUtils.a 305K
      libLLVMScalarOpts.a     270K
      libLLVMAnalysis.a       247K
      libLLVMSelectionDAG.a   233K
      libLLVMipo.a            175K
      LLVMX86.o               123K
      LLVMPPC.o                81K
      libLLVMipa.a             17K
                 TOTAL      2,706K
      Note that the savings is actually a little larger than this because
      I didn't count any of the libraries that had small changes.

2. Remove REQUIRES_EH from the AsmParser library as it is now exception
   free. This resulted in a nearly 78K drop in the size of the debug
   library for AsmParser.

llvm-svn: 29767
2006-08-18 09:30:03 +00:00
Reid Spencer
3f5e3c843a For PR780:
1. Change the usage of LOADABLE_MODULE so that it implies all the things
   necessary to make a loadable module. This reduces the user's burdern to
   get a loadable module correctly built.
2. Document the usage of LOADABLE_MODULE in the MakefileGuide
3. Adjust the makefile for lib/Transforms/Hello to use the new specification
   for building loadable modules
4. Adjust the sample project to not attempt to build a shared library for
   its little library. This was just wasteful and not instructive at all.

llvm-svn: 29551
2006-08-07 23:12:15 +00:00
Chris Lattner
ca081a735e Pass -fstrict-aliasing to the compiler when building a release build on darwin.
Darwin doesn't default to it being on.

llvm-svn: 29350
2006-07-27 18:19:51 +00:00
Reid Spencer
b03f452544 For PR814:
Provide support for making cross-compiling builds. See the PR for details.
Patch provided by Anton Korobeynikov. Thanks, Anton!

llvm-svn: 29309
2006-07-26 21:14:56 +00:00
Chris Lattner
472aa0fb84 Reduce work done for directory traversal in srcdir==objdir builds.
llvm-svn: 29300
2006-07-26 20:22:26 +00:00
Evan Cheng
712d724abb Workaround no longer needed.
llvm-svn: 29260
2006-07-21 23:06:51 +00:00
Devang Patel
66bddd67f1 Fix MacOSX build failures. (pr841)
llvm-svn: 29246
2006-07-21 19:44:55 +00:00
Chris Lattner
109640a240 Build more debugger/selectiondag libraries as archives instead of .o files.
This works around bugs in some versions of the cygwin linker.

Patch contributed by Anton Korobeynikov.

llvm-svn: 29239
2006-07-21 00:10:47 +00:00
Andrew Lenharth
0311b39af2 Fix linking on Alpha
llvm-svn: 29219
2006-07-20 17:27:58 +00:00
Chris Lattner
9a7758fd9e Profile builds should always have debug info enabled.
llvm-svn: 29109
2006-07-11 18:33:50 +00:00
Chris Lattner
42a2d8dc20 Allow specifying an explicit list of architectures to build for, e.g.:
make ENABLE_OPTIMIZED=1 UNIVERSAL=1 UNIVERSAL_ARCH="i386 ppc ppc64"

retain the default of building for just i386/ppc.

llvm-svn: 28985
2006-06-29 19:38:04 +00:00
Chris Lattner
1ffa2fcd11 Add targets for generating .s file in addition to .o files.
llvm-svn: 28903
2006-06-21 21:01:20 +00:00
Chris Lattner
0ede8f08ab Factor a bunch of rules together, no functionality change.
llvm-svn: 28902
2006-06-21 20:58:03 +00:00
Evan Cheng
708bed8e6a Allow LLVM to be built with extra options.
llvm-svn: 28873
2006-06-20 18:50:48 +00:00
Chris Lattner
d5d1b926c5 Do not hardcode random paths into the makefile. Make the user specify the
SDK to use when building "universal" on Mac OS/X, if they want to use a
specific one.

llvm-svn: 28842
2006-06-16 21:47:59 +00:00
Chris Lattner
7800330454 Fix building on case-sensitive file systems, grr :)
llvm-svn: 28801
2006-06-15 17:31:22 +00:00
Chris Lattner
bc5c91bb42 Remove obsolete CORE_IS_ARCHIVE stuff.
llvm-svn: 28648
2006-06-02 00:27:42 +00:00
Reid Spencer
b41365509f Provide configuration support and usage for MINGW32 platform
llvm-svn: 28639
2006-06-01 19:03:21 +00:00
Reid Spencer
cf025eb201 For PR786:
Turn -pedantic and -Wno-long-long compile flags on by default. In a few
places, avoid the warnings by removing these options in the local makefile.
One notable exception: lib/Target/CBackend/Writer.cpp. These warnings are
left on as a reminder to developers to clean them up.

llvm-svn: 28614
2006-06-01 01:55:21 +00:00
Reid Spencer
94a443bb29 Use archive libraries instead of object files for VMCore, BCReader,
BCWriter, and bzip2 libraries. Adjust the various makefiles to accommodate
these changes. This was done to speed up link times.

llvm-svn: 28610
2006-06-01 01:30:27 +00:00