11# - Config file for the isaac package
22# It defines the following variables
3- # ISAAC_INCLUDE_DIRS - include directories for FooBar
4- # ISAAC_LIBRARIES - libraries to link against
5- # ISAAC_DEFINITIONS - necessary definitions
6- # ISAAC_FOUND - whether ISAAC was found and is useable
3+ # ISAAC_INCLUDE_DIRS - include directories for FooBar
4+ # ISAAC_LIBRARIES - libraries to link against
5+ # ISAAC_DEFINITIONS - necessary definitions
6+ # ISAAC_FOUND - whether ISAAC was found and is useable
7+ # ISAAC_DEPENDENCY_HINTS - hints about missing dependencies
78#
89# It defines the following options
910# ISAAC_THREADING
@@ -26,7 +27,6 @@ set(ISAAC_INCLUDE_DIRS ${ISAAC_INCLUDE_DIRS} "${ISAAC_DIR}/isaac")
2627###############################################################################
2728set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${ISAAC_DIR} /Modules" )
2829
29-
3030###############################################################################
3131# OPTIONS
3232###############################################################################
@@ -72,26 +72,37 @@ if (ISAAC_VALGRIND_TWEAKS)
7272 set (ISAAC_DEFINITIONS ${ISAAC_DEFINITIONS} -DISAAC_VALGRIND_TWEAKS)
7373endif ()
7474
75+ set (ISAAC_DEPENDENCY_HINTS "missing dependencies:" )
76+
7577###############################################################################
7678# JANSSON LIB
7779###############################################################################
7880# set(JANSSON_DIR JANSSON_DIR_NOT-FOUND CACHE PATH "The location of the jansson library")
79- find_package (Jansson CONFIG)
81+ find_package (Jansson CONFIG QUIET )
82+ if (NOT Jansson_FOUND)
83+ set (ISAAC_DEPENDENCY_HINTS ${ISAAC_DEPENDENCY_HINTS} "\n -- libJansson" )
84+ endif ()
8085set (ISAAC_LIBRARIES ${ISAAC_LIBRARIES} ${JANSSON_LIBRARIES} )
8186set (ISAAC_INCLUDE_DIRS ${ISAAC_INCLUDE_DIRS} ${JANSSON_INCLUDE_DIRS} )
8287
8388
8489###############################################################################
8590# PTHREADS
8691###############################################################################
87- find_package (Threads MODULE)
92+ find_package (Threads MODULE QUIET )
93+ if (NOT Threads_FOUND)
94+ set (ISAAC_DEPENDENCY_HINTS ${ISAAC_DEPENDENCY_HINTS} "\n -- pThreads" )
95+ endif ()
8896set (ISAAC_LIBRARIES ${ISAAC_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} )
8997
9098
9199################################################################################
92100# IceT LIB
93101################################################################################
94- find_package (IceT CONFIG)
102+ find_package (IceT CONFIG QUIET )
103+ if (NOT IceT_FOUND)
104+ set (ISAAC_DEPENDENCY_HINTS ${ISAAC_DEPENDENCY_HINTS} "\n -- IceT" )
105+ endif ()
95106set (ISAAC_LIBRARIES ${ISAAC_LIBRARIES} ${ICET_CORE_LIBS} )
96107set (ISAAC_LIBRARIES ${ISAAC_LIBRARIES} ${ICET_MPI_LIBS} )
97108set (ISAAC_INCLUDE_DIRS ${ISAAC_INCLUDE_DIRS} ${ICET_INCLUDE_DIRS} )
@@ -100,7 +111,10 @@ set(ISAAC_INCLUDE_DIRS ${ISAAC_INCLUDE_DIRS} ${ICET_INCLUDE_DIRS})
100111################################################################################
101112# BOOST LIB
102113################################################################################
103- find_package (Boost 1.56.0 MODULE)
114+ find_package (Boost 1.56.0 MODULE QUIET )
115+ if (NOT Boost_FOUND)
116+ set (ISAAC_DEPENDENCY_HINTS ${ISAAC_DEPENDENCY_HINTS} "\n -- Boost" )
117+ endif ()
104118set (ISAAC_INCLUDE_DIRS ${ISAAC_INCLUDE_DIRS} ${Boost_INCLUDE_DIR} )
105119set (ISAAC_DEFINITIONS ${ISAAC_DEFINITIONS} -DBOOST_ALL_NO_LIB)
106120
@@ -110,7 +124,7 @@ set(ISAAC_PRIVATE_FOUND true)
110124# CUDA LIB
111125################################################################################
112126if (ISAAC_CUDA)
113- find_package ( CUDA 7.0 )
127+ find_package ( CUDA 7.0 QUIET )
114128 if (!CUDA_FOUND)
115129 set (ISAAC_PRIVATE_FOUND false )
116130 else ()
@@ -123,9 +137,10 @@ endif()
123137# Alpaka LIB
124138################################################################################
125139if (ISAAC_ALPAKA)
126- find_package (alpaka)
140+ find_package (alpaka QUIET )
127141 if (!alpaka_FOUND)
128142 set (ISAAC_PRIVATE_FOUND false )
143+ set (ISAAC_DEPENDENCY_HINTS ${ISAAC_DEPENDENCY_HINTS} "\n -- Cuda or Alpaka" )
129144 else ()
130145 set (ISAAC_INCLUDE_DIRS ${ISAAC_INCLUDE_DIRS} ${alpaka_INCLUDE_DIRS} )
131146 set (ISAAC_LIBRARIES ${ISAAC_LIBRARIES} ${alpaka_LIBRARIES} )
@@ -142,7 +157,10 @@ list(REMOVE_DUPLICATES CUDA_NVCC_FLAGS)
142157################################################################################
143158# MPI LIB
144159################################################################################
145- find_package (MPI MODULE)
160+ find_package (MPI MODULE QUIET )
161+ if (NOT MPI_FOUND)
162+ set (ISAAC_DEPENDENCY_HINTS ${ISAAC_DEPENDENCY_HINTS} "\n -- MPI" )
163+ endif ()
146164set (ISAAC_INCLUDE_DIRS ${ISAAC_INCLUDE_DIRS} ${MPI_C_INCLUDE_PATH} )
147165set (ISAAC_LIBRARIES ${ISAAC_LIBRARIES} ${MPI_C_LIBRARIES} )
148166if (ISAAC_PRIVATE_FOUND)
@@ -165,5 +183,18 @@ endif()
165183################################################################################
166184# Returning whether ISAAC could be found
167185################################################################################
186+
168187FIND_PACKAGE_HANDLE_STANDARD_ARGS(ISAAC
169- REQUIRED_VARS ISAAC_LIBRARIES ISAAC_INCLUDE_DIRS JANSSON_LIBRARIES JANSSON_INCLUDE_DIRS CMAKE_THREAD_LIBS_INIT ISAAC_MPI_FOUND ICET_CORE_LIBS ICET_MPI_LIBS ICET_INCLUDE_DIRS Boost_FOUND ISAAC_PRIVATE_FOUND)
188+ REQUIRED_VARS
189+ ISAAC_LIBRARIES
190+ ISAAC_INCLUDE_DIRS
191+ JANSSON_LIBRARIES
192+ JANSSON_INCLUDE_DIRS
193+ CMAKE_THREAD_LIBS_INIT
194+ ISAAC_MPI_FOUND
195+ ICET_CORE_LIBS
196+ ICET_MPI_LIBS
197+ ICET_INCLUDE_DIRS
198+ Boost_FOUND
199+ ISAAC_PRIVATE_FOUND
200+ )
0 commit comments