Chris Lattner
a47b641a85
Give a useful hint
...
llvm-svn: 17232
2004-10-26 02:58:10 +00:00
Reid Spencer
100080cc38
New Makefile Features:
...
* "dist" target now builds tar.gz, tar.bz2, and zip files suitable for
distribution. "dist" can only be run from $(BUILD_OBJ_ROOT) and implies
a "check".
* made the preconditions not do a recursive make and ensured that they are
executed sequentially.
* made the messages output by the makefile be prefixed with "llvm" and the
make level (e.g. llvm[1]: ) in the same way that make does so that the
messages are uniform and more readable.
* Fixed the tags target so that tags depends on TAGS which contains the
rules to build a file named TAGS
* Implemented the EXTRA_DIST feature in a few directories to make sure it
works.
llvm-svn: 17210
2004-10-25 08:27:37 +00:00
Reid Spencer
dcba778871
Fix uninstall from rebuilding everything (wrong dependency)
...
llvm-svn: 17204
2004-10-24 08:21:04 +00:00
Reid Spencer
12a3a0553d
Implemented New Features:
...
* Fixed the install target to install files correctly
* Implemented the uninstall target to remove files from install dirs
* Isolated the top level targets (dist, dist-check, dist-clean, tags) so
they only run/exist from the top level directory
* Put if/endif gaurds around potentially dangerous $(RM) commands.
* Implemented place-holder rules for distribution targets to just say that
they aren't implemented yet.
* Implemented tags target in Makefile.rules so all projects can use it
* Made a pony for resistor
llvm-svn: 17202
2004-10-24 07:53:21 +00:00
Reid Spencer
e057811423
Make the $(OBJDIR) go away on clean-local.
...
llvm-svn: 17197
2004-10-24 02:26:09 +00:00
Reid Spencer
81cd049e8c
Several Changes:
...
* Fix parallel build problem on generated dependency files
* Fix rule confusion between .a and .la libraries so that parallel builds
don't get confused on who is building which .o and which library it is
going into.
* Fix dependency inclusion to only include C/C++ dependency files because
other types of sources won't have dependencies auto generated.
* Change "Source" to "SOURCES" for naming consistency
* Update parallel build rules for new recursive targets
* Implement EXPERIMENTAL_DIRS (failure allowed) feature
* Implement -local version of targets (all-local, clean-local, etc)
* Implement recursive targets in terms of their local counterparts
* Clarify names of some internal variables
* Move documentation to docs/MakefileGuide.html
* Clean up commentary
llvm-svn: 17192
2004-10-23 20:04:14 +00:00
Reid Spencer
282e13c942
* Actually ignore build errors in optional directories
...
* Use LLVM_SRC_ROOT as the anchor for the Target.td file
* Use MFLAGS instead of MAKEFLAGS for recursive makes so we don't try
to build a target "w" or "s" mysteriously.
llvm-svn: 17186
2004-10-23 08:19:37 +00:00
Reid Spencer
23a703706c
Make sure that we don't set up a circular dependency if OBJDIR == SRCDIR
...
llvm-svn: 17172
2004-10-22 23:06:30 +00:00
Misha Brukman
0de42869bf
Pull in Target.td using absolute path from source root instead of relative path;
...
this allows us to have sub-targets whose depth in the tree is not the same as it
is for the standard X86/PowerPC/Sparc.
llvm-svn: 17170
2004-10-22 22:18:27 +00:00
Reid Spencer
f206bd761f
Shorten the rules, speed it up, correct library contruction, add *.td rules
...
llvm-svn: 17166
2004-10-22 21:01:56 +00:00
Misha Brukman
8c8cbb8b71
Fix grammar
...
llvm-svn: 16910
2004-10-11 02:06:40 +00:00
Chris Lattner
fc303099c9
Don't add libz or libbz2 to the USEDLIBS lists, those are for LLVM libraries.
...
llvm-svn: 16798
2004-10-07 00:03:11 +00:00
Reid Spencer
4e181e731a
Provide support for auto-detection and use of compression libraries.
...
llvm-svn: 16643
2004-10-04 07:05:07 +00:00
John Criswell
68146eb40a
Corrected spelling of Makefile variable, thereby re-enabling profile
...
builds for projects.
llvm-svn: 16540
2004-09-28 14:52:58 +00:00
Reid Spencer
898eca3260
Missed one $*.a -> $@ conversion for the Release build.
...
llvm-svn: 16494
2004-09-23 06:07:24 +00:00
Reid Spencer
ef18cc48db
Correct the rules for making shared libraries per libtool 1.5.10
...
llvm-svn: 16489
2004-09-23 00:58:06 +00:00
Reid Spencer
3f2f555690
libtool's name is now back to mklib.
...
llvm-svn: 16423
2004-09-20 01:43:00 +00:00
John Criswell
30a0c10269
Add dependencies so that project tools are recompiled if LLVM libraries
...
are updated.
llvm-svn: 16378
2004-09-16 14:11:25 +00:00
Brian Gaeke
52a4e667e8
Use libtool, not mklib (which somehow doesn't get generated anymore)
...
llvm-svn: 16243
2004-09-07 19:03:35 +00:00
Reid Spencer
7650c06a45
Add LLVMC as a supported tool.
...
llvm-svn: 16183
2004-09-05 16:39:01 +00:00
Reid Spencer
b9c90a2b02
Get rid of an un-needed and un-used GCCism. ATTR_DEPRECATED is used nowhere
...
in the LLVM source base.
llvm-svn: 16162
2004-09-03 23:38:25 +00:00
Reid Spencer
6f7407880f
Remove even the slightest chance of a race condition occurring :)
...
llvm-svn: 15951
2004-08-20 09:32:32 +00:00
Reid Spencer
cc51e7b358
Added a set of rules for installing configuration files. You can now say
...
CONFIG_FILES=a b c
in a Makefile and when you "make install" the files a b and c will get
installed into the $prefix/etc directory.
llvm-svn: 15948
2004-08-20 09:20:05 +00:00
Misha Brukman
53bba06e37
* Uncomment rule for location of LLI (formerly commented out: typo?)
...
* Add space between VAR and `='
llvm-svn: 15074
2004-07-21 12:47:40 +00:00
Brian Gaeke
e2e0637a77
Move LLVM tool definitions to Makefile.rules
...
llvm-svn: 15049
2004-07-21 01:31:47 +00:00
Chris Lattner
9ab4d88ab6
Really, it is not necessary to recompile all files in a profile build every
...
time!
llvm-svn: 14680
2004-07-08 03:42:20 +00:00
Brian Gaeke
223b345279
Explicitly specify libtool tag "CXX" so that if you setenv CXX to something
...
libtool can't parse, e.g., "/path/to/g++ -some-funny-options",
then it will still be able to compile and link.
llvm-svn: 14072
2004-06-08 18:52:45 +00:00
Chris Lattner
4f120545a7
Make tool names end with .exe on windows. This isn't needed to run the
...
tools, but is required for rules that depend on the executables, e.g.:
a: b $(LLVMAS)
llvm-svn: 13926
2004-06-01 19:06:43 +00:00
Misha Brukman
144c77b515
Pass the Makefile flags to recursive makes in {PARALLEL,OPTIONAL}_DIRS targets.
...
llvm-svn: 13623
2004-05-21 23:21:11 +00:00
Misha Brukman
3e810058a7
Pass given flags on to recursive sub-makes.
...
llvm-svn: 13616
2004-05-21 00:09:21 +00:00
Alkis Evlogimenos
e716bafbc8
Change DEPRECATED macro to ATTR_DEPRECATED as this conflicts with some
...
java constants.
llvm-svn: 13611
2004-05-20 21:31:43 +00:00
Misha Brukman
7426c893f0
Standardize header comments of top-level Makefiles.
...
llvm-svn: 13143
2004-04-24 00:10:56 +00:00
Brian Gaeke
0f31060c5a
Add support for 'install-bytecode' target, used for ONLY installing
...
bytecode-libs.
llvm-svn: 12268
2004-03-10 17:38:01 +00:00
Alkis Evlogimenos
1aa50dfae5
Define DEPRECATED so that it can be used in function and variable
...
declarations.
llvm-svn: 11391
2004-02-13 20:05:44 +00:00
Brian Gaeke
12705d56ef
Fix bug in installation process: MKDIR must respect DESTDIR.
...
llvm-svn: 11236
2004-02-09 17:38:52 +00:00
Brian Gaeke
fe66239860
Always replace instead of appending when creating archive files. It may be
...
slightly slower, but I think we can handle it, especially if it means
BytecodeLibs are correctly regenerated.
llvm-svn: 11122
2004-02-04 21:41:23 +00:00
Brian Gaeke
ecc92bfe6e
Move bytecode_libdir def'n to Makefile.config.in from Makefile.rules, so it
...
lives near the other installation dirs (like libdir, bindir, etc.).
Move the rule for making bytecode_libdir out of the ifdef LIBRARYNAME...endif.
llvm-svn: 10964
2004-01-22 22:53:48 +00:00
Brian Gaeke
83d485cfed
Move support for building tags database from Makefile.rules to Makefile, because
...
it's only used in the top-level directory.
llvm-svn: 10960
2004-01-22 21:54:51 +00:00
Brian Gaeke
96deb7dd86
Give the ".../llvm-gcc/bytecode-libs" directory a variable of its own,
...
called bytecode_libdir. Make install-bytecode-library depend on
the existence of that directory, and add a rule for creating it if
it does not exist by calling mkinstalldirs.
llvm-svn: 10946
2004-01-21 23:57:21 +00:00
Brian Gaeke
ec2a01f5fd
Add DESTDIR support for installation, to support RPM etc.
...
llvm-svn: 10940
2004-01-21 21:20:44 +00:00
Brian Gaeke
6cbf285b37
Maybe Misha isn't so buggy after all. He caught the rest of my huge thinko
...
w.r.t. SHLIBEXT starting with a dot.
:-)
llvm-svn: 10939
2004-01-21 21:17:37 +00:00
Brian Gaeke
e00d637c15
Remember, SHLIBEXT begins with a period.
...
llvm-svn: 10936
2004-01-21 19:59:19 +00:00
Brian Gaeke
8625f68ca5
Modified version of patch from mkahl@apple.com to stop hardcoding ".so".
...
llvm-svn: 10935
2004-01-21 19:53:11 +00:00
Brian Gaeke
eac97bf984
Take settings of LCC and LCC1XX from configure.
...
llvm-svn: 10899
2004-01-16 21:31:20 +00:00
Brian Gaeke
6fb3da0c1b
I'm fairly certain this was just a typo.
...
llvm-svn: 10897
2004-01-16 21:12:34 +00:00
John Criswell
1b921c486e
Allow C++ programs to end in .cc. This allows C++ test programs in the
...
test suite to compile.
llvm-svn: 10644
2003-12-29 22:02:12 +00:00
Brian Gaeke
bbe0f1d795
Add install target for libraries.
...
llvm-svn: 10519
2003-12-18 20:57:48 +00:00
Brian Gaeke
0f148bcbc0
Add support for installing tool executables.
...
llvm-svn: 10351
2003-12-10 00:26:28 +00:00
Chris Lattner
dca8b84bde
Stop using the -fshort-enum compile option
...
llvm-svn: 10296
2003-12-06 20:59:45 +00:00
Chris Lattner
e0da6ec8b6
Make stripped-bytecode a recursive target
...
llvm-svn: 10283
2003-12-01 07:28:25 +00:00
Chris Lattner
fe8f8b4947
Simplify some rules
...
Move LGCCLDPROG from test/Makefile.tests
llvm-svn: 10256
2003-11-29 09:50:15 +00:00
John Criswell
6df35dd70d
All directory targets now install the Makefile only if it is missing.
...
Directory targets no longer check for existance of the directory in the
object tree; if the Makefile doesn't exist, we will re-create the directory.
This seems to be a pretty good assumption and saves us from checking
directory existance each time.
llvm-svn: 10211
2003-11-25 19:32:22 +00:00
John Criswell
e8eab29899
Added a pseudo-hack: The Makefile now copies Makefiles from source tree to
...
object tree if it is missing. This means that new Makefiles should get
picked up automagically, requiring less bothersome re-configuring after
updates.
llvm-svn: 10209
2003-11-25 17:49:22 +00:00
John Criswell
b1367f4af7
Modified directory building rules so that using the cd program/alias is
...
not necessary.
llvm-svn: 10199
2003-11-24 18:31:01 +00:00
Misha Brukman
b617253a16
Shorten the "updating Makefile" status print-out.
...
llvm-svn: 9874
2003-11-11 00:05:29 +00:00
Misha Brukman
b891ffbc7e
If the source tree's Makefile is more up-to-date, copy it over into the build
...
tree.
llvm-svn: 9836
2003-11-09 21:36:19 +00:00
Chris Lattner
c129e009eb
Fix broken makefile dependency generation
...
llvm-svn: 9810
2003-11-08 21:23:06 +00:00
Chris Lattner
cd4f3e601c
Fix a really bad build problem for users who have .o in their build directory!
...
Thanks to Reid Spencer for figuring this out! :)
llvm-svn: 9763
2003-11-07 04:39:53 +00:00
Misha Brukman
8330f2be73
Output only the .y filename, not the full path to it for ease of reading.
...
llvm-svn: 9729
2003-11-05 06:41:14 +00:00
John Criswell
28f8fc669d
Modified build rules so that a messages appears before and after linking.
...
This helps to disambiguate when linking begins and when the library/program
is linked and ready to be used.
This is sort of as preference thing, so feel free to modify/revert the change.
llvm-svn: 9687
2003-11-03 21:12:49 +00:00
Dinakar Dhurjati
043b4b0bc3
Fixed LinkO, LinkP error in TOOLLINKOPTSB
...
llvm-svn: 9591
2003-10-29 20:34:13 +00:00
Dinakar Dhurjati
3ac83a9bb3
Added TOOLLINKOPTSB to pass options to the linker (e.g. adding search
...
path for external libraries).
llvm-svn: 9582
2003-10-29 14:28:35 +00:00
Brian Gaeke
be9e03f0e4
Add __STDC_LIMIT_MACROS here.
...
llvm-svn: 9549
2003-10-28 19:09:28 +00:00
Chris Lattner
8aaa7f77c7
When linking the runtime libraries, do not link -lc and -lgcc into the libraries
...
llvm-svn: 9339
2003-10-21 18:00:37 +00:00
John Criswell
23e43fb12b
Added LLVM copyright notice.
...
llvm-svn: 9319
2003-10-21 14:33:46 +00:00
John Criswell
fa322d1f92
Added autoconf support for the sample project.
...
Fixed the header comment in Makefile.rules
Changed all references to the echo program in Makefile.rules to the value
found by autoconf.
llvm-svn: 9151
2003-10-16 01:49:00 +00:00
Misha Brukman
ad58f4133a
Print out just the filename being compiled/linked, not the full path to it.
...
llvm-svn: 9018
2003-10-10 17:37:22 +00:00
Chris Lattner
2c9a328881
Make the message stand out more
...
llvm-svn: 9004
2003-10-10 15:55:43 +00:00
Misha Brukman
d8d84eb0af
Depend on config.status instead of config.h, because config.h timestamp may not
...
change even though configure changes.
llvm-svn: 8923
2003-10-07 15:24:23 +00:00
John Criswell
06636c2beb
Added targets that force users to re-run autoconf when the script has been
...
updated.
llvm-svn: 8921
2003-10-07 14:16:44 +00:00
John Criswell
4ffb844309
Fixed the conditional targets for postscript files and tags.
...
llvm-svn: 8823
2003-10-02 19:02:02 +00:00
John Criswell
a8391af2c4
Changed the empty rule for .h files. The rule needs an empty command so that
...
Make actually uses it to "regenerate" header files that have been
moved/removed.
llvm-svn: 8600
2003-09-18 18:37:08 +00:00
Chris Lattner
6721f0e72c
Put llvm .bc files into the BytecodeObj subdirectory instead of the Bytecode
...
subdirectory. This prevents the 'make clean' rule from removing lib/Bytecode
llvm-svn: 8550
2003-09-15 22:17:02 +00:00
Chris Lattner
65568e89fb
Allow specifying a file with symbols to export
...
llvm-svn: 8531
2003-09-15 15:06:54 +00:00
Chris Lattner
6b6eadc0dd
Wrap long lines at 80 cols
...
llvm-svn: 8512
2003-09-15 01:12:04 +00:00
Chris Lattner
218112d15e
Make sure to #include the OBJROOT config.h file, not the SRCROOT config.h file!
...
llvm-svn: 8511
2003-09-15 01:07:32 +00:00
John Criswell
1e8c7b7ed1
Fixed SPEC so that it would run correctly with the new autoconf-style object
...
directory.
Added Makefile.spec to the list of files to copy to the object directory.
Moved the configuration of $SourceDir to Makefile.config and corrected the
conditional that surrounds it. This allows SPEC to reset it and get the correct
VPATH.
llvm-svn: 8475
2003-09-11 18:03:50 +00:00
John Criswell
73c5be4a2e
Removed the aposthrophes endings and the elipses suffixes from build output.
...
This makes the output more consistent, and I just find aposthrophes annoying.
:)
llvm-svn: 8465
2003-09-11 15:15:53 +00:00
Chris Lattner
2481a985fe
Avoid dumping runtime library bytecode files into lib/Bytecode if building
...
into the source directory
llvm-svn: 8450
2003-09-10 19:37:51 +00:00
John Criswell
ded9899d2d
Updated to find source files using VPATH. This makes writing build rules
...
much cleaner and easier.
Labeled .td as a suffix for tblgen files in Makefile.rules.
Modified build rules so that source files generated during the build are placed
in the build directory and not the source directory (and not in a Debug
directory). This makes the system cleaner and allows us to have a read-only
source tree.
llvm-svn: 8424
2003-09-09 20:57:03 +00:00
John Criswell
0a6e6aafcd
Checkin of autoconf-style object root.
...
Moved Makefile.common to Makefile.rules. This makes project Makefiles easier
to support, and allows for easier overriding of default configuration values
that used to be in Makefile.common.
Modified Makefile.config.in to determine paths for directories (like
LLVM_SRC_ROOT) and to use the pwd binary as opposed to the shell builtin (this
works better for symbolic links).
llvm-svn: 8377
2003-09-06 14:44:17 +00:00
Chris Lattner
b0f858b22a
Slightly simplify make logic
...
llvm-svn: 8211
2003-08-29 14:07:02 +00:00
Misha Brukman
fc8010c50c
Start using `llvm-as' instead of `as'.
...
llvm-svn: 8193
2003-08-28 21:45:08 +00:00
Chris Lattner
7c95d2ffb9
Refactor code slightly. Make code compiled with llvmgcc use the warning options
...
as well. Compile with -fshort-enums whether in debug or release mode, because it breaks the ABI
llvm-svn: 8164
2003-08-27 18:26:44 +00:00
Chris Lattner
c38d7fa4e1
Fix typeo
...
llvm-svn: 8069
2003-08-23 15:56:38 +00:00
Chris Lattner
e9d7d70ae7
Remove last remenants of cleandeps
...
Allow disabling generation of .d files for a whole directory
llvm-svn: 8053
2003-08-22 14:10:16 +00:00
Chris Lattner
7016ddc012
Ugh, really fix it now... :(
...
llvm-svn: 8047
2003-08-22 05:22:13 +00:00
Chris Lattner
f2df8f3c9d
Fix computation of LLVM_OBJ_ROOT for non-projects :(
...
llvm-svn: 8046
2003-08-22 05:18:49 +00:00
Chris Lattner
558085b76c
Include the top-level Makefile.config from the LLVM tree for projects
...
llvm-svn: 8035
2003-08-21 22:28:46 +00:00
Chris Lattner
b42c15396c
Projects no longer need to specify LLVM_OBJ_ROOT. Also, for the prdirs target, don't let make print out all of the echo commands before the echos get echo'd
...
llvm-svn: 8034
2003-08-21 22:23:49 +00:00
Misha Brukman
a1f0c145e9
The word `dependence' and its derivatives have no `a'.
...
llvm-svn: 8028
2003-08-21 22:02:18 +00:00
Chris Lattner
132c88da07
Make the tags rule tolerate lack of one of the standard directories
...
llvm-svn: 8027
2003-08-21 21:53:38 +00:00
Chris Lattner
a896edb1bb
* Remove cleandeps target
...
* Implement much nicer .d files, as suggested by Casey Carter
llvm-svn: 8020
2003-08-21 20:39:08 +00:00
Chris Lattner
38dbc3c35b
fix dependency
...
llvm-svn: 8004
2003-08-21 15:47:37 +00:00
Chris Lattner
bc9b0b91f5
Point to the correct cc1/cc1plus binaries
...
llvm-svn: 7997
2003-08-20 22:11:45 +00:00
John Criswell
816deb775d
Modified the SUFFIXES pseudo targets so that we remove all default suffixes
...
and explicitly declare all the ones we're using for LLVM.
This quickly cancels many of GNU Make's implicit rules and reduces build time.
The only caveat is that any new suffixes may need to be explictly added to
the .SUFFIXES pseudo target.
Removed the -only-static option as it is no longer used.
llvm-svn: 7979
2003-08-20 15:18:41 +00:00
Chris Lattner
598222b5e8
Add new cleandeps target, to allow easy cleaning out of .d files
...
llvm-svn: 7954
2003-08-18 17:27:40 +00:00
Chris Lattner
92fc9b0fc5
Remove extraneous ;'s, no functional changes
...
llvm-svn: 7902
2003-08-15 20:00:47 +00:00
Chris Lattner
5c0b0ba3f8
Add llvm tools to path of LLVMGCC
...
llvm-svn: 7882
2003-08-15 15:20:52 +00:00
Chris Lattner
2e9fc94afc
Make sure to create the directory before we cram a .bc file into it
...
llvm-svn: 7864
2003-08-15 03:02:52 +00:00
Chris Lattner
0c4f4fe11b
Implement BYTECODE_LIBRARY support
...
llvm-svn: 7855
2003-08-15 02:18:35 +00:00
Chris Lattner
23991d5d65
Simplifications to Makefile.common, remove support for Purify since it was
...
broken by libtoolification anyways, and noone can use it because purify doesn't
support the 64-bit sparc compilers even if it weren't broken!
llvm-svn: 7850
2003-08-14 21:10:25 +00:00
John Criswell
48ecca60e1
Merged in changes between PRE11_ROOT and LLVM_PRE111 (i.e. the beginning of
...
the pre-release 1.1 branch and pre-release 1.1.1).
Made the USE_SPEC option work.
Silenced unnecessary error output from the cmp command when checking for
updates to lex/yacc generated files. This fixes a problem where we get error
messages the first time the file is generated.
Fixed the distclean option. It is now in the Makefile (i.e. only runs in the
top level source directory), removes more files, and plays nicely with
external project Makefiles.
llvm-svn: 7780
2003-08-12 18:51:51 +00:00
Brian Gaeke
360855a017
Makefile.common: Remove commented-out and duplicate rules.
...
llvm-svn: 7650
2003-08-06 21:44:22 +00:00
John Criswell
1943f88a79
Reverted back to using OR for cmp/mv operations for lex/yacc output.
...
The shell AND/OR operators short-circuit on command success/failure, which is
the inverse of exit status (i.e. 0 means success, non-zero means failure).
llvm-svn: 7616
2003-08-05 21:38:28 +00:00
John Criswell
4d79702a4c
Switched from using diff to cmp for two reasons:
...
o Not all versions of diff have the -q option
o The cmp program is probably faster than diff
Fixed the logic that only copies the file over if no differences are found.
llvm-svn: 7615
2003-08-05 21:21:58 +00:00
Chris Lattner
5d4f4e8ba8
Urg, do not print "foo has changed" messages
...
llvm-svn: 7573
2003-08-04 20:07:01 +00:00
Chris Lattner
b3aae61c5f
While I'm looking at it, line up the SED lines
...
llvm-svn: 7572
2003-08-04 19:48:10 +00:00
Chris Lattner
7d0adf79ec
* Don't print out HOW we are running Flex unless in verbose mode. We already
...
hide the bison command line.
* If running flex or bison gives us the files we already have, don't overwrite
the ones we have, which cause unnecessary compilation. I demand the ability
to make meaningless changes without penalty!
llvm-svn: 7571
2003-08-04 19:47:06 +00:00
John Criswell
3601f37b0f
Modified the use of libtool so that we don't compile every file twice.
...
This can be done using the disable-shared tag that comes with libtool.
This change also required changing how .o libraries are linked.
llvm-svn: 7458
2003-07-31 20:58:51 +00:00
John Criswell
8d3a83cef7
Renamed libtool to mklib for your tab completion pleasure.
...
llvm-svn: 7255
2003-07-23 16:52:50 +00:00
John Criswell
af4d13026c
Marked some of the phony targets are PHONY. This will hopefully speed
...
up builds a little bit since it will prevent GNU make from matching these
phony targets against implicit rules.
llvm-svn: 7183
2003-07-16 20:26:06 +00:00
Misha Brukman
7b14a19965
The word `separate' only has one `e'.
...
llvm-svn: 7174
2003-07-14 17:26:34 +00:00
Vikram S. Adve
5fc4aee04e
Add phony target "bytecode" to ensure that it works in recursive makes.
...
llvm-svn: 7147
2003-07-10 19:25:29 +00:00
Misha Brukman
fd3e0afe65
Move the space separator to where it really belongs: in the print statement, not
...
in a variable assignment.
llvm-svn: 7141
2003-07-10 16:52:41 +00:00
Misha Brukman
6d1871c28b
Removed an extra slash that appears in the path name when these variables are
...
combined with a '/' separating them.
llvm-svn: 7121
2003-07-07 22:27:05 +00:00
John Criswell
7320d2fd32
Renamed all of the LObj* variables (which represent libtool objects) to Obj*.
...
One of the test Makefiles uses the same variable names for something else,
and this was probably interfering with it.
llvm-svn: 7024
2003-07-01 14:52:28 +00:00
John Criswell
3ef61afb76
Merged in autoconf branch. This provides configuration via the autoconf
...
system.
llvm-svn: 7014
2003-06-30 21:59:07 +00:00
John Criswell
8224df947c
Added the OPTIONAL_DIRS variable for specifying optional directories to build.
...
llvm-svn: 6926
2003-06-27 16:58:44 +00:00
John Criswell
d9b7c5f430
Reverted back to revision 1.91.
...
llvm-svn: 6812
2003-06-20 21:24:54 +00:00
John Criswell
ef1c153975
Added a hack that takes the path relative to the home directory into account
...
if a home directory is provided by the environment.
llvm-svn: 6805
2003-06-20 18:35:39 +00:00
Chris Lattner
f6791e5458
Fix problem building optmized build
...
llvm-svn: 6798
2003-06-20 15:41:57 +00:00
Chris Lattner
8e31d81bd7
Remove extra line
...
llvm-svn: 6773
2003-06-18 19:20:11 +00:00
John Criswell
668fbc229a
Modified the environment variables that determine where things are located to
...
do the following:
1) Determine their default values without $HOME
2) Configure the default values as full absolute pathnames.
This should help fix the nightly test builds.
llvm-svn: 6719
2003-06-16 19:14:31 +00:00
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