Commit Graph

107 Commits

Author SHA1 Message Date
Reid Spencer
06a801a38c Fix recursion:
1. Make setting OPTIONAL_DIRS use immediate assignment
2. Include Makefile.config before ifeq tests and then Makefile.rules later
   instead of Makefile.common up front. This ensures that the variable
   values are set before the ifeq statements in Makefile.rules are
   evaluated.
With this, recursion into projects/examples is corrected.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27519 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-08 02:14:37 +00:00
Reid Spencer
8dfb3e5366 Don't build projects/examples if libs-only was specified.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27518 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-08 01:57:10 +00:00
Reid Spencer
30ea2fa933 Invert the tests on LLVMGCC_MAJVERS to check for value 4 instead of value
3. This ensures that if llvm-gcc isn't available and consequently the value
of LLVMGCC_MAJVERS is blank, that the old (include runtime) behavior will
persist.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27499 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-07 21:45:23 +00:00
Chris Lattner
38ab6d887c THis -> This
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27490 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-07 16:21:59 +00:00
Reid Spencer
e22f3c004a For PR723:
Print out something at the end of the build that indicates what kind of
build has just completed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27485 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-07 15:58:18 +00:00
Reid Spencer
93bc3cdd43 Avoid building the runtime libraries if llvm-gcc version 4 is detected.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27464 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-06 22:15:51 +00:00
Reid Spencer
ca739c685b For PR614:
Move the implementation of the fix from Makefile.rules to Makefile. This
ensures that it is only checked on a top-level rebuild, and not in every
single subdirectory. This removes some annoying messages from the build and
numerous executions of config.status if the .in file changes but not
substantively enough to cause the .h file to be modified by config.status.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23039 91177308-0d34-0410-b5e6-96231b3b80d8
2005-08-25 04:59:49 +00:00
Reid Spencer
085ae945af Make sure the tools get built if no build target is specified.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22184 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-29 00:49:24 +00:00
Reid Spencer
8b1f7676bd Add a "libs-only" target for avoiding construction of the tools and
runtime libraries.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22169 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-25 21:03:17 +00:00
Reid Spencer
45eeed9b35 Two dist-check related changes:
1. Allow DIST_CHECK_CONFIG_OPTION to specify a set of options to be passed
   to the configure script during the dist-check target. This allows things
   to be passed down on a project basis so the configure doesn't fail.

2. Use the tar | (cd ; tar ) idiom to copy files which is more flexible
   than using the cp command. THis allows us to exclude CVS .svn
   directories at source rather than stripping them out of the tar ball.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22166 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-24 02:33:20 +00:00
Reid Spencer
0fa2c54b90 Remove the check target. Its now in Makefile.rules
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18565 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-06 05:35:00 +00:00
Reid Spencer
d5aaba1385 CVS directory elimination moved to Makefile.rules
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18503 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-04 22:33:58 +00:00
Tanya Lattner
9f97b4c228 Made it default to check instead of check-dejagnu.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18488 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-04 06:25:08 +00:00
Chris Lattner
642d1021da check is now a single colon rule. Also make it default to running dejagnu instead of qmtest
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18471 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-03 23:57:00 +00:00
Reid Spencer
513b9213fd Add "docs" as a descendable directory (at the end)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18328 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 04:57:55 +00:00
Reid Spencer
df561f4ab3 Add a convenience target to build all three modes: Debug, Release, Profile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18241 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-25 09:08:54 +00:00
Alkis Evlogimenos
440add2697 Move path override in test/Makefile.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17613 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-08 05:44:05 +00:00
Alkis Evlogimenos
a43efac545 Override PATH to submake so that all tools are found if the PATH is
not set up properly (it also avoids using different tools that happen
to be in the path).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17612 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-08 05:35:03 +00:00
Tanya Lattner
fd93c7db80 Removed passing TARGET.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17587 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 21:43:57 +00:00
Tanya Lattner
491e9cd182 Changed check-dejagnu to take TESTSUITE as its args instead of TEST in order to not conflict with other stuff. Added path for test/Scripts. Also added a check to deal with TESTSUITE and runtest flags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17586 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 21:39:41 +00:00
Tanya Lattner
92c0d6561b Minor error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17573 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 08:29:03 +00:00
Tanya Lattner
38ed80aefb Added support to specify which test suite dejagnu should run (Feature or Regression). Use TEST=suite
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17572 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 08:24:59 +00:00
Tanya Lattner
7a7cb4c99b Added rough support for dejagnu testing. Changes need to be made to autoconf to provide the target_triplet and to check for 'grep -C' which would be used instead of the python script we have now. Eventually the python script should be converted to bash.
The dejagnu-clean needs to be fixed to use find.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17555 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 04:59:52 +00:00
Reid Spencer
cc2d1e25f3 Internalize variable names to prevent recursive assignment. Cleanup docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17359 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-30 09:19:36 +00:00
Reid Spencer
90c2949412 Reduce the number of EXTRA_DIST files since Makefile.rules now handles the
autoconf directory automagically.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17249 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-26 07:05:09 +00:00
Reid Spencer
151f8ba364 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17210 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-25 08:27:37 +00:00
Reid Spencer
746aa1a1c8 Move top level rules for tags and installing headers to Makefile.rules
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17203 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-24 08:20:10 +00:00
John Criswell
794cbc22b7 Changed the distclean target to handle the new location of config.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16385 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-17 15:08:25 +00:00
Reid Spencer
f13562fb97 Add lib/System ahead of lib/Support in case there are operating system
issues.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16095 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-29 19:33:21 +00:00
Reid Spencer
5f285396a8 Include the "examples" directory as optional.
Update configure script to configure the examples/Makefile


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16028 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-24 16:32:21 +00:00
Chris Lattner
129f6cfae7 etags isn't portable at all. Make it not run by default. If you still
want it, just type 'make tags'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14368 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-24 18:19:42 +00:00
Reid Spencer
431c8767d9 Change tags rule to pipe output from find through etags command so that it
doesn't break on machines with limited command line lengths.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14138 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-11 03:10:27 +00:00
Reid Spencer
4f840ed7e0 Change the install-includes target to completely ignore the llvm/Internal
directory. Headers located there are not public to LLVM but are shared
between LLVM modules.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13769 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 20:01:25 +00:00
Misha Brukman
6d5ab866fc Standardize header comments of top-level Makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13143 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-24 00:10:56 +00:00
Brian Gaeke
d994db00b2 As a part of the bootstrapping process, the top-level tools-only target
should not build projects.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12984 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-16 15:57:02 +00:00
Brian Gaeke
89409b64eb Should fix pr220 - "make install" doesn't install header files when
BUILD_SRC_ROOT != BUILD_OBJ_ROOT


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11253 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-10 01:10:01 +00:00
Brian Gaeke
6c0969696a Fix bug in installation process: MKDIR must respect DESTDIR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11236 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-09 17:38:52 +00:00
Brian Gaeke
59932233c6 Remove rules for autoconf'ing files from top-level Makefile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11185 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-08 07:44:30 +00:00
Chris Lattner
6a8c2907b0 Revised version of a patch for PR222 that works with my version of gmake.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11104 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-03 23:05:24 +00:00
Chris Lattner
9cf662b367 Apply Michael Kahl's patch to fix the 'make tools-only' target when OBJDIR != SRCDIR.
See PR222.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11102 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-03 22:56:40 +00:00
Brian Gaeke
6fdaf4a219 Move support for building tags database from Makefile.rules to Makefile, because
it's only used in the top-level directory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10960 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-22 21:54:51 +00:00
Brian Gaeke
67afaa1899 Part 2 of DESTDIR support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10945 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-21 23:28:03 +00:00
Brian Gaeke
f29202149e Simplify configure rules. (I don't know if anyone else cares...)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10816 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-13 07:09:56 +00:00
Brian Gaeke
265f0ec559 Support 'make install' for LLVM include files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10378 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-10 18:41:20 +00:00
Brian Gaeke
c536545a43 Add tools-only target, for bootstrapping the C/C++ front end.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9341 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-21 18:08:10 +00:00
John Criswell
e488e9360b Added LLVM copyright notice to Makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9312 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 22:26:57 +00:00
Brian Gaeke
b68e33476e I really meant to use that AUTOHEADER variable I put in there.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8972 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-08 21:38:35 +00:00
Brian Gaeke
e9b509057b Add rule for regenerating config.h.in using autoheader.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8957 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-07 23:44:10 +00:00
Brian Gaeke
7528343cbd Add target to regenerate top-level "configure" script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8927 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-07 17:12:11 +00:00
Chris Lattner
091bbbada3 Revert back to keeping Burg and TableGen in the utils directory
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8876 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-05 19:28:27 +00:00
John Criswell
4e0797835f Moved llvm/lib/Support to llvm/support/lib/Support.
Moved llvm/utils/Burg and llvm/utils/TableGen to llvm/support/tools.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8733 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-29 14:52:28 +00:00
Chris Lattner
52cc7e2edd build the new runtime directory
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7876 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 04:53:45 +00:00
John Criswell
d741bcfa16 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7780 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12 18:51:51 +00:00
John Criswell
8bff509803 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6679 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-11 13:55:44 +00:00
Chris Lattner
737ae6ea61 Make sure to build lib/Support before the utilities, then use the new
makefile in utils to build the utilities


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4844 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-02 01:23:26 +00:00
Chris Lattner
ea4b0b2fe5 Build burg tree
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3792 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-17 23:23:52 +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