1 |
# Makefile created Thu Oct 9 11:44:02 EDT 1997 |
2 |
# on machine xolas1 |
3 |
# by logon id cnh |
4 |
# command line MkMake.sh ../src/cadj.F ../src/cg2d.F ../src/control.F ../src/diags.F ../src/eparam.F ../src/g_calc.F ../src/get_map.F ../src/inc_tracer.F ../src/initialise.F ../src/io.F ../src/main.F ../src/model.F ../src/pfind.F ../src/plot_field.F ../src/print.F ../src/prog_utilities.F ../src/read.F ../src/rediTensor.F ../src/set_defaults.F ../src/update_rho.F ../src/update_s.F ../src/update_t.F ../src/update_uv.F ../src/update_w.F ../src/write.F |
5 |
# |
6 |
# Name of executable to create |
7 |
EXE=MITgcm-4 |
8 |
|
9 |
# Common options |
10 |
CPP=cpp |
11 |
|
12 |
# Sunpro F90 Parallel processing options. |
13 |
# Note: There is a problem associated with the I/O done in |
14 |
# the routine io.F. I have not been able to fix the problem. Instead |
15 |
# io.F is compiled using F77 and the problem does not occur. |
16 |
# The problem occurs if the F90 compiler is used. The OPEN statement |
17 |
# frequently generates segmentation violations. If the routine |
18 |
# update_t.F only updates less than the first 32792 bytes of the array gt |
19 |
# the problem stops. Also if in gt you skip the elements of gt |
20 |
# that are a multiple of 32792 from the start of the array then the problem |
21 |
# does not occur. |
22 |
# ../src/io.F prize for the person who finds the bug. CNH |
23 |
F90COMP=f90 |
24 |
F90LINK=f90 |
25 |
F77COMP=f77 |
26 |
F77COMOPTS=-c -fast -dalign -e -explcitpar -I../src |
27 |
COMOPTS=-c -fast -dalign -e -fixed -explcitpar -I../src |
28 |
LNKOPTS=-fast -dalign -explcitpar -o $(EXE) |
29 |
|
30 |
# Sunpro F90 Single processor "performance" options |
31 |
CPPOPTS=-P |
32 |
F90COMP=f90 |
33 |
F90LINK=f90 |
34 |
F77COMP=f90 |
35 |
F77COMOPTS=-c -fast -dalign -e -fixed -I../src |
36 |
COMOPTS=-c -fast -dalign -e -fixed -I../src |
37 |
LNKOPTS=-fast -dalign -o $(EXE) |
38 |
|
39 |
# Sunpro F90 Debug options |
40 |
F90COMP=f90 |
41 |
F90LINK=f90 |
42 |
F77COMP=f90 |
43 |
F77COMOPTS=-ladebug -fast -O5 -notransform_loops -extend_source -I../src -c |
44 |
COMOPTS=-r8 -fpconst -O3 -notransform_loops -nospeculate -extend_source -I../src -c |
45 |
LNKOPTS= -O2 -automatic -call_shared -o $(EXE) |
46 |
LNKOPTS= -what -O3 -notransform_loops -nospeculate -automatic -call_shared -o $(EXE) |
47 |
# END xolas.lcs.mit.edu |
48 |
OBJS = \ |
49 |
cadj.o \ |
50 |
cg2d.o \ |
51 |
control.o \ |
52 |
diags.o \ |
53 |
eparam.o \ |
54 |
find_ph.o \ |
55 |
g_calc.o \ |
56 |
get_map.o \ |
57 |
inc_tracer.o \ |
58 |
initialise.o \ |
59 |
io.o \ |
60 |
main.o \ |
61 |
model.o \ |
62 |
pfind.o \ |
63 |
plot_field.o \ |
64 |
print.o \ |
65 |
prog_utilities.o \ |
66 |
read.o \ |
67 |
rediTensor.o \ |
68 |
set_defaults.o \ |
69 |
update_rho.o \ |
70 |
update_s.o \ |
71 |
update_t.o \ |
72 |
update_uv.o \ |
73 |
update_w.o \ |
74 |
write.o |
75 |
|
76 |
$(EXE): $(OBJS) |
77 |
$(F90LINK) $(LNKOPTS) $(OBJS) |
78 |
cadj.o: ../src/cadj.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
79 |
$(CPP) $(CPPOPTS) -P ../src/cadj.F > cadj.f |
80 |
$(F90COMP) $(COMOPTS) cadj.f |
81 |
cg2d.o: ../src/cg2d.F ../src/CG2DA.h ../src/CG2DZ.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/PARAMS.h ../src/SIZE.h |
82 |
$(CPP) $(CPPOPTS) -P ../src/cg2d.F > cg2d.f |
83 |
$(F90COMP) $(COMOPTS) cg2d.f |
84 |
control.o: ../src/control.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/PARAMS.h ../src/SIZE.h |
85 |
$(CPP) $(CPPOPTS) -P ../src/control.F > control.f |
86 |
$(F90COMP) $(COMOPTS) control.f |
87 |
diags.o: ../src/diags.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/DIAGS.h ../src/EXTERNAL.h ../src/GRID.h ../src/MASKS.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
88 |
$(CPP) $(CPPOPTS) -P ../src/diags.F > diags.f |
89 |
$(F90COMP) $(COMOPTS) diags.f |
90 |
find_ph.o: ../src/find_ph.F ../src/AJAINF.h ../src/CG2DA.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
91 |
$(CPP) $(CPPOPTS) -P ../src/find_ph.F > find_ph.f |
92 |
$(F90COMP) $(COMOPTS) find_ph.f |
93 |
eparam.o: ../src/eparam.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/EPARAM.h ../src/EXTERNAL.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h ../src/STRINGS.h |
94 |
$(CPP) $(CPPOPTS) -P ../src/eparam.F > eparam.f |
95 |
$(F90COMP) $(COMOPTS) eparam.f |
96 |
g_calc.o: ../src/g_calc.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
97 |
$(CPP) $(CPPOPTS) -P ../src/g_calc.F > g_calc.f |
98 |
$(F90COMP) $(COMOPTS) g_calc.f |
99 |
get_map.o: ../src/get_map.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h |
100 |
$(CPP) $(CPPOPTS) -P ../src/get_map.F > get_map.f |
101 |
$(F90COMP) $(COMOPTS) get_map.f |
102 |
inc_tracer.o: ../src/inc_tracer.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/MASKS.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
103 |
$(CPP) $(CPPOPTS) -P ../src/inc_tracer.F > inc_tracer.f |
104 |
$(F90COMP) $(COMOPTS) inc_tracer.f |
105 |
initialise.o: ../src/initialise.F ../src/AJAINF.h ../src/CG2DA.h ../src/CG2DZ.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/DIAGS.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/POLYEOS.h ../src/SIZE.h ../src/STRINGS.h |
106 |
$(CPP) $(CPPOPTS) -P ../src/initialise.F > initialise.f |
107 |
$(F90COMP) $(COMOPTS) initialise.f |
108 |
io.o: ../src/io.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/EXTERNAL.h |
109 |
$(CPP) $(CPPOPTS) -P ../src/io.F > io.f |
110 |
$(F77COMP) $(F77COMOPTS) io.f |
111 |
main.o: ../src/main.F ../src/AJAINF.h ../src/CG2DA.h ../src/CG2DZ.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/POLYEOS.h ../src/SIZE.h |
112 |
$(CPP) $(CPPOPTS) -P ../src/main.F > main.f |
113 |
$(F90COMP) $(COMOPTS) main.f |
114 |
model.o: ../src/model.F ../src/AJAINF.h ../src/CG2DA.h ../src/CG2DZ.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/EXTERNAL.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
115 |
$(CPP) $(CPPOPTS) -P ../src/model.F > model.f |
116 |
$(F90COMP) $(COMOPTS) model.f |
117 |
pfind.o: ../src/pfind.F ../src/AJAINF.h ../src/CG2DA.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
118 |
$(CPP) $(CPPOPTS) -P ../src/pfind.F > pfind.f |
119 |
$(F90COMP) $(COMOPTS) pfind.f |
120 |
plot_field.o: ../src/plot_field.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h |
121 |
$(CPP) $(CPPOPTS) -P ../src/plot_field.F > plot_field.f |
122 |
$(F90COMP) $(COMOPTS) plot_field.f |
123 |
print.o: ../src/print.F ../src/AJAINF.h ../src/CG2DA.h ../src/CG2DZ.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h ../src/STRINGS.h |
124 |
$(CPP) $(CPPOPTS) -P ../src/print.F > print.f |
125 |
$(F90COMP) $(COMOPTS) print.f |
126 |
prog_utilities.o: ../src/prog_utilities.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/EXTERNAL.h |
127 |
$(CPP) $(CPPOPTS) -P ../src/prog_utilities.F > prog_utilities.f |
128 |
$(F90COMP) $(COMOPTS) prog_utilities.f |
129 |
read.o: ../src/read.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/EXTERNAL.h ../src/MASKS.h ../src/PARAMS.h ../src/SIZE.h ../src/STRINGS.h |
130 |
$(CPP) $(CPPOPTS) -P ../src/read.F > read.f |
131 |
$(F90COMP) $(COMOPTS) read.f |
132 |
rediTensor.o: ../src/rediTensor.F ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/MASKS.h ../src/OPERATORS.h ../src/SIZE.h |
133 |
$(CPP) $(CPPOPTS) -P ../src/rediTensor.F > rediTensor.f |
134 |
$(F90COMP) $(COMOPTS) rediTensor.f |
135 |
set_defaults.o: ../src/set_defaults.F ../src/AJAINF.h ../src/CG2DA.h ../src/CG2DZ.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/EPARAM.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h ../src/STRINGS.h |
136 |
$(CPP) $(CPPOPTS) -P ../src/set_defaults.F > set_defaults.f |
137 |
$(F90COMP) $(COMOPTS) set_defaults.f |
138 |
update_rho.o: ../src/update_rho.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/POLYEOS.h ../src/SIZE.h |
139 |
$(CPP) $(CPPOPTS) -P ../src/update_rho.F > update_rho.f |
140 |
$(F90COMP) $(COMOPTS) update_rho.f |
141 |
update_s.o: ../src/update_s.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
142 |
$(CPP) $(CPPOPTS) -P ../src/update_s.F > update_s.f |
143 |
$(F90COMP) $(COMOPTS) update_s.f |
144 |
update_t.o: ../src/update_t.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/FORCING.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
145 |
$(CPP) $(CPPOPTS) -P ../src/update_t.F > update_t.f |
146 |
$(F90COMP) $(COMOPTS) update_t.f |
147 |
update_uv.o: ../src/update_uv.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
148 |
$(CPP) $(CPPOPTS) -P ../src/update_uv.F > update_uv.f |
149 |
$(F90COMP) $(COMOPTS) update_uv.f |
150 |
update_w.o: ../src/update_w.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/GRID.h ../src/MASKS.h ../src/OLDG.h ../src/OPERATORS.h ../src/PARAMS.h ../src/SIZE.h |
151 |
$(CPP) $(CPPOPTS) -P ../src/update_w.F > update_w.f |
152 |
$(F90COMP) $(COMOPTS) update_w.f |
153 |
write.o: ../src/write.F ../src/AJAINF.h ../src/CPP_MACROS.h ../src/CPP_OPTIONS.h ../src/EXTERNAL.h ../src/OLDG.h ../src/PARAMS.h ../src/SIZE.h |
154 |
$(CPP) $(CPPOPTS) -P ../src/write.F > write.f |
155 |
$(F90COMP) $(COMOPTS) write.f |
156 |
|
157 |
rcs: |
158 |
ci -l *.F *.h Makefile Makefile.* *.sh README |
159 |
|
160 |
rebuild: |
161 |
touch ../src/*.F ../src/*.h |
162 |
make -f Makefile |
163 |
|
164 |
arch: |
165 |
ci -l *.F *.h Makefile |
166 |
rcp *.F *.h Makefile cnh@sea.mit.edu:/data34e/cnh/models/F77ishImplmentation/Src |
167 |
rsh sea.mit.edu -l cnh 'cd /data34e/cnh/models/F77ishImplmentation/Src; ci -l *.F *.h Makefile' |
168 |
|
169 |
paiute: |
170 |
rcp *.F *.h herbaut@paiute.ucar.edu:cnh/rmtank/src |
171 |
rcp Makefile.paiute herbaut@paiute.ucar.edu:cnh/rmtank/src/Makefile |
172 |
rcp topog Lev* windx.b windy.b herbaut@paiute.ucar.edu:tmp/rmtank/bin |
173 |
|
174 |
ouray: ouray_code |
175 |
|
176 |
ouray_code: |
177 |
rcp *.F *.h cnh@ouray.ucar.edu:cnh/rmtank/src |
178 |
rcp Makefile.ouray cnh@ouray.ucar.edu:cnh/rmtank/src/Makefile |
179 |
|
180 |
mario: mario_code |
181 |
|
182 |
mario_code: |
183 |
rsh mario.psc.edu -l marshalj mkdir -p tmp/rmtank/bin |
184 |
rsh mario.psc.edu -l marshalj mkdir -p tmp/rmtank/src |
185 |
rcp *.F *.h marshalj@mario.psc.edu:tmp/rmtank/src |
186 |
rcp Makefile.mario marshalj@mario.psc.edu:tmp/rmtank/src/Makefile |
187 |
|