]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - conf/GeneralMacros
Adding reverse engineering tool
[u/mrichter/AliRoot.git] / conf / GeneralMacros
index 4aa1e8f4f4c3dd6fa0fe15cc574af9d485f182f9..31841a9ac44374f313670a739779eb78ce37d71c 100644 (file)
@@ -1,45 +1,65 @@
+# $Id$
 ########################## General Macros #####################################
 
 $(SLIBRARY):
-               @echo "Generating $@ for $(PACKAGE)..."
-               @[ -d $(dir $@) ] || mkdir $(dir $@)
+               @echo "Generating $@"
+               @[ -d $(dir $@) ] || mkdir -p $(dir $@)
                @rm -f $@
                 ifeq ($(PLATFORM),aix)
-                  @$(SHLD) -o $@ $(LIBS) -p 0 $(filter-out dirs,$^)
+                  @cd tgt_$(ALICE_TARGET) ;\
+                  $(SHLD) -o $@ $(LIBS) -p 0 $(patsubst tgt_$(ALICE_TARGET)/%,%,$(filter-out dirs,$^))
                 else
-                  @$(SHLD) $(SOFLAGS) $(LDFLAGS) $(filter-out dirs,$^) $(SHLIB) -o $@
+                  @cd tgt_$(ALICE_TARGET) ;\
+                  $(SHLD) $(SOFLAGS) $(LDFLAGS) $(patsubst tgt_$(ALICE_TARGET)/%,%,$(filter-out dirs,$^)) $(SHLIB) -o $@
                 endif
                @chmod 555 $@
-               @echo "$@ done"
 
 
 $(ALIBRARY):   
-               @echo "Generating $@ for $(PACKAGE)..."
-               @[ -d $(dir $@) ] || mkdir $(dir $@)
+               @echo "Generating $@"
+               @[ -d $(dir $@) ] || mkdir -p $(dir $@)
                @rm -f $@
                @ar rv $@ $^
-               @echo "$@ done"
  
 $(PROGRAM):    
-               @echo "Generating $@ for $(PACKAGE)..."
+               @echo "Generating $@"
                @[ -d $(dir $@) ] || mkdir $(dir $@)
                @rm -f $@
                @$(LD) $(LDFLAGS) $^ $(LIBS) -o $@
-               @echo "$@ done"
  
 headers:       $(patsubst %,$(ALICE_ROOT)/include/%,$(HEADERS))
 
 $(DICT):
-               @echo "Generating $@ for $(PACKAGE)..."
+               @echo "Generating $@"
                @rootcint -f $@ -c -I$(ALICE_ROOT)/include $^
-               @echo "$@ done"
  
 depend:
-               @$(MAKEDEPEND) -fMake-depend -- $(CXXFLAGS) $(DEPINC) -- $^
+               @$(MAKEDEPEND) -ftgt_$(ALICE_TARGET)/Make-depend -ptgt_$(ALICE_TARGET)/ -- $(CXXFLAGS) $(DEPINC) -- $^
 
-Make-depend:
-               @cp $(ALICE_ROOT)/conf/Makedepend ./Make-depend
+tgt_$(ALICE_TARGET)/Make-depend:
+               @[ -d $(dir $@) ] || mkdir $(dir $@)
+               @cp $(ALICE_ROOT)/conf/Makedepend $@
 
 macroclean:
                @rm -f $(TOCLEAN) *~ \#*
 
+
+### Target check creates violation reports (.viol), which depend on
+### stripped files (.ii), which in turn depend on preprocessed
+### files (.i). Dependences are in GeneralDef.
+
+check:         $(CHECKS)
+
+REVENGS       = $(patsubst %.viol,%.ii,$(CHECKS))
+
+.SECONDARY: $(REVENGS)
+
+reveng:                check/classDiagram.dot
+
+check/classDiagram.dot:        $(REVENGS)
+       @$(REV_ENG) $^
+       @-mv classDiagram.dot $@
+
+revdisp:       reveng
+       @$(IRST_INSTALLDIR)/scripts/revEngInterface.sh check/classDiagram.dot