1 | include $(DOMHOME)/HOSTS/$(DOM_HOSTTYPE)/makefile.h 2 | 3 | # 4 | # Version and outpath 5 | # ------------------- 6 | # 7 | 8 | HOST = $(DOMHOME)/HOSTS/$(DOM_HOSTTYPE) 9 | OUT = $(HOST) 10 | 11 | # 12 | # Sources directories 13 | # ------------------- 14 | # 15 | 16 | CONST = $(DOMHOME)/SOURCES/MAIN 17 | TOOLD = $(DOMHOME)/TOOLS/INCONVERT 18 | INCFILE = $(HOST)/dom.inc 19 | 20 | # 21 | # Quiet mode 22 | # 23 | .SILENT : 24 | 25 | # 26 | # Suffixes 27 | # -------- 28 | 29 | .SUFFIXES:.o .F .HH .h 30 | 31 | # 32 | # Intermediate files to keep 33 | # -------------------------- 34 | 35 | .PRECIOUS : %.o %_m4.f %.mod %.h 36 | 37 | # 38 | # Executable files 39 | # ---------------- 40 | # 41 | 42 | INCONVERTEXEC = $(OUT)/inconvert_$(DOM_VERSION).e_$(DOM_HOSTTYPE) 43 | 44 | # 45 | # List of object files for INCONVERT 46 | # -------------------------------- 47 | # 48 | 49 | INCONVERT_OBJ = \ 50 | $(TOOLD)/SRC/inconvert.o 51 | 52 | INCONVERT_CNST_OBJ = \ 53 | $(CONST)/dom_constants.h 54 | 55 | # 56 | # INCONVERT compilation 57 | # ------------------- 58 | 59 | all : $(INCONVERTEXEC) 60 | @echo 61 | @echo "****************************************" 62 | @echo 63 | @echo " Executable created :" 64 | @echo $(INCONVERTEXEC) 65 | @echo 66 | @echo "****************************************" 67 | $(RM) *.o *_m4.f *.mod dom.inc *.h 68 | 69 | 70 | 71 | $(INCONVERTEXEC) : $(INCONVERT_CNST_OBJ) $(INCONVERT_OBJ) 72 | @echo 73 | @echo "****************************************" 74 | @echo 75 | @echo "Linking Object Files ...." 76 | @echo 77 | $(FFS) $(LDFLAGS) -o $(INCONVERTEXEC) $(INCONVERT_OBJ) 78 | @echo "****************************************" 79 | @echo 80 | 81 | # 82 | # dependecies by include 83 | # 84 | 85 | $(INCONVERT_OBJ) : $(INCONVERT_CNST_OBJ) 86 | 87 | # 88 | # Cleaning INCONVERT 89 | # 90 | 91 | clean: 92 | @echo 93 | @echo "****************************************" 94 | @echo 95 | @echo "Removing INCONVERT object files" 96 | @echo 97 | $(RM) $(TOOLD)/SRC/*_m4.f 98 | $(RM) $(TOOLD)/SRC/*.o 99 | $(RM) $(CONST)/dom_constants.h 100 | $(RM) dom.inc *.h *_m4.f *.c *.o 101 | @echo "****************************************" 102 | 103 | # 104 | # Suffix Rules: 105 | # 106 | 107 | dom.inc : $(INCFILE) 108 | @echo 109 | @echo "****************************************" 110 | @echo "Linking dom.inc" 111 | $(RM) dom.inc 112 | $(LN) $(INCFILE) . 113 | @echo "****************************************" 114 | @echo 115 | 116 | %_m4.f : %.F dom.inc 117 | @echo 118 | @echo "****************************************" 119 | @echo 120 | @echo " Preprocessing " $*.F 121 | $(M4DIR) $*.F > $*_m4.f 122 | sed '1d' $*_m4.f > tmp_m4.f 123 | $(MV) tmp_m4.f $*_m4.f 124 | 125 | %.o : %_m4.f 126 | @echo " Compiling " $*_m4.f 127 | $(FFS) -c -I$(CONST) $(FFSLAGS) -o $@ $*_m4.f 128 | @echo 129 | @echo "****************************************" 130 | 131 | 132 | %.h : %.HH dom.inc 133 | @echo 134 | @echo "****************************************" 135 | @echo 136 | @echo " Preprocessing " $*.HH 137 | $(M4DIR) $*.HH > $*.h 138 | @echo 139 | @echo "****************************************" 140 | 141 | # Canceling implicit rule %.F => %.o 142 | %.o : %.F 143 |