inmost-config.cmake.in 3.7 KB
Newer Older
Kirill Terekhov's avatar
Kirill Terekhov committed
1 2 3 4 5 6
# - Config file for the INMOST package
# It defines the following variables
#  INMOST_INCLUDE_DIRS  - include directories for INMOST and dependencies
#  INMOST_LIBRARY_DIRS  - library directories for INMOST and dependencies
#  INMOST_LIBRARIES     - libraries to link against
#  INMOST_COMPILE_FLAGS - flags to set to compiler (generally inherited from MPI)
Kirill Terekhov's avatar
Kirill Terekhov committed
7
#  INMOST_LINK_FLAGS - flags to set to linker (generally inherited from MPI)
Kirill Terekhov's avatar
Kirill Terekhov committed
8 9
 
# Compute paths
Kirill Terekhov's avatar
Kirill Terekhov committed
10
get_filename_component(inmost_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
Kirill Terekhov's avatar
Kirill Terekhov committed
11 12 13
set(INMOST_INCLUDE_DIRS "@CONF_INCLUDE_DIRS@")
 
if(NOT TARGET inmost AND NOT INMOST_BINARY_DIR)
Kirill Terekhov's avatar
Kirill Terekhov committed
14 15 16 17 18
  if( EXISTS "${inmost_DIR}/cmake/inmost-targets.cmake" )
    include("${inmost_DIR}/cmake/inmost-targets.cmake")
  elseif( EXISTS "${inmost_DIR}/inmost-targets.cmake" )
    include("${inmost_DIR}/inmost-targets.cmake")
  elseif( EXISTS "${inmost_DIR}/CMakeFiles/Exports/cmake/inmost-targets.cmake")
Kirill Terekhov's avatar
Kirill Terekhov committed
19
    include("${inmost_DIR}/CMakeFiles/Exports/cmake/inmost-targets.cmake")
Kirill Terekhov's avatar
Kirill Terekhov committed
20
  endif()
Kirill Terekhov's avatar
Kirill Terekhov committed
21 22
endif()
 
Kirill Terekhov's avatar
Fixes  
Kirill Terekhov committed
23
set(INMOST_LIBRARY_DIRS "${inmost_DIR}")
Kirill Terekhov's avatar
Kirill Terekhov committed
24 25 26
set(INMOST_LIBRARIES inmost)


Kirill Terekhov's avatar
Kirill Terekhov committed
27
set(USE_MPI @USE_MPI@)
Kirill Terekhov's avatar
Kirill Terekhov committed
28
set(USE_OMP @USE_OMP@)
Kirill Terekhov's avatar
Kirill Terekhov committed
29 30
set(USE_PARTITIONER_ZOLTAN @USE_PARTITIONER_ZOLTAN@)
set(USE_PARTITIONER_PARMETIS @USE_PARTITIONER_PARMETIS@)
Kirill Terekhov's avatar
Kirill Terekhov committed
31 32
set(USE_SOLVER_MONDRIAAN @USE_SOLVER_MONDRIAAN@)
set(USE_SOLVER_METIS @USE_SOLVER_METIS@)
Kirill Terekhov's avatar
Kirill Terekhov committed
33 34
set(USE_SOLVER_TRILINOS @USE_SOLVER_TRILINOS@)
set(USE_SOLVER_PETSC @USE_SOLVER_PETSC@)
Kirill Terekhov's avatar
Kirill Terekhov committed
35
set(USE_SOLVER_SUPERLU @USE_SOLVER_SUPERLU@)
Kirill Terekhov's avatar
Kirill Terekhov committed
36

37 38 39 40 41
if( USE_OMP )
        set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
        set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
endif( USE_OMP )

Kirill Terekhov's avatar
Kirill Terekhov committed
42 43 44
if( USE_MPI )
	list(APPEND INMOST_INCLUDE_DIRS "@MPI_INCLUDE_PATH@")
	list(APPEND INMOST_COMPILE_FLAGS "@MPI_COMPILE_FLAGS@")
Kirill Terekhov's avatar
Kirill Terekhov committed
45 46
	list(APPEND INMOST_LIBRARIES "@MPI_LIBRARIES@")
	list(APPEND INMOST_LINK_FLAGS "@MPI_LINK_FLAGS@")
Kirill Terekhov's avatar
Kirill Terekhov committed
47 48 49 50 51 52 53 54 55 56 57 58 59 60
endif( USE_MPI )

if( USE_PARTITIONER_ZOLTAN )
	list(APPEND INMOST_LIBRARIES "@ZOLTAN_LIBRARIES@")
	list(APPEND INMOST_INCLUDE_DIRS "@ZOLTAN_INCLUDE_DIRS@")
endif( USE_PARTITIONER_ZOLTAN )


if( USE_PARTITIONER_PARMETIS )
	list(APPEND INMOST_LIBRARIES "@PARMETIS_LIBRARIES@")
	list(APPEND INMOST_INCLUDE_DIRS "@PARMETIS_INCLUDE_DIR@")
	list(APPEND INMOST_INCLUDE_DIRS "@METIS_INCLUDE_DIR@")
endif( USE_PARTITIONER_PARMETIS )

Kirill Terekhov's avatar
Kirill Terekhov committed
61 62 63 64 65 66 67 68 69 70
if( USE_SOLVER_MONDRIAAN )
	list(APPEND INMOST_LIBRARIES "@MONDRIAAN_LIBRARIES@")
	list(APPEND INMOST_INCLUDE_DIRS "@MONDRIAAN_INCLUDE_DIRS@")
	list(APPEND INMOST_LIBRARY_DIRS "@MONDRIAAN_LIBRARY_DIRS@")
endif( USE_SOLVER_MONDRIAAN )

if( USE_SOLVER_METIS )
	list(APPEND INMOST_LIBRARIES "@METIS_LIBRARIES@")
	list(APPEND INMOST_INCLUDE_DIRS "@METIS_INCLUDE_DIR@")
endif( USE_SOLVER_METIS )
Kirill Terekhov's avatar
Kirill Terekhov committed
71 72 73 74 75 76 77 78

if( USE_SOLVER_TRILINOS )
	list(APPEND INMOST_LIBRARIES "@Trilinos_LIBRARIES@")
	list(APPEND INMOST_LIBRARIES "@Trilinos_TPL_LIBRARIES@")
	list(APPEND INMOST_LIBRARY_DIRS "@Trilinos_LIBRARY_DIRS@")
	list(APPEND INMOST_LIBRARY_DIRS "@Trilinos_TPL_LIBRARY_DIRS@")
	list(APPEND INMOST_INCLUDE_DIRS "@Trilinos_INCLUDE_DIRS@")
	list(APPEND INMOST_INCLUDE_DIRS "@Trilinos_TPL_INCLUDE_DIRS@")
Kirill Terekhov's avatar
Kirill Terekhov committed
79 80 81 82 83
	if(MSVC)
      message("Putting workaround for Visual Studio that allow to use Trilinos Release libraries in Debug mode")
      message("Note that this workaround may affect your debugging experience, you may want to debug without Trilinos")
      list(APPEND INMOST_DEFINITIONS "-D_ITERATOR_DEBUG_LEVEL=0")
    endif(MSVC)
Kirill Terekhov's avatar
Kirill Terekhov committed
84 85
endif( USE_SOLVER_TRILINOS )

Kirill Terekhov's avatar
Kirill Terekhov committed
86
if( USE_SOLVER_SUPERLU )
Kirill Terekhov's avatar
Kirill Terekhov committed
87 88
	list(APPEND INMOST_LIBRARIES "@SUPERLU_LIBRARIES@")
	list(APPEND INMOST_INCLUDE_DIRS "@SUPERLU_INCLUDES@")
Kirill Terekhov's avatar
Kirill Terekhov committed
89 90
endif( USE_SOLVER_SUPERLU )

Kirill Terekhov's avatar
Kirill Terekhov committed
91 92 93 94 95

if( USE_SOLVER_PETSC )
	list(APPEND INMOST_LIBRARIES "@PETSC_LIBRARIES@")
	list(APPEND INMOST_LIBRARY_DIRS "@PETSC_LIBRARY_DIRS@")
	list(APPEND INMOST_INCLUDE_DIRS "@PETSC_INCLUDES@")
Kirill Terekhov's avatar
Kirill Terekhov committed
96
endif( USE_SOLVER_PETSC )