/[lmdze]/trunk/CMakeLists.txt
ViewVC logotype

Annotation of /trunk/CMakeLists.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 329 - (hide annotations)
Thu Jun 13 17:29:13 2019 UTC (4 years, 11 months ago) by guez
File MIME type: text/plain
File size: 1437 byte(s)
Add `CMakeLists.txt` files.
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     target_compile_definitions(LMDZE_objects PRIVATE CPP_IIM=${CPP_IIM})
27     message(STATUS "Set iim to ${CPP_IIM}")
28    
29     set(CPP_JJM 16 CACHE STRING "jjm, number of latitudes")
30     target_compile_definitions(LMDZE_objects PRIVATE CPP_JJM=${CPP_JJM})
31     message(STATUS "Set jjm to ${CPP_JJM}")
32    
33     set(CPP_LLM 11 CACHE STRING "llm, number of vertical levels")
34     target_compile_definitions(LMDZE_objects PRIVATE CPP_LLM=${CPP_LLM})
35     message(STATUS "Set llm to ${CPP_LLM}")
36    
37     target_include_directories(LMDZE_objects PRIVATE ${netcdff_INCLUDE_DIR}
38     ${netcdf95_INCLUDE_DIR})
39    
40     foreach(my_dir dyn3d filtrez IOIPSL misc phylmd)
41     include(${my_dir}/CMakeLists.txt)
42     endforeach(my_dir)
43    
44     include(ConfigureCompilerFlags)
45     include(TAGS)

  ViewVC Help
Powered by ViewVC 1.1.21