source: trunk/Mars/Makefile.rules@ 18956

Last change on this file since 18956 was 18138, checked in by tbretz, 10 years ago
Use the compilers preprocessor for rootcint so that things like libnova are properly passed.
File size: 2.6 KB
Line 
1include $(CINT)Dep.d
2
3$(MRPROPERS):
4 @echo " Doing Mr.Proper in $(@:.mrproper=)"
5 (cd $(@:.mrproper=); ($(MAKE) -f Makefile mrproper > /dev/null); cd ..;)
6
7$(CONDOR):
8 @echo " Starting make in $(@:.condor=) via condor"
9 (echo universe=vanilla; \
10 echo executable=/bin/bash; \
11 echo arguments=-c make; \
12 echo log=../.makecondor.log; \
13 echo initialdir=$(@:.condor=); \
14 echo getenv=true; \
15 echo notification=never; \
16 echo queue) | condor_submit > /dev/null
17# (cd $(@:.condor=); (condor_run $(MAKE) &); cd ..;)
18# echo output=.makecondor.out; \
19# echo error=.makecondor.err; \
20
21$(SGE):
22 @echo " Starting make in $(@:.sge=) via sge"
23 (cd $(@:.sge=); qsub -N $@ -sync y -b yes -q test -cwd /bin/bash -l -c make; cd ..;)
24
25$(CLEANERS):
26 @echo "Cleaning $(@:.clean=):"
27 (cd $(@:.clean=); $(MAKE) -f Makefile clean; cd ..;)
28
29$(LIBRARIES):
30 @echo " Calling make in $(@:.a=)"
31 $(MAKE) -C $* -f Makefile all
32
33$(LIB): $(OBJS) $(CINT)Cint.o
34 @echo " - Building Library $(LIB)"
35 $(CXX) $(CXXFLAGS) $(DYNLIB) $(OBJS) $(CINT)Cint.o -o $(LIB)
36 @echo " "
37
38$(CINT)Cint.cc: $(HEADERS) $(CINT)LinkDef.h
39 @echo " - Generating dictionary $(CINT)Cint.cc"
40 rootcint -f $(CINT)Cint.cc \
41 -c -p $(INCLUDES) $(LIBNOVA_INCLUDE_PATH) $(DEFINES) $(HEADERS) $(CINT)Incl.h $(CINT)LinkDef.h
42
43%.d:
44 @echo " - Generating dependencies" $@
45 rmkdepend -f- -Y -w 3000 -- $(INCLUDES) -- $(SRCFILES) -- $(PROGRAMS:=.cc) 2> /dev/null | \
46 sed 's/^\(.*\).o:/$@ \1.o:/' > $@
47 echo "$@: Makefile" >> $@
48
49%.o: %.cxx
50 @echo " - Compiling" $<
51 $(CXX) $(CXXFLAGS) -c $< -o $@
52
53%.o: %.cc
54 @echo " - Compiling" $<
55 $(CXX) $(CXXFLAGS) -c $< -o $@
56
57%.o: %.c
58 @echo " - Compiling" $<
59 $(CC) $(CFLAGS) -c $< -o $@
60
61#
62# The cleaning facility
63#
64
65rmcint:
66 @echo " Removing cint-stuff..."
67 @rm -f *Cint.*
68
69rmlib:
70 @echo " Removing libraries..."
71 @echo " "
72 @rm -f lib/lib*.a lib*.a
73
74rmobjs:
75 @echo " Removing object files..."
76 @rm -f *.o
77
78rmdep:
79 @echo " Removing dependency files..."
80 @rm -f *Dep.d */*Dep.d
81
82rmcore:
83 @echo " Removing core files..."
84 @rm -f core*
85
86rmbin:
87 @echo " Removing binary files..."
88 @rm -f $(PROGRAMS) $(SOLIB) $(DYLIB) so_locations
89
90rmbak:
91 @echo " Removing backup files..."
92 @rm -f *~ kk.kk *.bak .#* .*~
93
94rmbakmac:
95 @echo " Removing backup files in macros"
96 @rm -f macros/*~
97
98rmhtml:
99 @echo " Removing htmldoc-tree"
100 rm -rf htmldoc/examples
101 rm -rf htmldoc/src
102 ls htmldoc/* | grep "htmldoc/" | grep -v images | grep -v CVS | xargs rm -f
103
104clean: rmcint rmobjs rmdep rmcore rmlib
105
106cflags:
107 @echo $(INCLUDES) $(CXXFLAGS)
108
109diff:
110 @svn diff | grep -v "^? " > mars.diff
111
112#zdiff:
113# @cvs -z9 diff | grep -v "^? " > mars.diff
Note: See TracBrowser for help on using the repository browser.