From b84c95062eeb09936e1d6b5295fe81a7cf657da1 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Mon, 20 Nov 2023 15:13:49 +0000 Subject: [PATCH] Test for ip v4+ for new ipolates interface. #18 --- src/netcdf_io/interp_inc.fd/CMakeLists.txt | 7 ++++++- src/netcdf_io/interp_inc.fd/{driver.f90 => driver.F90} | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) rename src/netcdf_io/interp_inc.fd/{driver.f90 => driver.F90} (99%) diff --git a/src/netcdf_io/interp_inc.fd/CMakeLists.txt b/src/netcdf_io/interp_inc.fd/CMakeLists.txt index 1c2d5af1..634495eb 100644 --- a/src/netcdf_io/interp_inc.fd/CMakeLists.txt +++ b/src/netcdf_io/interp_inc.fd/CMakeLists.txt @@ -4,13 +4,18 @@ elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fconvert=big-endian -ffree-line-length-0 -ffast-math -fno-second-underscore -frecord-marker=4") endif() -add_executable(interp_inc.x driver.f90) +add_executable(interp_inc.x driver.F90) target_link_libraries(interp_inc.x PRIVATE NetCDF::NetCDF_Fortran) target_link_libraries(interp_inc.x PRIVATE MPI::MPI_Fortran) target_link_libraries(interp_inc.x PRIVATE w3emc::w3emc_d) target_link_libraries(interp_inc.x PRIVATE ip::ip_d) target_link_libraries(interp_inc.x PRIVATE sp::sp_d) +if(ip_VERSION VERSION_GREATER_EQUAL 4.0.0) + message("setting ip_v4") + target_compile_definitions(interp_inc.x PRIVATE "IP_V4") +endif() + # Install executable targets install(TARGETS interp_inc.x RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) diff --git a/src/netcdf_io/interp_inc.fd/driver.f90 b/src/netcdf_io/interp_inc.fd/driver.F90 similarity index 99% rename from src/netcdf_io/interp_inc.fd/driver.f90 rename to src/netcdf_io/interp_inc.fd/driver.F90 index 03a563fe..d009816a 100644 --- a/src/netcdf_io/interp_inc.fd/driver.f90 +++ b/src/netcdf_io/interp_inc.fd/driver.F90 @@ -24,7 +24,9 @@ program interp_inc use netcdf use mpi +#ifdef IP_V4 use ip_mod, only: ipolates, ipolatev +#endif implicit none @@ -32,6 +34,9 @@ program interp_inc ! Declare externals external :: w3tagb, netcdf_err, splat, w3tage +#ifndef IP_V4 + external :: ipolates, ipolatev +#endif character(len=128) :: outfile, infile character(len=11) :: records(num_recs)