1 |
# These are compiler dependent macros, meant to be included in the |
# These are compiler dependent macros, meant to be included in the |
2 |
# makefile for LMDZE. |
# makefile for LMDZE. |
3 |
|
|
4 |
FC = gfortran |
netcdf_inc_dir = /usr/include |
5 |
|
netcdf_lib_dir = |
6 |
|
|
7 |
netcdf_inc_dir = /user/guez_local/include /user/guez_local/include/Gfortran |
numer_rec_95_dir = ${HOME}/Desktop/lib/Numer_Rec_95_debug |
8 |
netcdf_lib_dir = /user/guez_local/lib |
nr_util_dir = ${HOME}/Desktop/lib/NR_util_debug |
9 |
|
netcdf95_dir = ${HOME}/Desktop/lib/NetCDF95_debug |
10 |
|
jumble_dir = ${HOME}/Desktop/lib/Jumble_debug |
11 |
|
|
12 |
numer_rec_dir = /user/guez_local/lib/Numer_Rec_Lionel_b |
lib_dir_list = ${netcdf_lib_dir} ${numer_rec_95_dir} ${netcdf95_dir} ${nr_util_dir} ${jumble_dir} |
|
nr_util_dir = /user/guez_local/lib/NR_util_j |
|
|
netcdf95_dir = /user/guez_local/lib/NetCDF95_gfortran |
|
|
jumble_dir = /user/guez_local/lib/Jumble |
|
13 |
|
|
14 |
# Include flags: |
# Include flags: |
15 |
inc_flags = $(addprefix -I, ${libf_dir} ${libf_dir}/phylmd ${netcdf_inc_dir} ${numer_rec_dir} ${netcdf95_dir} ${nr_util_dir} ${jumble_dir}) |
FFLAGS = $(addprefix -I, ${netcdf_inc_dir} ${numer_rec_95_dir} ${netcdf95_dir} ${nr_util_dir} ${jumble_dir}) |
16 |
|
|
17 |
# Other flags which do not affect run time performance: |
# Fortran language options: |
18 |
lang_flags = -ffree-form -frange-check -std=f95 -pedantic-errors -Wall -Wunderflow -Wextra |
FFLAGS += -ffree-form -std=f95 |
19 |
|
|
20 |
# Flags which affect run time performance: |
# Error and warning options: |
21 |
perf_flags = -fbacktrace -ffpe-trap=invalid,zero,overflow -fbounds-check -g3 -O0 -fstack-protector-all |
FFLAGS += -fmax-errors=1 -pedantic-errors -Wall -Wcharacter-truncation -Wunderflow -Wunreachable-code -Wno-conversion |
22 |
|
|
23 |
FFLAGS = ${inc_flags} ${perf_flags} |
# Debugging options: |
24 |
F90FLAGS = ${inc_flags} ${lang_flags} ${perf_flags} |
FFLAGS += -ffpe-trap=invalid,zero,overflow -fbacktrace -fdump-core -g |
25 |
|
|
26 |
LDLIBS = $(addprefix -L, ${netcdf_lib_dir} ${numer_rec_dir} ${netcdf95_dir} ${nr_util_dir} ${jumble_dir}) -ljumble -lnetcdf95 -lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lnumer_rec -lnr_util |
# Code generation options: |
27 |
|
FFLAGS += -fcheck=bounds -fcheck=do -fcheck=mem -fcheck=pointer -fcheck=recursion -finit-real=SNAN |
28 |
|
|
29 |
|
# Optimization options: |
30 |
|
FFLAGS += -O0 |
31 |
|
|
32 |
|
# Hardware model options: |
33 |
|
FFLAGS += -mcmodel=medium |
34 |
|
|
35 |
|
comma = , |
36 |
|
|
37 |
|
LDLIBS = $(addprefix -L, ${lib_dir_list}) -lnetcdf95 -lnetcdff -lnetcdf -lnumer_rec_95 -ljumble -lnr_util $(addprefix -Wl${comma}-rpath${comma}, ${lib_dir_list}) |
38 |
|
|
39 |
|
version_flag = --version |