tFindPNetCDF.cmake - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch) (HTM) git clone git://src.adamsgaard.dk/pism (DIR) Log (DIR) Files (DIR) Refs (DIR) LICENSE --- tFindPNetCDF.cmake (1667B) --- 1 # - Find PNetCDF 2 # Find the native PNetCDF includes and library 3 # 4 # PNETCDF_INCLUDES - where to find netcdf.h, etc 5 # PNETCDF_LIBRARIES - Link these libraries when using NetCDF 6 # PNETCDF_FOUND - True if PNetCDF was found 7 # 8 # Normal usage would be: 9 # find_package (PNetCDF REQUIRED) 10 # target_link_libraries (uses_pnetcdf ${PNETCDF_LIBRARIES}) 11 12 if (PNETCDF_INCLUDES AND PNETCDF_LIBRARIES) 13 # Already in cache, be silent 14 set (PNETCDF_FIND_QUIETLY TRUE) 15 endif (PNETCDF_INCLUDES AND PNETCDF_LIBRARIES) 16 17 find_path (PNETCDF_INCLUDES pnetcdf.h 18 HINTS "${PNETCDF_ROOT}/include" "$ENV{PNETCDF_ROOT}/include") 19 20 string(REGEX REPLACE "/include/?$" "/lib" 21 PNETCDF_LIB_HINT ${PNETCDF_INCLUDES}) 22 23 find_library (PNETCDF_LIBRARIES 24 NAMES pnetcdf 25 HINTS ${PNETCDF_LIB_HINT}) 26 27 if ((NOT PNETCDF_LIBRARIES) OR (NOT PNETCDF_INCLUDES)) 28 message(STATUS "Trying to find PNetCDF using LD_LIBRARY_PATH (we're desperate)...") 29 30 file(TO_CMAKE_PATH "$ENV{LD_LIBRARY_PATH}" LD_LIBRARY_PATH) 31 32 find_library(PNETCDF_LIBRARIES 33 NAMES pnetcdf 34 HINTS ${LD_LIBRARY_PATH}) 35 36 if (PNETCDF_LIBRARIES) 37 get_filename_component(PNETCDF_LIB_DIR ${PNETCDF_LIBRARIES} PATH) 38 string(REGEX REPLACE "/lib/?$" "/include" 39 PNETCDF_H_HINT ${PNETCDF_LIB_DIR}) 40 41 find_path (PNETCDF_INCLUDES pnetcdf.h 42 HINTS ${PNETCDF_H_HINT} 43 DOC "Path to pnetcdf.h") 44 endif() 45 endif() 46 47 # handle the QUIETLY and REQUIRED arguments and set PNETCDF_FOUND to TRUE if 48 # all listed variables are TRUE 49 include (FindPackageHandleStandardArgs) 50 find_package_handle_standard_args (PNetCDF DEFAULT_MSG PNETCDF_LIBRARIES PNETCDF_INCLUDES) 51 52 mark_as_advanced (PNETCDF_LIBRARIES PNETCDF_INCLUDES)