John Criswell
0607d88385
Modified Makefile.common to handle compilation of projects inside and outside
...
of the llvm source directory.
The main modification was to add new environment variables: one set for llvm
entities and another set for source entities current being compiled.
This should make the Makefile more flexible and easier to understand as each
environment variable only does one thing.
llvm-svn: 6679
2003-06-11 13:55:44 +00:00
John Criswell
857ec18910
Added configurable options for the Linker and Archiver.
...
llvm-svn: 6432
2003-05-30 15:50:31 +00:00
Dinakar Dhurjati
55512b1873
Added documentation for the project options
...
llvm-svn: 6418
2003-05-29 21:49:00 +00:00
Chris Lattner
db34fb511d
Get rid of extraneous ""s
...
llvm-svn: 6416
2003-05-29 20:40:32 +00:00
Misha Brukman
3484432e4e
Added a path to the current version of the built TableGen.
...
llvm-svn: 6409
2003-05-29 20:09:23 +00:00
John Criswell
9cca31fb4e
Removed configuration options that are better served in Makefile.config.
...
Fixed the LibInstDir macro.
Added the use of the FLEX variable.
llvm-svn: 6405
2003-05-29 18:52:10 +00:00
Dinakar Dhurjati
41f7748489
Added project options to the Makefile.common
...
llvm-svn: 6402
2003-05-29 16:18:20 +00:00
Chris Lattner
021249f3f3
Add facilities for building source that is outside of the current directory
...
llvm-svn: 6238
2003-05-15 21:28:55 +00:00
Chris Lattner
c2bd7cf9fa
Fix several bugs in the build system, including the use of the Debug version of Burg no matter what configuration is currently configured.
...
llvm-svn: 5744
2003-03-14 20:25:22 +00:00
Chris Lattner
61493ff1d6
Fix warnings compiling C files
...
llvm-svn: 5600
2003-02-19 22:12:20 +00:00
Chris Lattner
4bb0806f91
Fix profile builds
...
llvm-svn: 5551
2003-02-13 16:56:30 +00:00
Chris Lattner
936e61bcbc
Add -fomit-frame-pointer when optimizing
...
llvm-svn: 5547
2003-02-12 20:45:45 +00:00
Chris Lattner
d119b565fd
Fix strip issue Joel ran into
...
llvm-svn: 5449
2003-01-31 19:00:26 +00:00
Chris Lattner
9e46166980
Fix problem with flex scanners and huge token sizes
...
llvm-svn: 5410
2003-01-23 16:33:10 +00:00
Chris Lattner
3ecb776d34
Fix lli build problem with parallel makes
...
llvm-svn: 5396
2003-01-22 16:13:31 +00:00
Chris Lattner
db644ddfe7
Simplify and correct rules for building lex/yacc files. Make sure to delete
...
output upon make clean
llvm-svn: 5347
2003-01-16 22:44:19 +00:00
Chris Lattner
23d4739e17
Add helper
...
llvm-svn: 5342
2003-01-16 21:06:18 +00:00
Chris Lattner
e48c528442
Add support for a recursive test target
...
llvm-svn: 5332
2003-01-16 20:02:30 +00:00
Vikram S. Adve
879874e602
Use -Wl,-x instead of -s: it is more portable, and in particular,
...
is needed on BSD (MacOS).
Also, use -Ldir instead of -L dir on the link line. Same reason...
llvm-svn: 5068
2002-12-16 01:31:18 +00:00
Misha Brukman
8b6e7d50b7
On `make clean', kill the core files produced, which are of the form:
...
core.### where ### is the process ID. We use core.[0-9][0-9]* to avoid killing
core.c, core.cpp, and core.h files which may be part of benchmarks.
llvm-svn: 4913
2002-12-04 17:08:15 +00:00
Chris Lattner
f131358f59
Generalize ExportSymbols into PLATFORMLINKOPTS
...
llvm-svn: 4542
2002-11-04 20:50:33 +00:00
Chris Lattner
2ec11d03d8
Don't link tools with -g objects!
...
llvm-svn: 4370
2002-10-29 15:15:22 +00:00
Chris Lattner
1ad7c12018
Patch submited by Casey to remove obnoxious warnings.
...
llvm-svn: 4278
2002-10-25 14:32:42 +00:00
Chris Lattner
cf388bb247
Disable optimization that doesn't apply to C
...
llvm-svn: 4264
2002-10-22 23:35:28 +00:00
Chris Lattner
d3fcf42efc
Fix misspelled variable
...
llvm-svn: 4262
2002-10-22 23:28:23 +00:00
Vikram S. Adve
a12d4c0065
Warn when we are linking an executable without symbols.
...
llvm-svn: 4236
2002-10-20 21:45:49 +00:00
Vikram S. Adve
7fc4b5c779
Remove outdated line which of course cvs merging never detects...
...
llvm-svn: 4175
2002-10-15 01:59:45 +00:00
Vikram S. Adve
53738841e6
Allow the Source variable to be overridden completely if needed.
...
llvm-svn: 4172
2002-10-14 16:40:04 +00:00
Chris Lattner
8d081dd436
Make sure to print message when linking a debug .o file
...
llvm-svn: 3918
2002-09-25 17:15:22 +00:00
Chris Lattner
a8ce09e2de
* Minor fixes to support C files.
...
* Build burg as a utility now, change its location
* Clean up other rules
llvm-svn: 3876
2002-09-22 02:47:15 +00:00
Vikram S. Adve
6a2258b230
Fix yet another profile linking issue.
...
llvm-svn: 3865
2002-09-20 18:16:20 +00:00
Vikram S. Adve
a0abb97e71
Fix link error for profile version. Also, build Burg differently
...
for different architectures.
llvm-svn: 3862
2002-09-20 16:15:57 +00:00
Vikram S. Adve
20aa62f1cb
The ENABLE_PROFILING flag now builds the profiled libraries and executables
...
into a Profile/ directory to keep them separate from the Debug/ and
Release/ versions. Also, it turns on ENABLE_OPTIMIZED automatically.
llvm-svn: 3854
2002-09-20 14:03:13 +00:00
Chris Lattner
c58930c52c
Move the burg option out of Makefile.config into Makefile.common since
...
it no longer needs to be configured.
llvm-svn: 3828
2002-09-19 19:42:24 +00:00
Vikram S. Adve
d141c281a4
Strip tools/Debug/ executables by default. Define KEEP_SYMBOLS to
...
turn off stripping for any executable.
llvm-svn: 3812
2002-09-18 11:55:13 +00:00
Anand Shukla
8c2a0eeacb
corrected small bug, to handle when DIRS is not defined.
...
llvm-svn: 3810
2002-09-18 04:29:30 +00:00
Chris Lattner
f3dd5f5888
Add support for the new PARALLEL_DIRS option
...
llvm-svn: 3807
2002-09-18 03:22:27 +00:00
Chris Lattner
59ded8e5c0
Allow the VERBOSE=1 option to turn on output of recursive make behavior
...
llvm-svn: 3796
2002-09-17 23:45:34 +00:00
Chris Lattner
539a23cffa
Fix parallel recursive make to build directories in order
...
llvm-svn: 3794
2002-09-17 23:35:02 +00:00
Chris Lattner
0100eab505
Comment line of the makefile
...
llvm-svn: 3770
2002-09-16 22:36:42 +00:00
Chris Lattner
e6e193cacd
Handle whitespace in LIBRARYNAME gracefully
...
llvm-svn: 3769
2002-09-16 22:34:56 +00:00
Chris Lattner
e5ad7bd9cf
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.
llvm-svn: 3705
2002-09-13 22:14:47 +00:00
Chris Lattner
5296f06851
Link .so files correctly on either linux or solaris
...
llvm-svn: 3703
2002-09-13 21:41:07 +00:00
Chris Lattner
2efcf430d0
Build with -D_GNU_SOURCE to enable gnu extensions in header files
...
llvm-svn: 3702
2002-09-13 16:02:26 +00:00
Chris Lattner
500f06490d
Make sure to print a message when linking a tool
...
llvm-svn: 3687
2002-09-12 17:02:40 +00:00
Misha Brukman
1326a7c7db
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>
llvm-svn: 3686
2002-09-12 16:05:39 +00:00
Vikram S. Adve
728de92db4
Simplified significantly by pulling out local configuration options
...
into Makefile.config.
llvm-svn: 3527
2002-08-29 23:28:46 +00:00
Vikram S. Adve
0bfb4cc5d1
Factor out /shared/... path to simplify changing it.
...
llvm-svn: 3521
2002-08-29 18:40:51 +00:00
Vikram S. Adve
fddb117695
Fix clean command to clean in /shared when that is used.
...
llvm-svn: 3449
2002-08-22 03:20:27 +00:00
Chris Lattner
56b56d90f0
Throw purify temporary files into /shared if we have it.
...
llvm-svn: 3365
2002-08-17 21:39:58 +00:00
Chris Lattner
01f68c6d78
- 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
llvm-svn: 3291
2002-08-12 21:19:28 +00:00
Chris Lattner
e5b0f6574b
Oops, I accidentally broke the .d files. Fixed thusly
...
llvm-svn: 3272
2002-08-09 19:18:12 +00:00
Chris Lattner
77330fa15c
* Remove some bogus dependencies on Depend/.dir
...
* Build into the machine local /shared directory instead of using local
Debug/Depend/Release directories
llvm-svn: 3269
2002-08-09 15:41:55 +00:00
Chris Lattner
ead864f089
Comment options that may be enabled
...
llvm-svn: 3237
2002-08-03 20:19:30 +00:00
Vikram S. Adve
15bd3ad996
Don't build Debug/ versions when ENABLE_OPTIMIZED is on.
...
llvm-svn: 3216
2002-08-02 18:34:12 +00:00
Chris Lattner
d711a5e493
Cleanup Makefile a bit
...
llvm-svn: 3192
2002-07-31 21:32:05 +00:00
Chris Lattner
d1a72292ef
Changes to allow building lib/Target/Sparc the FIRST time.
...
llvm-svn: 3078
2002-07-25 15:01:19 +00:00
Chris Lattner
570c6a6114
Allow directories to specify that they want to be built as a shared object by default
...
llvm-svn: 3027
2002-07-23 19:21:31 +00:00
Chris Lattner
76d98ba598
Enable USEDLIBS to contain .a and .o files
...
llvm-svn: 3003
2002-07-23 17:56:16 +00:00
Vikram S. Adve
24132e8983
Add makefile-mode flag for emacs.
...
llvm-svn: 2841
2002-07-09 12:04:21 +00:00
Chris Lattner
198d5eb1c4
* 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??)
llvm-svn: 2603
2002-05-10 18:51:54 +00:00
Chris Lattner
c0427b9ce9
Hopefully this change will make the makefile work for other people without hacking it.
...
llvm-svn: 2128
2002-04-07 06:18:40 +00:00
Chris Lattner
f0a88d107f
* 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
llvm-svn: 2116
2002-04-05 18:56:58 +00:00
Chris Lattner
0559443280
Try to fix build error
...
llvm-svn: 1723
2002-02-11 17:12:03 +00:00
Chris Lattner
068f8222dc
Add := to make stuff more efficient
...
llvm-svn: 1551
2002-01-23 05:46:01 +00:00
Chris Lattner
1677feaf72
Reenable warning now that Chuck fixed GCC
...
llvm-svn: 1517
2002-01-21 23:15:20 +00:00
Chris Lattner
7f74a56e24
Changes to build successfully with GCC 3.02
...
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner
75586e2ace
1. -Winline emits spurious warnings that aren't useful right now
...
2. Fix the "rebuild everything if I change one file" problem
llvm-svn: 1176
2001-11-07 14:50:58 +00:00
Chris Lattner
b20b290c5e
Add easy way to enable purify support
...
llvm-svn: 1045
2001-10-30 20:24:08 +00:00
Vikram S. Adve
4dedee5dc4
Simplify etags command.
...
llvm-svn: 954
2001-10-22 13:58:22 +00:00
Chris Lattner
ee6e199f0e
Change Sources specifier to ExtraSources
...
llvm-svn: 874
2001-10-18 01:48:09 +00:00
Vikram S. Adve
bd9cae260d
Allow only extra Source files to be listed in a local Makefile.
...
Needed for automatically generated .cpp files.
llvm-svn: 853
2001-10-17 12:33:55 +00:00
Chris Lattner
082479a583
Burg files should come out of the Debug Directory for temporary files
...
llvm-svn: 790
2001-10-14 17:23:55 +00:00
Vikram S. Adve
a0e99085b2
Fixed tags target so it only happens at root level.
...
llvm-svn: 787
2001-10-13 12:26:59 +00:00
Chris Lattner
1fd501fff5
Each tools should not make tags
...
llvm-svn: 730
2001-10-13 05:10:29 +00:00
Vikram S. Adve
fa9dc58c9e
Added a rule for building TAGS.
...
llvm-svn: 723
2001-10-10 22:35:00 +00:00
Chris Lattner
f0afd8bac7
Add support for tool specified linker options
...
llvm-svn: 527
2001-09-10 04:49:26 +00:00
Chris Lattner
d196e04234
Fix automatic dependence on static libs
...
llvm-svn: 513
2001-09-09 20:59:28 +00:00
Chris Lattner
07c7c19f7d
Support TOOLNAME and USEDLIBS options for easier tool building
...
llvm-svn: 498
2001-09-07 22:57:58 +00:00
Vikram S. Adve
88bee9f363
Added InstrSched library to link line.
...
llvm-svn: 386
2001-08-28 21:33:33 +00:00
Vikram S. Adve
75b9add9fa
And add rule to create a .cpp source file from burg input file!
...
llvm-svn: 345
2001-08-06 19:06:43 +00:00
Vikram S. Adve
ca4a382bf7
Add path and options for burg.
...
llvm-svn: 343
2001-08-06 19:01:20 +00:00
Vikram S. Adve
6b1d4f349a
Remove lib/LLC library.
...
llvm-svn: 314
2001-07-28 04:39:27 +00:00
Vikram S. Adve
7161ef83f9
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.
llvm-svn: 225
2001-07-21 12:38:14 +00:00
Chris Lattner
6244d18477
Compile source files in alphabetical order
...
llvm-svn: 202
2001-07-18 23:43:37 +00:00
Vikram S. Adve
fe34689e55
Changed default to building library archives instead of shared objects.
...
Added support for compiling *.c files.
llvm-svn: 197
2001-07-15 13:16:47 +00:00
Chris Lattner
44601ba46a
Fixed the obnoxious problem that caused an entire directory to rebuild
...
even if you only change one .cpp file. Yaay
llvm-svn: 97
2001-06-29 05:20:16 +00:00
Chris Lattner
2f7c963559
Initial revision
...
llvm-svn: 2
2001-06-06 20:29:01 +00:00