## Include dependencies rules ifndef Dabc_Makefile_rules Dabc_Makefile_rules = true dummy=$(BLD_DIR)/dummy.d ifdef DABCMAINMAKE AUTO_DIRS = $(sort $(CREATE_DIRS) $(dir $(ALLDEPENDENC)) $(dir $(ALLHDRS))) build-init:: $(ALLHDRS) else AUTO_DIRS = $(sort $(CREATE_DIRS) $(dir $(ALLDEPENDENC))) build-init:: endif ifneq ($(APPLICATIONS_DIRS),) apps:: @for DIR in $(APPLICATIONS_DIRS); do ($(MAKE) -f $$DIR/Makefile DABCSYS=$(DABCSYS) _topdir_=$$DIR/) done endif clean:: @echo "Clean in $(CURDIR)" @for DIR in $(APPLICATIONS_DIRS); do ($(MAKE) clean -f $$DIR/Makefile DABCSYS=$(DABCSYS) _topdir_=$$DIR/) done @for DIR in $(AUTO_DIRS); do (if [ ! -f $$DIR ] ; then $(RMDIR) $$DIR; fi); done @$(RMDIR) $(BLD_DIR) clean-svn: find . -name ".svn" -type d -exec rm -rf {} \; @echo "Clean svn-specific files done" ifeq ($(DOOPTIMIZATION), false) OPTFLAGS = $(DEBUGMODE) else OPTFLAGS = $(OPTIMIZEMODE) endif $(dummy): $(AUTO_DIRS) build-init @(if [ ! -f $(BLD_DIR) ] ; then mkdir -p $(BLD_DIR); fi) @(if [ ! -f $@ ] ; then touch $@; fi) $(AUTO_DIRS): @for DIR in $@; do (if [ ! -f $$DIR ] ; then mkdir -p $$DIR; fi); done ## Extensions rules .SUFFIXES: .$(SrcSuf) .$(DepSuf) .$(HedSuf) .$(CSuf) $(BLD_DIR)/%.$(ObjSuf): %.$(SrcSuf) $(dummy) $(CXX) -c $< $(OPTFLAGS) $(CXXFLAGS) -o $@ %.$(ObjSuf): %.$(SrcSuf) $(dummy) $(CXX) -c $< $(OPTFLAGS) $(CXXFLAGS) -o $@ $(BLD_DIR)/%.$(ObjSuf): %.$(CSuf) $(dummy) $(CC) -c $< $(OPTFLAGS) $(CFLAGS) -o $@ $(BLD_DIR)/%.$(DepSuf): %.$(SrcSuf) $(dummy) @echo "Dependency: $@" @$(CXX) $(CXXFLAGS) $< -o $@ -MM -MT "$(BLD_DIR)/$*.o $(BLD_DIR)/$*.d" %.$(DepSuf): %.$(SrcSuf) $(dummy) @echo "Dependency: $@" @$(CXX) $(CXXFLAGS) $< -o $@ -MM -MT "$*.o $*.d" $(BLD_DIR)/%.$(DepSuf): %.$(CSuf) $(dummy) @echo "Dependency: $@" @$(CC) $(CFLAGS) $< -o $@ -MM -MT "$(BLD_DIR)/$*.o $(BLD_DIR)/$*.d" ## include in the end, if necessary, dependency and dummy.h file ifeq ($(findstring $(MAKECMDGOALS), $(FASTRULES)),) ifdef ALLDEPENDENC -include $(ALLDEPENDENC) endif ## this must be last include in complete makefile -include $(dummy) endif endif