Skip to content
Snippets Groups Projects
Verified Commit cc476439 authored by Lars Bilke's avatar Lars Bilke
Browse files

[cmake] Replaced petsc interface target by PkgConfig::PETSC.

parent 6d4af2e9
No related branches found
No related tags found
No related merge requests found
...@@ -10,7 +10,7 @@ target_link_libraries( ...@@ -10,7 +10,7 @@ target_link_libraries(
PUBLIC BaseLib GeoLib NumLib PUBLIC BaseLib GeoLib NumLib
$<$<TARGET_EXISTS:VTK::ParallelMPI>:VTK::ParallelMPI> $<$<TARGET_EXISTS:VTK::ParallelMPI>:VTK::ParallelMPI>
PRIVATE CMakeInfoLib MathLib MeshLib MeshGeoToolsLib MeshToolsLib pybind11::pybind11 PRIVATE CMakeInfoLib MathLib MeshLib MeshGeoToolsLib MeshToolsLib pybind11::pybind11
$<$<BOOL:${OGS_USE_PETSC}>:petsc> $<$<BOOL:${OGS_USE_PETSC}>:PkgConfig::PETSC>
) )
if(OGS_BUILD_CLI OR OGS_BUILD_UTILS OR OGS_BUILD_TESTING) if(OGS_BUILD_CLI OR OGS_BUILD_UTILS OR OGS_BUILD_TESTING)
......
...@@ -16,7 +16,7 @@ target_link_libraries( ...@@ -16,7 +16,7 @@ target_link_libraries(
$<$<BOOL:${MSVC}>:WinMM> # needed for timeGetTime $<$<BOOL:${MSVC}>:WinMM> # needed for timeGetTime
$<$<BOOL:${OGS_BUILD_GUI}>:Qt5::Xml> $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::Xml>
$<$<BOOL:${OGS_BUILD_GUI}>:Qt5::XmlPatterns> $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::XmlPatterns>
$<$<BOOL:${OGS_USE_PETSC}>:petsc> $<$<BOOL:${OGS_USE_PETSC}>:PkgConfig::PETSC>
PRIVATE xmlpatch PRIVATE xmlpatch
) )
......
...@@ -31,7 +31,7 @@ target_link_libraries( ...@@ -31,7 +31,7 @@ target_link_libraries(
$<$<TARGET_EXISTS:LAPACK::LAPACK>:LAPACK::LAPACK> $<$<TARGET_EXISTS:LAPACK::LAPACK>:LAPACK::LAPACK>
$<$<BOOL:${OGS_USE_LIS}>:${LIS_LIBRARIES}> $<$<BOOL:${OGS_USE_LIS}>:${LIS_LIBRARIES}>
$<$<BOOL:${OGS_USE_CVODE}>:CVODE::CVODE> $<$<BOOL:${OGS_USE_CVODE}>:CVODE::CVODE>
$<$<BOOL:${OGS_USE_PETSC}>:petsc> $<$<BOOL:${OGS_USE_PETSC}>:PkgConfig::PETSC>
$<$<BOOL:${OGS_USE_MKL}>:MKL::MKL> $<$<BOOL:${OGS_USE_MKL}>:MKL::MKL>
Eigen3::Eigen Eigen3::Eigen
$<$<TARGET_EXISTS:OpenMP::OpenMP_CXX>:OpenMP::OpenMP_CXX> $<$<TARGET_EXISTS:OpenMP::OpenMP_CXX>:OpenMP::OpenMP_CXX>
......
...@@ -143,7 +143,7 @@ if(OGS_USE_PETSC) ...@@ -143,7 +143,7 @@ if(OGS_USE_PETSC)
set(_petsc_source URL ${_petsc_source_file}) set(_petsc_source URL ${_petsc_source_file})
elseif(NOT (OGS_PETSC_CONFIG_OPTIONS OR OGS_BUILD_PETSC)) elseif(NOT (OGS_PETSC_CONFIG_OPTIONS OR OGS_BUILD_PETSC))
find_package(PkgConfig REQUIRED) find_package(PkgConfig REQUIRED)
pkg_search_module(PETSC REQUIRED PETSc) pkg_search_module(PETSC IMPORTED_TARGET PETSc)
endif() endif()
if(NOT PETSC_FOUND) if(NOT PETSC_FOUND)
...@@ -173,23 +173,12 @@ if(OGS_USE_PETSC) ...@@ -173,23 +173,12 @@ if(OGS_USE_PETSC)
"ExternalProject_Add(): added package PETSc@${ogs.minimum_version.petsc}" "ExternalProject_Add(): added package PETSc@${ogs.minimum_version.petsc}"
) )
set(_EXT_LIBS ${_EXT_LIBS} PETSc CACHE INTERNAL "") set(_EXT_LIBS ${_EXT_LIBS} PETSc CACHE INTERNAL "")
BuildExternalProject_find_package(PETSc) set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ${build_dir_PETSc})
endif() endif()
add_library(petsc SHARED IMPORTED) find_package(PkgConfig REQUIRED)
target_include_directories(petsc INTERFACE ${PETSC_INCLUDES} ${PETSC_INCLUDE_DIRS}) pkg_search_module(PETSC REQUIRED IMPORTED_TARGET PETSc)
if("PETSc" IN_LIST _EXT_LIBS) target_compile_definitions(PkgConfig::PETSC INTERFACE USE_PETSC)
# Get first petsc lib as import location
list(GET PETSC_LIBRARIES 0 _first_petsc_lib)
set_target_properties(
petsc PROPERTIES IMPORTED_LOCATION ${_first_petsc_lib}
)
else()
set_target_properties(
petsc PROPERTIES IMPORTED_LOCATION ${pkgcfg_lib_PETSC_petsc}
)
endif()
target_compile_definitions(petsc INTERFACE USE_PETSC)
endif() endif()
if(OGS_USE_LIS) if(OGS_USE_LIS)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment