[77] | 1 | #-----[ Directory ]---------------------------------------- |
---|
[23] | 2 | DIR_DOC = doc |
---|
[2] | 3 | DIR_TEST = SelfTest |
---|
| 4 | |
---|
[77] | 5 | #-----[ Variable ]----------------------------------------- |
---|
[2] | 6 | OBJECTS = $(OBJECTS_COMMON) |
---|
| 7 | |
---|
[77] | 8 | #-----[ Rules ]-------------------------------------------- |
---|
[2] | 9 | .PRECIOUS : $(DIR_LIB)/%.a |
---|
[71] | 10 | #.NOTPARALLEL : clean help |
---|
[2] | 11 | |
---|
[113] | 12 | all_component : test_env $(DIR_OBJ) $(DIR_LIB) |
---|
| 13 | @\ |
---|
| 14 | $(MAKE) $(LIBRARY); |
---|
[2] | 15 | |
---|
[113] | 16 | # if simulator is modelsim, libComponent.a is a directory, else is normal library generated by g++ |
---|
| 17 | |
---|
| 18 | $(DIR_LIB)/%.a : $(SOURCES) $(HEADERS) |
---|
[48] | 19 | @\ |
---|
[117] | 20 | case "${SIMULATOR_SYSTEMC}" in \ |
---|
[113] | 21 | "modelsim") \ |
---|
| 22 | $(MODELTECH_VLIB) $@; \ |
---|
| 23 | $(MODELTECH_SCCOM) $(CFLAGS) $(SOURCES) -work $@; \ |
---|
| 24 | ;; \ |
---|
| 25 | *) \ |
---|
| 26 | $(MAKE) $(OBJECTS); \ |
---|
[117] | 27 | if $(TEST) $$? -eq 0; then \ |
---|
| 28 | $(ECHO) "Archive : $*"; \ |
---|
| 29 | $(AR) -r $@ $(OBJECTS); \ |
---|
| 30 | $(RANLIB) $@; \ |
---|
| 31 | fi; \ |
---|
[113] | 32 | ;; \ |
---|
| 33 | esac; |
---|
[2] | 34 | |
---|
| 35 | $(DIR_LIB) : |
---|
[48] | 36 | @\ |
---|
| 37 | $(ECHO) "Create directory : $@";\ |
---|
| 38 | $(MKDIR) $@; |
---|
[2] | 39 | |
---|
[23] | 40 | document : |
---|
| 41 | @$(MAKE) --directory=$(DIR_DOC) --makefile=Makefile |
---|
| 42 | |
---|
[2] | 43 | component_clean : |
---|
[113] | 44 | @$(RM) $(LIBRARY) |
---|
[88] | 45 | # if $(TEST) -d $(DIR_DOC); then $(MAKE) --directory=$(DIR_DOC) --makefile=Makefile clean; fi; |
---|
| 46 | |
---|
| 47 | component_clean_all : component_clean |
---|
[113] | 48 | @$(RM) $(DIR_LIB) |
---|
[88] | 49 | # if $(TEST) -d $(DIR_DOC); then $(MAKE) --directory=$(DIR_DOC) --makefile=Makefile clean_all; fi; |
---|
[2] | 50 | |
---|
| 51 | component_help : |
---|
[48] | 52 | @\ |
---|
[77] | 53 | $(ECHO) " -----[ Component ]----------------------------------";\ |
---|
[48] | 54 | $(ECHO) "";\ |
---|
| 55 | $(ECHO) " * all_component : compile all c++ file and generate library";\ |
---|
| 56 | $(ECHO) " * document : Generate documantation";\ |
---|
| 57 | $(ECHO) " * clean : Erase all generate files";\ |
---|
| 58 | $(ECHO) " * help : print this text";\ |
---|
| 59 | $(ECHO) ""; |
---|
[2] | 60 | |
---|
| 61 | help : |
---|
[48] | 62 | @\ |
---|
| 63 | $(MAKE) common_help;\ |
---|
| 64 | $(MAKE) component_help; |
---|
| 65 | |
---|
[2] | 66 | clean : |
---|
[48] | 67 | @\ |
---|
| 68 | $(MAKE) common_clean ;\ |
---|
[88] | 69 | $(MAKE) component_clean; |
---|
| 70 | |
---|
[113] | 71 | clean_all : |
---|
[88] | 72 | @\ |
---|
| 73 | $(MAKE) common_clean_all ;\ |
---|
| 74 | $(MAKE) component_clean_all; |
---|