Use class instead of struct for defining classes. This unbreaks the
[oota-llvm.git] / Makefile
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 #===------------------------------------------------------------------------===#
9 LEVEL = .
10 DIRS = lib/System lib/Support utils lib tools 
11
12 ifneq ($(MAKECMDGOALS),tools-only)
13 DIRS += runtime
14 OPTIONAL_DIRS = examples projects
15 endif
16
17 include $(LEVEL)/Makefile.common
18
19 test :: all
20         cd test; $(MAKE)
21
22 distclean:: clean
23         $(VERB) $(RM) -rf $(LEVEL)/Makefile.config \
24                           $(LEVEL)/include/llvm/Config/config.h \
25                           $(LEVEL)/autoconf/autom4te.cache \
26                           $(LEVEL)/config.log \
27                           $(LEVEL)/TAGS
28
29 tools-only: all
30
31 # Install support for llvm include files:
32 .PHONY: install-includes
33
34 install-includes:
35         $(MKDIR) $(DESTDIR)$(includedir)/llvm
36         cd include && find * -path '*/Internal' -prune -o '(' '!' '(' -name '*~' -o -name .cvsignore ')' -print ')' | grep -v CVS | pax -rwdvpe $(DESTDIR)$(includedir)/llvm
37 ifneq ($(BUILD_SRC_ROOT),$(BUILD_OBJ_ROOT))
38         cd $(BUILD_SRC_ROOT)/include && find * -path '*/Internal' -prune -o '(' '!' '(' -name '*~' -o -name .cvsignore ')' -print ')' | grep -v CVS | pax -rwdvpe $(DESTDIR)$(includedir)/llvm
39 endif
40
41 install:: install-includes
42
43 # Build tags database for Emacs/Xemacs:
44 .PHONY: tags
45
46 TAGS: tags
47
48 all::
49
50 tags:
51         find $(wildcard $(SourceDir)/include $(SourceDir)/lib $(SourceDir)/tools) -name '*.cpp' -o -name '*.h' | $(ETAGS) $(ETAGSFLAGS) -
52