1 | SHELL = /bin/bash |
---|
2 | #------------------------------------------------------------------------------------------------------------- |
---|
3 | EXEC_BIN = vinterp_abl_frc.exe |
---|
4 | EXEC_BIN2 = uvg_hpg_abl_frc.exe |
---|
5 | EXEC_BIN3 = drown_abl_frc.exe |
---|
6 | |
---|
7 | NETCDF := $(NETCDF_DIR) |
---|
8 | NETCDF_LIB := -L$(NETCDF)/lib -lnetcdf -lnetcdff |
---|
9 | NETCDF_INC := -I$(NETCDF)/include |
---|
10 | |
---|
11 | #FC := gfortran |
---|
12 | #FFLAGS := -fdefault-real-8 -fdefault-double-8 -O3 $(NETCDF_INC) |
---|
13 | #FFLAGS := -g -O0 -fcheck=bounds -Wall -Wextra -fbacktrace -finit-real=snan -finit-integer=8888 -finit-character=90 $(NETCDF_INC) |
---|
14 | |
---|
15 | FC := ifort |
---|
16 | FFLAGS := -check noarg_temp_created -autodouble -O3 $(NETCDF_INC) |
---|
17 | #FFLAGS := -check noarg_temp_created -autodouble -O0 -g -traceback -check all $(NETCDF_INC) |
---|
18 | |
---|
19 | #--------------------------------------------------------------------- |
---|
20 | SRC_DIR = $(PWD) |
---|
21 | OBJ_DIR = $(PWD) |
---|
22 | FINAL_OBJS = $(OBJ_DIR)/main_vinterp.o $(OBJ_DIR)/module_io.o $(OBJ_DIR)/module_interp.o $(OBJ_DIR)/module_grid.o |
---|
23 | FINAL_OBJS2 = $(OBJ_DIR)/main_uvg_hpg.o $(OBJ_DIR)/module_io.o $(OBJ_DIR)/module_grid.o |
---|
24 | FINAL_OBJS3 = $(OBJ_DIR)/main_drown.o $(OBJ_DIR)/module_io.o $(OBJ_DIR)/module_grid.o |
---|
25 | #--------------------------------------------------------------------- |
---|
26 | |
---|
27 | all: | $(EXEC_BIN) $(EXEC_BIN2) $(EXEC_BIN3) |
---|
28 | @echo |
---|
29 | @echo =================================================== |
---|
30 | @echo ABL Preprocessing tools for ECMWF data: OK |
---|
31 | @echo =================================================== |
---|
32 | @echo |
---|
33 | |
---|
34 | clean: |
---|
35 | $(RM) $(OBJ_DIR)/*.o *.mod |
---|
36 | $(RM) $(EXEC_BIN) $(EXEC_BIN2) $(EXEC_BIN3) |
---|
37 | |
---|
38 | $(EXEC_BIN): $(FINAL_OBJS) |
---|
39 | $(FC) -o $(EXEC_BIN) $(FINAL_OBJS) $(NETCDF_LIB) |
---|
40 | |
---|
41 | $(EXEC_BIN2): $(FINAL_OBJS2) |
---|
42 | $(FC) -o $(EXEC_BIN2) $(FINAL_OBJS2) $(NETCDF_LIB) |
---|
43 | |
---|
44 | $(EXEC_BIN3): $(FINAL_OBJS3) |
---|
45 | $(FC) -o $(EXEC_BIN3) $(FINAL_OBJS3) $(NETCDF_LIB) |
---|
46 | |
---|
47 | # Rules |
---|
48 | .DEFAULT: |
---|
49 | |
---|
50 | .SUFFIXES: |
---|
51 | |
---|
52 | .PRECIOUS: $(SRC_DIR)/%.F90 |
---|
53 | |
---|
54 | $(OBJ_DIR)/%.o : $(SRC_DIR)/%.F90 |
---|
55 | $(FC) $(FFLAGS) -o $@ -c $< |
---|
56 | |
---|
57 | $(OBJ_DIR)/main_vinterp.o: $(OBJ_DIR)/module_grid.o $(OBJ_DIR)/module_io.o $(OBJ_DIR)/module_interp.o |
---|
58 | $(OBJ_DIR)/main_uvg_hpg.o: $(OBJ_DIR)/module_grid.o $(OBJ_DIR)/module_io.o |
---|
59 | $(OBJ_DIR)/main_drown.o: $(OBJ_DIR)/module_grid.o $(OBJ_DIR)/module_io.o |
---|
60 | $(OBJ_DIR)/module_io.o: |
---|
61 | $(OBJ_DIR)/module_interp.o: |
---|
62 | $(OBJ_DIR)/module_grid.o: $(OBJ_DIR)/module_io.o |
---|