1 |
guez |
329 |
cmake_minimum_required(VERSION 3.14) |
2 |
|
|
project(LMDZE Fortran) |
3 |
|
|
|
4 |
|
|
find_path(netcdf95_INCLUDE_DIR netcdf95.mod) |
5 |
|
|
find_library(netcdf95_LIBRARY netcdf95) |
6 |
|
|
|
7 |
|
|
find_path(netcdff_INCLUDE_DIR netcdf.mod) |
8 |
|
|
find_library(netcdff_LIBRARY netcdff) |
9 |
|
|
|
10 |
|
|
find_path(numer_rec_95_INCLUDE_DIR numer_rec_95.mod) |
11 |
|
|
find_library(numer_rec_95_LIBRARY numer_rec_95) |
12 |
|
|
|
13 |
|
|
find_path(jumble_INCLUDE_DIR jumble.mod) |
14 |
|
|
find_library(jumble_LIBRARY jumble) |
15 |
|
|
|
16 |
|
|
find_path(nr_util_INCLUDE_DIR nr_util.mod) |
17 |
|
|
find_library(nr_util_LIBRARY nr_util) |
18 |
|
|
|
19 |
|
|
set(library_list ${netcdf95_LIBRARY} ${netcdff_LIBRARY} |
20 |
|
|
${NetCDF_LIBRARY} ${numer_rec_95_LIBRARY} ${jumble_LIBRARY} |
21 |
|
|
${nr_util_LIBRARY}) |
22 |
|
|
|
23 |
|
|
add_library(LMDZE_objects OBJECT dimensions.F90) |
24 |
|
|
|
25 |
|
|
set(CPP_IIM 16 CACHE STRING "iim, number of longitudes") |
26 |
guez |
330 |
set(CPP_JJM 12 CACHE STRING "jjm, number of latitudes") |
27 |
guez |
329 |
set(CPP_LLM 11 CACHE STRING "llm, number of vertical levels") |
28 |
|
|
|
29 |
guez |
333 |
message(STATUS "Set iim to ${CPP_IIM}, jjm to ${CPP_JJM}, llm to ${CPP_LLM}") |
30 |
|
|
|
31 |
|
|
target_compile_definitions(LMDZE_objects PRIVATE CPP_IIM=${CPP_IIM} |
32 |
|
|
CPP_JJM=${CPP_JJM} CPP_LLM=${CPP_LLM}) |
33 |
|
|
|
34 |
guez |
329 |
target_include_directories(LMDZE_objects PRIVATE ${netcdff_INCLUDE_DIR} |
35 |
|
|
${netcdf95_INCLUDE_DIR}) |
36 |
|
|
|
37 |
|
|
foreach(my_dir dyn3d filtrez IOIPSL misc phylmd) |
38 |
|
|
include(${my_dir}/CMakeLists.txt) |
39 |
|
|
endforeach(my_dir) |
40 |
|
|
|
41 |
|
|
include(ConfigureCompilerFlags) |
42 |
|
|
include(TAGS) |