# ---------------------------------------------------------------
# Programmer(s): Radu Serban @ LLNL
# ---------------------------------------------------------------
# SUNDIALS Copyright Start
# Copyright (c) 2002-2020, Lawrence Livermore National Security
# and Southern Methodist University.
# All rights reserved.
#
# See the top-level LICENSE and NOTICE files for details.
#
# SPDX-License-Identifier: BSD-3-Clause
# SUNDIALS Copyright End
# ---------------------------------------------------------------
# CMakeLists.txt file for the petsc NVECTOR library
# ---------------------------------------------------------------

install(CODE "MESSAGE(\"\nInstall NVECTOR_PETSC\n\")")

if(MPI_C_COMPILER)
  # use MPI wrapper as the compiler
  set(CMAKE_C_COMPILER ${MPI_C_COMPILER})
else()
  # add MPI_INCLUDE_PATH to include directories
  include_directories(${MPI_INCLUDE_PATH})
endif()

# Add variable nvecpetsc_HEADERS with the exported NVECPETSC header files
set(nvecpetsc_HEADERS
  ${SUNDIALS_SOURCE_DIR}/include/nvector/nvector_petsc.h
  )

# Create the library
sundials_add_library(sundials_nvecpetsc
  SOURCES
    nvector_petsc.c
  OBJECT_LIBRARIES
    sundials_generic_obj
  LINK_LIBRARIES
    PUBLIC SUNDIALS::PETSC_VEC
  OUTPUT_NAME
    sundials_nvecpetsc
  VERSION
    ${nveclib_VERSION}
  SOVERSION
    ${nveclib_SOVERSION}
)

# Install the NVECPETSC header files
install(FILES ${nvecpetsc_HEADERS} DESTINATION include/nvector)

#
message(STATUS "Added NVECTOR_PETSC module")
