forked from lijiext/lammps
49 lines
2.0 KiB
CMake
49 lines
2.0 KiB
CMake
# - 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()
|