diff --git a/CMakeLists.txt b/CMakeLists.txt index d5fa003..7e852d3 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,7 +37,7 @@ ecbuild_declare_project() ecbuild_find_python( REQUIRED NO_LIBS ) ### Fortran ... -ecbuild_enable_fortran( REQUIRED MODULE_DIRECTORY ${CMAKE_BINARY_DIR}/module ) +ecbuild_enable_fortran( REQUIRED MODULE_DIRECTORY ${PROJECT_BINARY_DIR}/module ) ecbuild_check_fortran( FEATURES finalization ) @@ -85,12 +85,8 @@ ecbuild_add_option( FEATURE ECKIT ecbuild_add_cxx11_flags() -if( HAVE_ECKIT ) - set( ECKIT_LIBRARIES eckit eckit_mpi ) - - if( NOT ECKIT_HAVE_MPI ) - ecbuild_warn("ecKit has been compiled without MPI. This causes fckit to not be able to run parallel executables.") - endif() +if( HAVE_ECKIT AND NOT ECKIT_HAVE_MPI ) + ecbuild_warn("ecKit has been compiled without MPI. This causes fckit to not be able to run parallel executables.") endif() ################################################################################################ @@ -110,8 +106,6 @@ set( FCTEST_GENERATOR ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/tools/fct include( fckit_preprocess_fypp ) include( add_fctest ) -include_directories( ${FCKIT_INCLUDE_DIRS} ) - set( HAVE_FCTEST 1) add_subdirectory( src ) add_subdirectory( doc ) @@ -122,10 +116,11 @@ add_subdirectory( doc ) ecbuild_print_summary() ################################################################################################ -if(ECBUILD_INSTALL_FORTRAN_MODULES) - install(DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/${CMAKE_CFG_INTDIR} DESTINATION ${INSTALL_INCLUDE_DIR} ) +if( ECBUILD_INSTALL_FORTRAN_MODULES ) + install( DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/${CMAKE_CFG_INTDIR} + DESTINATION module/fckit + COMPONENT modules ) endif() - if( NOT PROJECT_NAME STREQUAL CMAKE_PROJECT_NAME ) set( FCTEST_GENERATOR ${FCTEST_GENERATOR} PARENT_SCOPE ) set( FYPP ${FYPP} PARENT_SCOPE ) diff --git a/VERSION.cmake b/VERSION.cmake index ab9eb4a..479f789 100644 --- a/VERSION.cmake +++ b/VERSION.cmake @@ -1 +1 @@ -set( ${PROJECT_NAME}_VERSION_STR "0.6.1" ) +set( ${PROJECT_NAME}_VERSION_STR "0.6.2" ) diff --git a/src/fckit/CMakeLists.txt b/src/fckit/CMakeLists.txt index be60609..b5c7831 100644 --- a/src/fckit/CMakeLists.txt +++ b/src/fckit/CMakeLists.txt @@ -7,7 +7,7 @@ # does it submit to any jurisdiction. configure_file(fckit.h.in fckit.h) -install( FILES ${CMAKE_CURRENT_BINARY_DIR}/fckit.h DESTINATION ${INSTALL_INCLUDE_DIR}/fckit ) +install( FILES ${CMAKE_CURRENT_BINARY_DIR}/fckit.h DESTINATION include/fckit ) set( source_files_properties fckit.h.in PROPERTIES HEADER_FILE_ONLY TRUE ) set( FCKIT_HAVE_ECKIT 0 ) @@ -83,8 +83,6 @@ ecbuild_add_library( TARGET fckit PRIVATE_INCLUDES ${ECKIT_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR} - LIBS - ${ECKIT_LIBRARIES} DEFINITIONS ${FCKIT_DEFINITIONS} @@ -94,9 +92,23 @@ ecbuild_add_library( TARGET fckit Log.h Main.h - HEADER_DESTINATION ${INSTALL_INCLUDE_DIR}/fckit + HEADER_DESTINATION include/fckit TYPE ${fckit_type} ) +target_include_directories( fckit PUBLIC + $ + $ + $ + $ + $ +) + +if( ecbuild_VERSION ) # defined for ecbuild 3 + target_link_libraries( fckit PRIVATE eckit eckit_mpi ) +else() + target_link_libraries( fckit eckit eckit_mpi ) +endif() + fckit_target_preprocess_fypp( fckit ) diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt index 0e02a35..cb266a7 100644 --- a/src/tests/CMakeLists.txt +++ b/src/tests/CMakeLists.txt @@ -79,7 +79,7 @@ ecbuild_add_test( TARGET fckit_test_configuration_cpp DEFINITIONS ${FCKIT_DEFINITIONS} INCLUDES ${ECKIT_INCLUDE_DIRS} CONDITION HAVE_ECKIT - LIBS fckit ) + LIBS fckit eckit eckit_mpi ) if( HAVE_ECKIT ) if( NOT (CMAKE_VERSION VERSION_LESS 3.1) ) @@ -93,7 +93,7 @@ ecbuild_add_test( TARGET fckit_test_cpp INCLUDES ${ECKIT_INCLUDE_DIRS} ENVIRONMENT "DEBUG=1" CONDITION HAVE_ECKIT - LIBS fckit ) + LIBS fckit eckit eckit_mpi ) if( CMAKE_Fortran_COMPILER_ID MATCHES "PGI" ) set( NO_MAIN "-Mnomain" )