Merge branch 'release-v4.6.0'
[WPS.git] / ungrib / src / Makefile
blob79417235d4a65b196894eb04aa2d836cc05b93c1
1 include ../../configure.wps
3 LIBTARGET = pgu
4 EXE = ungrib.exe \
5 g1print.exe g2print.exe
7 OBJS1 = misc_definitions_module.o debug_cio.o module_debug.o module_stringutil.o \
8 table.o module_datarray.o gridinfo.o new_storage.o filelist.o \
9 ungrib.o output.o rrpr.o \
10 rd_grib1.o file_delete.o datint.o rd_grib2.o
12 OBJS2 = build_hdate.o geth_newdate.o geth_idts.o swap.o table.o module_stringutil.o \
13 parse_table.o gbytesys.o gribcode.o read_namelist.o cio.o
15 all: lib$(LIBTARGET).a $(EXE)
17 ungrib.exe: $(OBJS1) lib$(LIBTARGET).a
18 $(RM) $@
19 if [ -z $(COMPILING_ON_CYGWIN_NT) ] ; then \
20 $(FC) -o $@ $(LDFLAGS) $(OBJS1) \
21 -L./ngl -lw3 -lg2_4 \
22 $(COMPRESSION_LIBS) \
23 -L. -l$(LIBTARGET) ; \
24 else \
25 $(FC) -o $@ $(LDFLAGS) $(OBJS1) \
26 ./ngl/w3/libw3.a ./ngl/g2/libg2_4.a \
27 $(COMPRESSION_LIBS) \
28 lib$(LIBTARGET).a ; \
32 lib$(LIBTARGET).a: $(OBJS2)
33 $(RM) lib$(LIBTARGET).a
34 $(AR) lib$(LIBTARGET).a $(OBJS2)
35 $(RANLIB) lib$(LIBTARGET).a
37 g1print.exe: g1print.o gribcode.o module_debug.o debug_cio.o lib$(LIBTARGET).a
38 $(FC) -o $(@) $(LDFLAGS) g1print.o gribcode.o module_debug.o debug_cio.o lib$(LIBTARGET).a
40 g2print.exe: filelist.o gridinfo.o g2print.o lib$(LIBTARGET).a
41 if [ -z $(COMPILING_ON_CYGWIN_NT) ] ; then \
42 $(FC) -o $(@) $(LDFLAGS) g2print.o \
43 filelist.o gridinfo.o \
44 -L. -l$(LIBTARGET) \
45 -L./ngl -lw3 -lg2_4 \
46 $(COMPRESSION_LIBS) ; \
47 else \
48 $(FC) -o $(@) $(LDFLAGS) g2print.o \
49 filelist.o gridinfo.o \
50 lib$(LIBTARGET).a \
51 ./ngl/w3/libw3.a ./ngl/g2/libg2_4.a \
52 $(COMPRESSION_LIBS) ; \
55 g2print.o: table.o gridinfo.o filelist.o module_datarray.o \
56 ngl/g2/gribmod.o ngl/g2/params.o g2print.F
57 $(CPP) $(CPPFLAGS) $*.F > $*.f90
58 $(FC) -c $(FFLAGS) $(FCSUFFIX) $(FCCOMPAT) $*.f90 -I. -I./ngl/g2
59 # $(RM) $*.f90
61 rd_grib2.o: ngl/g2/gribmod.o module_debug.o table.o gridinfo.o ngl/g2/params.o new_storage.o \
62 rd_grib2.F
63 $(CPP) $(CPPFLAGS) $*.F > $*.f90
64 $(FC) -c $(F77FLAGS) $(FCSUFFIX) $(FCCOMPAT) $*.f90 -I. -I./ngl/g2
65 # $(RM) $*.f90
67 datint.o: misc_definitions_module.o module_debug.o gridinfo.o new_storage.o datint.F
69 module_debug.o: debug_cio.o module_debug.F
71 misc_definitions_module.o: misc_definitions_module.F
73 file_delete.o: misc_definitions_module.o file_delete.F
75 new_storage.o: gridinfo.o new_storage.F
77 output.o: misc_definitions_module.o module_debug.o table.o gridinfo.o module_stringutil.o new_storage.o filelist.o output.F
79 parse_table.o: module_debug.o table.o module_stringutil.o parse_table.F
81 rd_grib1.o: module_debug.o table.o gridinfo.o module_datarray.o rd_grib1.F
83 gribcode.o: module_debug.o gribcode.F
85 rrpr.o: misc_definitions_module.o module_debug.o filelist.o gridinfo.o module_stringutil.o table.o new_storage.o rrpr.F
87 read_namelist.o: misc_definitions_module.o module_debug.o read_namelist.F
89 .F.o:
90 $(CPP) $(CPPFLAGS) $(FDEFS) $< > $*.f90
91 $(FC) -c $(FFLAGS) $(FCCOMPAT) $*.f90
92 # $(RM) $*.f90
94 .c.o:
95 $(RM) $@
96 $(CC) $(CPPFLAGS) $(CFLAGS) -c $<
99 clean:
100 $(RM) *.o *.i *.f90 *.mod *.M lib$(LIBTARGET).a *exe
102 superclean: clean