/[MITgcm]/MITgcm/pkg/mnc/Makefile
ViewVC logotype

Annotation of /MITgcm/pkg/mnc/Makefile

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.13 - (hide annotations) (download)
Tue Jul 27 03:19:56 2004 UTC (19 years, 11 months ago) by edhill
Branch: MAIN
Changes since 1.12: +10 -1 lines
 o build "stubs" (with "all" combinations of name mangling) for all the
     NetCDF functions used by MNC

1 edhill 1.5 #
2 edhill 1.13 # $Header: /u/gcmpack/MITgcm/pkg/mnc/Makefile,v 1.12 2004/03/24 15:29:33 edhill Exp $
3 edhill 1.5 #
4     # A Makefile for MNC templates and testing
5     #
6 edhill 1.1
7     FC = f77
8 edhill 1.9 CPP = cpp
9 edhill 1.1
10     .SUFFIXES:
11 edhill 1.9 .SUFFIXES: .T .t .F .f .h .o
12 edhill 1.1
13     .t.h:
14     cat $< > $@
15     .T.F:
16     cat $< > $@
17 edhill 1.9 .F.f:
18     $(CPP) $(DEFINES) > $@
19     .f.o:
20     $(FC) -DMNC_TEST -c $<
21 edhill 1.1
22    
23     TEST_LINKS = EEPARAMS.h utils.F
24 edhill 1.8 TEST_HEADERS = PACKAGES_CONFIG.h CPP_OPTIONS.h SIZE.h
25 edhill 1.1 TEST_FILES = mnc_test_utils.F
26 edhill 1.9 TEST_DEFINES = -DMNC_DEBUG
27 edhill 1.1
28     FILES = \
29 edhill 1.2 mnc_dim.F \
30 edhill 1.1 mnc_file.F \
31     mnc_grid.F \
32     mnc_init.F \
33     mnc_utils.F \
34 edhill 1.7 mnc_var.F \
35     mnc_cwrapper.F
36 edhill 1.1
37     TEST_OBJECTS = $(TEST_FILES:.F=.o)
38     OBJECTS = $(FILES:.F=.o)
39    
40 edhill 1.3 ALL_TEST = $(TEST_LINKS) $(TEST_HEADERS) $(TEST_FILES) $(TEST_OBJECTS)
41    
42 edhill 1.5 all: templates
43    
44 edhill 1.1 noexe: $(TEST_LINKS) $(TEST_HEADERS) $(TEST_FILES) $(FILES) $(OBJECTS)
45     echo "compiled"
46    
47     EEPARAMS.h:
48     ln -s ../../eesupp/inc/EEPARAMS.h .
49     utils.F:
50     ln -s ../../eesupp/src/utils.F .
51    
52 edhill 1.4 TEMPLATE_FILES = \
53 edhill 1.12 MNC_CW_READWRITE_RS.F \
54     MNC_CW_READWRITE_RL.F \
55     MNC_CW_READWRITE_I.F
56 edhill 1.9 TEMPLATE_OBJECTS = $(TEMPLATE_FILES:.F=.o)
57    
58 edhill 1.13 mnc_netcdf_stubs.c: mnc_netcdf_stubs.h
59     -./build_netcdf_stubs > tmp
60     -cpp -P < tmp > mnc_netcdf_stubs.c
61    
62     mnc_netcdf_stubs.o: mnc_netcdf_stubs.c
63     -gcc -c mnc_netcdf_stubs.c
64 edhill 1.4
65 edhill 1.5 templates: $(TEMPLATE_FILES) mnc_id_header.h
66 edhill 1.4
67 edhill 1.12 MNC_CW_READWRITE_RS.F: mnc_cw_readwrite.template
68     cat $< | sed -e 's/RX/RS/g' | sed -e 's/__V/_RS/g' > $@
69     MNC_CW_READWRITE_RL.F: mnc_cw_readwrite.template
70     cat $< | sed -e 's/RX/RL/g' | sed -e 's/__V/_RL/g' > $@
71     MNC_CW_READWRITE_I.F: mnc_cw_readwrite.template
72     cat $< | sed -e 's/RX/I/g' | sed -e 's/__V/INTEGER/g' > $@
73 edhill 1.4
74 edhill 1.5 tag = ../../doc/tag-index
75    
76     mnc_id_header.h:
77     -./parse_local_info > $@
78    
79 edhill 1.9 test: all mnc_test_001 mnc_test_002
80 edhill 1.1 echo "running mnc_test_001 ..."
81 edhill 1.7 ./mnc_test_001 > t_out_001 && ncdump test_001.nc | head -20
82 edhill 1.8 ./mnc_test_002 > t_out_002 && tail -15 t_out_002
83 edhill 1.1
84 edhill 1.3 mnc_test_001: $(ALL_TEST) $(FILES) $(OBJECTS) mnc_test_001.o
85 edhill 1.1 $(FC) -o mnc_test_001 mnc_test_001.o $(OBJECTS) $(TEST_OBJECTS) -lnetcdf
86    
87 edhill 1.7 mnc_test_002: $(ALL_TEST) $(FILES) $(OBJECTS) mnc_test_002.o
88     $(FC) -o mnc_test_002 mnc_test_002.o $(OBJECTS) $(TEST_OBJECTS) -lnetcdf
89    
90 edhill 1.5 CLEAN:
91     @make clean
92 edhill 1.13 -rm -f mnc_netcdf_stubs.c
93 edhill 1.5 Clean:
94     @make clean
95 edhill 1.1 clean:
96     -rm -f *.o $(TEST_LINKS) $(TEST_HEADERS) $(TEST_FILES) $(TEST_OBJECTS)
97 edhill 1.7 -rm -f mnc_test_???.F mnc_test_??? test_???.nc t_out_???
98 edhill 1.9 -rm -f $(TEMPLATE_FILES) mnc_id_header.h
99 edhill 1.13 -rm -f mnc_netcdf_stubs.o
100    

  ViewVC Help
Powered by ViewVC 1.1.22