1 | ############################################################################### |
---|
2 | # |
---|
3 | # Makefile for flex_extract, Fortran code to calculate etadot |
---|
4 | # |
---|
5 | # Copyright: Leopold Haimberger, Petra Seibert |
---|
6 | # SPDX-License-Identifier: GPL-2.0 |
---|
7 | # |
---|
8 | # Version for a machine with grib_api installed on standard paths |
---|
9 | # compiled for fast runs |
---|
10 | # |
---|
11 | ############################################################################### |
---|
12 | |
---|
13 | |
---|
14 | GRIB_API_INCLUDE_DIR=/usr/include |
---|
15 | GRIB_API_LIB= -Bstatic -lgrib_api_f77 -lgrib_api_f90 -lgrib_api -Bdynamic -lm -ljasper |
---|
16 | EMOSLIB=-lemosR64 |
---|
17 | |
---|
18 | LIB = $(GRIB_API_LIB) $(EMOSLIB) |
---|
19 | |
---|
20 | F90 = gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian |
---|
21 | |
---|
22 | F90FLAGS = -I. -I$(GRIB_API_INCLUDE_DIR) |
---|
23 | |
---|
24 | OPT = -O3 |
---|
25 | |
---|
26 | BINDIR = . |
---|
27 | EXE = calc_etadot_fast.out |
---|
28 | |
---|
29 | .f.o: |
---|
30 | $(F90) -c $(F90FLAGS) $(OPT) $*.f |
---|
31 | .f90.o: |
---|
32 | $(F90) -c $(F90FLAGS) $(OPT) $*.f90 |
---|
33 | |
---|
34 | all: ${EXE} |
---|
35 | |
---|
36 | clean: |
---|
37 | rm *.o *.mod #${EXE} |
---|
38 | |
---|
39 | preconvert.o: preconvert.f90 |
---|
40 | $(F90) -c $(OPT) $(F90FLAGS) preconvert.f90 |
---|
41 | |
---|
42 | phgrreal.o: phgrreal.f |
---|
43 | $(F90) -c $(OPT) phgrreal.f |
---|
44 | |
---|
45 | rwGRIB2.o: rwGRIB2.f90 |
---|
46 | $(F90) -c $(OPT) $(F90FLAGS) rwGRIB2.f90 |
---|
47 | |
---|
48 | grphreal.o: grphreal.f |
---|
49 | $(F90) -c $(OPT) grphreal.f |
---|
50 | |
---|
51 | ftrafo.o: ftrafo.f |
---|
52 | $(F90) -c $(OPT) ftrafo.f |
---|
53 | |
---|
54 | $(BINDIR)/${EXE}: phgrreal.o grphreal.o ftrafo.o rwGRIB2.o posnam.o preconvert.o |
---|
55 | $(F90) $(OPT) -o $(BINDIR)/${EXE} ftrafo.o phgrreal.o grphreal.o rwGRIB2.o posnam.o preconvert.o ${LIB} |
---|
56 | |
---|
57 | |
---|
58 | ############################################################################### |
---|
59 | # |
---|
60 | # End of the Makefile |
---|
61 | # |
---|
62 | ############################################################################### |
---|