Commit Graph

47 Commits

Author SHA1 Message Date
Chris Lattner
4bb13b8eb1 Factor platform specific makefile directives out into their own makefile
fragments.  This is gross, but having tons of confusing conditionals all
throughout the build system seems worst.

Credits got to Casey Carter for the idea.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3705 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-13 22:14:47 +00:00
Chris Lattner
ab060db476 Link .so files correctly on either linux or solaris
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3703 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-13 21:41:07 +00:00
Chris Lattner
73e1d0f195 Build with -D_GNU_SOURCE to enable gnu extensions in header files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3702 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-13 16:02:26 +00:00
Chris Lattner
287d4436c5 Make sure to print a message when linking a tool
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3687 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-12 17:02:40 +00:00
Misha Brukman
b5f096fc51 Compiling with "gmake" should produce less output. The compilation/linking
flags are always the same anyway, who wants to see so much text on the
screen? Compiling with "gmake VERBOSE=1" should produce all the output
you're used to.

Basically it checks for VERBOSE being defined, and if it is, sets VERB
appropriately. VERB is then prepended in a bunch of key places such that
when VERB is "@", the command is not echoed, when VERB is not set to
anything, it's as before.

One thing I could not get rid of is "gmake[1]: Entering directory <blah>",
but running "gmake -s" suppresses it all, and shows just the interesting
stuff.

Now output (when running "gmake -s" will look something like):

<snip>
======= Linking target debug library =======
Compiling Writer.cpp
Compiling getLLVMinfo.cpp
Compiling as.cpp
Compiling dis.cpp
Compiling opt.cpp
Compiling gccas.cpp
<snip>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3686 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-12 16:05:39 +00:00
Vikram S. Adve
c214e71edf Simplified significantly by pulling out local configuration options
into Makefile.config.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3527 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-29 23:28:46 +00:00
Vikram S. Adve
764b46ea2d Factor out /shared/... path to simplify changing it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3521 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-29 18:40:51 +00:00
Vikram S. Adve
f8d630a0fa Fix clean command to clean in /shared when that is used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3449 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-22 03:20:27 +00:00
Chris Lattner
8e28a70044 Throw purify temporary files into /shared if we have it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3365 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-17 21:39:58 +00:00
Chris Lattner
285af38864 - Makefile changes:
- Now build executables into /shared
   - New BUILD_ROOT_TOP variable which is basically = $(BUILD_ROOT)/$(LEVEL) but
     cleaner and works for llvm/test/*
   - Use := more in Makefile.common


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3291 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-12 21:19:28 +00:00
Chris Lattner
43db05a81c Oops, I accidentally broke the .d files. Fixed thusly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3272 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-09 19:18:12 +00:00
Chris Lattner
e16b1b492d * Remove some bogus dependencies on Depend/.dir
* Build into the machine local /shared directory instead of using local
  Debug/Depend/Release directories


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3269 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-09 15:41:55 +00:00
Chris Lattner
9dd794ee00 Comment options that may be enabled
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3237 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-03 20:19:30 +00:00
Vikram S. Adve
60f5606f5f Don't build Debug/ versions when ENABLE_OPTIMIZED is on.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3216 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-02 18:34:12 +00:00
Chris Lattner
1917e95cf0 Cleanup Makefile a bit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3192 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-31 21:32:05 +00:00
Chris Lattner
4fa128c950 Changes to allow building lib/Target/Sparc the FIRST time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3078 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-25 15:01:19 +00:00
Chris Lattner
edf1f23e53 Allow directories to specify that they want to be built as a shared object by default
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3027 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-23 19:21:31 +00:00
Chris Lattner
e62dbe9a22 Enable USEDLIBS to contain .a and .o files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3003 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-23 17:56:16 +00:00
Vikram S. Adve
d60aedef05 Add makefile-mode flag for emacs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2841 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-09 12:04:21 +00:00
Chris Lattner
18f4701b2b * Allow a profile'd code build to be done with a simple 'make ENABLE_PROFILING=1'
* Only build tags for include, lib, and tools, not tests
* Turn on verbose output from bison to get information about shift/reduce
  conficts (why isn't this the default??)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2603 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-10 18:51:54 +00:00
Chris Lattner
ec6bed27dd Hopefully this change will make the makefile work for other people without hacking it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2128 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07 06:18:40 +00:00
Chris Lattner
12604ed51a * Allow purify builds to be enabled without hacking the makefile. Now you
just have to run: make ENABLE_PURIFY=1
* Add command to the link line that makes the broken GCC 3.0 compiler work
  without affecting 2.95.3


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2116 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-05 18:56:58 +00:00
Chris Lattner
0cac4b8f3f Try to fix build error
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1723 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-11 17:12:03 +00:00
Chris Lattner
c7acf81519 Add := to make stuff more efficient
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1551 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-23 05:46:01 +00:00
Chris Lattner
514fc3651b Reenable warning now that Chuck fixed GCC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1517 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-21 23:15:20 +00:00
Chris Lattner
697954c15d Changes to build successfully with GCC 3.02
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-20 22:54:45 +00:00
Chris Lattner
aa6ec735cf 1. -Winline emits spurious warnings that aren't useful right now
2. Fix the "rebuild everything if I change one file" problem


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1176 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-07 14:50:58 +00:00
Chris Lattner
6e39070b09 Add easy way to enable purify support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1045 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-30 20:24:08 +00:00
Vikram S. Adve
27dc7b6b9d Simplify etags command.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@954 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22 13:58:22 +00:00
Chris Lattner
e001059e0a Change Sources specifier to ExtraSources
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@874 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-18 01:48:09 +00:00
Vikram S. Adve
c4bed346ec Allow only extra Source files to be listed in a local Makefile.
Needed for automatically generated .cpp files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@853 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-17 12:33:55 +00:00
Chris Lattner
db00877496 Burg files should come out of the Debug Directory for temporary files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@790 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-14 17:23:55 +00:00
Vikram S. Adve
022d06ce2f Fixed tags target so it only happens at root level.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@787 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 12:26:59 +00:00
Chris Lattner
669bd7c2c2 Each tools should not make tags
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@730 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 05:10:29 +00:00
Vikram S. Adve
0193d5e58e Added a rule for building TAGS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@723 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-10 22:35:00 +00:00
Chris Lattner
49f2b9470e Add support for tool specified linker options
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@527 91177308-0d34-0410-b5e6-96231b3b80d8
2001-09-10 04:49:26 +00:00
Chris Lattner
bf2f043659 Fix automatic dependence on static libs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@513 91177308-0d34-0410-b5e6-96231b3b80d8
2001-09-09 20:59:28 +00:00
Chris Lattner
1cbc29ff20 Support TOOLNAME and USEDLIBS options for easier tool building
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@498 91177308-0d34-0410-b5e6-96231b3b80d8
2001-09-07 22:57:58 +00:00
Vikram S. Adve
d9151962df Added InstrSched library to link line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@386 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-28 21:33:33 +00:00
Vikram S. Adve
bedbcf65e2 And add rule to create a .cpp source file from burg input file!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@345 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 19:06:43 +00:00
Vikram S. Adve
dba59efd43 Add path and options for burg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@343 91177308-0d34-0410-b5e6-96231b3b80d8
2001-08-06 19:01:20 +00:00
Vikram S. Adve
588f14855f Remove lib/LLC library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@314 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-28 04:39:27 +00:00
Vikram S. Adve
c4651a91c0 Added support for getting the dependence of an executable on its libs,
using a variable to get the list of libraries on the link path.
BUG: If the library in the same directory as the executable is missing,
BUG: gnumake will build the library but then fail when linking the executable
BUG: saying the library was not found.  Need a better hack.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-21 12:38:14 +00:00
Chris Lattner
febb11f9af Compile source files in alphabetical order
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-18 23:43:37 +00:00
Vikram S. Adve
112a72ce80 Changed default to building library archives instead of shared objects.
Added support for compiling *.c files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 13:16:47 +00:00
Chris Lattner
b19e59cb8d Fixed the obnoxious problem that caused an entire directory to rebuild
even if you only change one .cpp file. Yaay


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97 91177308-0d34-0410-b5e6-96231b3b80d8
2001-06-29 05:20:16 +00:00
Chris Lattner
009505452b Initial revision
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2 91177308-0d34-0410-b5e6-96231b3b80d8
2001-06-06 20:29:01 +00:00