Makefile revision 6a8c2907b0721ce53ad6887be5b10eef50dac060
1##===- ./Makefile ------------------------------------------*- Makefile -*-===##
2# 
3#                     The LLVM Compiler Infrastructure
4#
5# This file was developed by the LLVM research group and is distributed under
6# the University of Illinois Open Source License. See LICENSE.TXT for details.
7# 
8##===----------------------------------------------------------------------===##
9LEVEL = .
10DIRS = lib/Support utils lib tools 
11OPTIONAL_DIRS = projects
12
13ifneq ($(MAKECMDGOALS),tools-only)
14DIRS += runtime
15endif
16
17
18include $(LEVEL)/Makefile.common
19
20test :: all
21	cd test; $(MAKE)
22
23distclean:: clean
24	$(VERB) $(RM) -rf $(LEVEL)/Makefile.config \
25	                  $(LEVEL)/include/Config/config.h \
26	                  $(LEVEL)/autoconf/autom4te.cache \
27	                  $(LEVEL)/config.log \
28	                  $(LEVEL)/TAGS
29
30tools-only: all
31
32configure: autoconf/configure.ac autoconf/aclocal.m4
33	cd autoconf && aclocal && autoconf -o ../configure configure.ac
34
35include/Config/config.h.in: autoconf/configure.ac autoconf/aclocal.m4
36	autoheader -I autoconf autoconf/configure.ac
37
38# Install support for llvm include files:
39.PHONY: install-includes
40
41install-includes:
42	$(MKDIR) $(includedir)/llvm
43	cd include && find * '!' '(' -name '*~' -o -name .cvsignore ')' -print | grep -v CVS | pax -rwdvpe $(DESTDIR)$(includedir)/llvm
44
45install:: install-includes
46
47# Build tags database for Emacs/Xemacs:
48.PHONY: tags
49
50TAGS: tags
51
52all:: tags
53
54tags:
55	$(ETAGS) $(ETAGSFLAGS) `find $(wildcard $(SourceDir)/include $(SourceDir)/lib $(SourceDir)/tools) -name '*.cpp' -o -name '*.h'`
56
57