# - Find liblammps # Find the native liblammps headers and libraries. # # The following variables will set: # LAMMPS_INCLUDE_DIRS - where to find lammps/library.h, etc. # LAMMPS_LIBRARIES - List of libraries when using lammps. # LAMMPS_API_DEFINES - lammps library api defines # LAMMPS_VERSION - lammps library version # LAMMPS_FOUND - True if liblammps found. # # In addition a LAMMPS::LAMMPS imported target is getting created. # # LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator # http://lammps.sandia.gov, Sandia National Laboratories # Steve Plimpton, sjplimp@sandia.gov # # Copyright (2003) Sandia Corporation. Under the terms of Contract # DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains # certain rights in this software. This software is distributed under # the GNU General Public License. # # See the README file in the top-level LAMMPS directory. # find_package(PkgConfig) pkg_check_modules(PC_LAMMPS liblammps@LAMMPS_LIB_SUFFIX@) find_path(LAMMPS_INCLUDE_DIR lammps/library.h HINTS ${PC_LAMMPS_INCLUDE_DIRS} @CMAKE_INSTALL_FULL_INCLUDEDIR@) set(LAMMPS_VERSION @LAMMPS_VERSION@) set(LAMMPS_API_DEFINES @LAMMPS_API_DEFINES@) find_library(LAMMPS_LIBRARY NAMES lammps@LAMMPS_LIB_SUFFIX@ HINTS ${PC_LAMMPS_LIBRARY_DIRS} @CMAKE_INSTALL_FULL_LIBDIR@) set(LAMMPS_INCLUDE_DIRS "${LAMMPS_INCLUDE_DIR}") set(LAMMPS_LIBRARIES "${LAMMPS_LIBRARY}") include(FindPackageHandleStandardArgs) # handle the QUIETLY and REQUIRED arguments and set LAMMPS_FOUND to TRUE # if all listed variables are TRUE find_package_handle_standard_args(LAMMPS REQUIRED_VARS LAMMPS_LIBRARY LAMMPS_INCLUDE_DIR VERSION_VAR LAMMPS_VERSION) mark_as_advanced(LAMMPS_INCLUDE_DIR LAMMPS_LIBRARY) if(LAMMPS_FOUND AND NOT TARGET LAMMPS::LAMMPS) add_library(LAMMPS::LAMMPS UNKNOWN IMPORTED) set_target_properties(LAMMPS::LAMMPS PROPERTIES IMPORTED_LOCATION "${LAMMPS_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${LAMMPS_INCLUDE_DIR}" INTERFACE_COMPILE_DEFINITIONS "${LAMMPS_API_DEFINES}") endif()