blob: 17ccc7320ec8dee3838da333efc458afe2ef6e2f [file] [log] [blame]
Reid Spencer5f016e22007-07-11 17:01:13 +00001LEVEL = ../..
Daniel Dunbar073777f2009-03-24 03:00:12 +00002DIRS := include lib tools docs
Reid Spencer5f016e22007-07-11 17:01:13 +00003
Daniel Dunbar297b0832009-11-15 00:22:33 +00004PARALLEL_DIRS :=
5
6ifeq ($(BUILD_EXAMPLES),1)
7 PARALLEL_DIRS += examples
8endif
9
Reid Spencer5f016e22007-07-11 17:01:13 +000010include $(LEVEL)/Makefile.common
11
Mike Stumpadc981a2009-01-20 21:10:41 +000012ifneq ($(PROJ_SRC_ROOT),$(PROJ_OBJ_ROOT))
Torok Edwin38a80952009-09-23 14:23:05 +000013all::
Mike Stumpadc981a2009-01-20 21:10:41 +000014 $(Verb) if [ ! -f test/Makefile ]; then \
15 $(MKDIR) test; \
16 $(CP) $(PROJ_SRC_DIR)/test/Makefile test/Makefile; \
17 fi
18endif
19
Reid Spencer5f016e22007-07-11 17:01:13 +000020test::
Chris Lattner9d294b92008-04-06 22:32:01 +000021 @ $(MAKE) -C test
Gabor Greifab72ffe2008-03-18 06:14:16 +000022
23report::
Chris Lattner9d294b92008-04-06 22:32:01 +000024 @ $(MAKE) -C test report
Reid Spencer5f016e22007-07-11 17:01:13 +000025
26clean::
Chris Lattner9d294b92008-04-06 22:32:01 +000027 @ $(MAKE) -C test clean
Gabor Greif5267d7c2008-03-20 14:28:22 +000028
Mike Stump8ba82b32009-02-12 02:25:47 +000029tags::
30 $(Verb) etags `find . -type f -name \*.h | grep -v /lib/Headers | grep -v /test/` `find . -type f -name \*.cpp | grep -v /lib/Headers | grep -v /test/`
31
Daniel Dunbar432eeec2009-03-18 05:59:14 +000032cscope.files:
Daniel Dunbar073777f2009-03-24 03:00:12 +000033 find tools lib include -name '*.cpp' \
Daniel Dunbar432eeec2009-03-18 05:59:14 +000034 -or -name '*.def' \
35 -or -name '*.td' \
36 -or -name '*.h' > cscope.files
37
38.PHONY: test report clean cscope.files
Douglas Gregor14ea5692009-10-08 22:15:31 +000039
40install-local::
41 $(Echo) Installing include files
42 $(Verb) $(MKDIR) $(PROJ_includedir)
43 $(Verb) if test -d "$(PROJ_SRC_ROOT)/tools/clang/include" ; then \
44 cd $(PROJ_SRC_ROOT)/tools/clang/include && \
45 for hdr in `find . -type f '!' '(' -name '*~' \
Axel Naumann1555c3a2009-10-12 16:42:18 +000046 -o -name '.#*' -o -name '*.in' -o -name '*.txt' \
47 -o -name 'Makefile' -o -name '*.td' ')' -print \
48 | grep -v CVS | grep -v .svn` ; do \
Douglas Gregor14ea5692009-10-08 22:15:31 +000049 instdir=`dirname "$(PROJ_includedir)/$$hdr"` ; \
50 if test \! -d "$$instdir" ; then \
51 $(EchoCmd) Making install directory $$instdir ; \
52 $(MKDIR) $$instdir ;\
53 fi ; \
54 $(DataInstall) $$hdr $(PROJ_includedir)/$$hdr ; \
55 done ; \
56 fi
57ifneq ($(PROJ_SRC_ROOT),$(PROJ_OBJ_ROOT))
58 $(Verb) if test -d "$(PROJ_OBJ_ROOT)/tools/clang/include" ; then \
59 cd $(PROJ_OBJ_ROOT)/tools/clang/include && \
Axel Naumann1555c3a2009-10-12 16:42:18 +000060 for hdr in `find . -type f '!' '(' -name 'Makefile' ')' -print \
61 | grep -v CVS | grep -v .tmp` ; do \
Douglas Gregor14ea5692009-10-08 22:15:31 +000062 $(DataInstall) $$hdr $(PROJ_includedir)/$$hdr ; \
63 done ; \
64 fi
65endif