#-----[ Directory ]---------------------------------------- DIR_DOC = doc DIR_LIB = lib DIR_TEST = SelfTest #-----[ Variable ]----------------------------------------- OBJECTS = $(OBJECTS_COMMON) #-----[ Rules ]-------------------------------------------- .PRECIOUS : $(DIR_LIB)/%.a .NOPARALLEL : clean help all_component : test_env $(DIR_OBJ) $(DIR_LIB) $(OBJECTS) $(HEADERS) @$(MAKE) $(LIBRARY) $(DIR_LIB)/%.a : $(OBJECTS) $(HEADERS) @$(ECHO) "Archive : $*" @$(AR) -r $@ $(OBJECTS) @$(RANLIB) $@ $(DIR_LIB) : @$(ECHO) "Create directory : $@" @$(MKDIR) $@ document : @$(MAKE) --directory=$(DIR_DOC) --makefile=Makefile component_clean : @$(RM) $(DIR_LIB) component_help : @$(ECHO) " -----[ Component ]----------------------------------" @$(ECHO) "" @$(ECHO) " * all_component : compile all c++ file and generate library" @$(ECHO) " * document : Generate documantation" @$(ECHO) " * clean : Erase all generate files" @$(ECHO) " * help : print this text" @$(ECHO) "" help : @$(MAKE) common_help @$(MAKE) component_help clean : @$(MAKE) common_clean @$(MAKE) component_clean @if $(TEST) -d $(DIR_DOC); then $(MAKE) --directory=$(DIR_DOC) --makefile=Makefile clean; fi