mirror of
https://github.com/OpenCMT/uLib.git
synced 2025-12-06 07:21:31 +01:00
switch to git no-history version
This commit is contained in:
122
CMake/uLibFindDependencies.cmake
Normal file
122
CMake/uLibFindDependencies.cmake
Normal file
@@ -0,0 +1,122 @@
|
||||
include(uLibMacros)
|
||||
include_guard(ULIB_FIND_DEPENDENCIES_CMAKE)
|
||||
|
||||
include(uLibDebugMacro)
|
||||
|
||||
################################################################################
|
||||
## PKG FIND ##
|
||||
message("/////////// LOOKING FOR EXTERNAL PACKAGES //////////////")
|
||||
|
||||
## BOOST ##
|
||||
message(STATUS "## BOOST ##")
|
||||
set(Boost_USE_STATIC_LIBS OFF)
|
||||
set(Boost_USE_MULTITHREADED ON)
|
||||
set(Boost_USE_STATIC_RUNTIME OFF)
|
||||
|
||||
find_package(Boost 1.45.0 COMPONENTS serialization signals program_options REQUIRED)
|
||||
if(Boost_FOUND)
|
||||
set(HAVE_BOOST true)
|
||||
endif(Boost_FOUND)
|
||||
include_directories(${Boost_INCLUDE_DIRS})
|
||||
|
||||
## OPEN MP ##
|
||||
message(STATUS "## OPEN MP ##")
|
||||
find_package(OpenMP)
|
||||
option(OpenMP_ACTIVE "Activate OpenMP parallel compilation" ON)
|
||||
if(OPENMP_FOUND AND OpenMP_ACTIVE)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}" )
|
||||
endif(OPENMP_FOUND AND OpenMP_ACTIVE)
|
||||
|
||||
## EIGEN ##
|
||||
message(STATUS "## EIGEN ##")
|
||||
# option(USE_EIGEN ON) ## REQUIRED
|
||||
find_package(Eigen3 REQUIRED)
|
||||
debug(EIGEN3_INCLUDE_DIR)
|
||||
include_directories(${EIGEN3_INCLUDE_DIR})
|
||||
|
||||
## ROOT ##
|
||||
message(STATUS "## ROOT ##")
|
||||
option(ULIB_USE_ROOT "Activate use of Root integration" ON)
|
||||
### <<<--- ROOT IS REQUIRED FOR THE MOMENT ###
|
||||
#if(ULIB_USE_ROOT)
|
||||
#include(/etc/root/cmake/FindROOT.cmake)
|
||||
find_package(ROOT REQUIRED)
|
||||
if(ROOT_FOUND)
|
||||
set(HAVE_ROOT true)
|
||||
include_directories(${ROOT_INCLUDE_DIR})
|
||||
link_directories(${ROOT_LIBRARY_DIR})
|
||||
debug(ROOT_INCLUDE_DIR)
|
||||
debug(ROOT_LIBRARY_DIR)
|
||||
debug(ROOT_LIBRARIES)
|
||||
else()
|
||||
message(WARNING "Root not found")
|
||||
endif(ROOT_FOUND)
|
||||
#endif(ULIB_USE_ROOT)
|
||||
|
||||
|
||||
## VTK ##
|
||||
option(ULIB_USE_VTK "Activate use of Vtk Visual Pipelines" ON)
|
||||
if(ULIB_USE_VTK)
|
||||
message(STATUS "## VTK ##")
|
||||
message(STATUS "Looking for VTK...")
|
||||
set(VTK_DIR "PATH/TO/VTK/BUILD/DIRECTORY")
|
||||
mark_as_advanced(VTK_DIR)
|
||||
find_package(VTK REQUIRED)
|
||||
include(${VTK_USE_FILE})
|
||||
#message(STATUS "VTK included libraries: ${VTK_LIBRARIES}")
|
||||
debug(VTK_USE_FILE)
|
||||
debug(VTK_INCLUDE_DIRS)
|
||||
debug(VTK_LIBRARY_DIRS)
|
||||
debug(VTK_LIBRARIES)
|
||||
# get_directory_property(compile_def COMPILE_DEFINITIONS)
|
||||
# debug(compile_def)
|
||||
endif(ULIB_USE_VTK)
|
||||
|
||||
|
||||
## GEANT ##
|
||||
option(ULIB_USE_GEANT4 "Activate use of GEANT Integration" ON)
|
||||
message(STATUS "## GEANT 4 ##")
|
||||
#include(FindGEANT4) # disabled using system finder
|
||||
find_package(Geant4)
|
||||
set(GEANT4_FOUND Geant4_DIR)
|
||||
if(GEANT4_FOUND AND ULIB_USE_GEANT4)
|
||||
message(STATUS "Looking for Geant4... - Geant4 found in ${Geant4_DIR}")
|
||||
set(HAVE_GEANT4 true)
|
||||
include_directories(${Geant4_INCLUDE_DIRS}) # Add -I type paths
|
||||
add_definitions(${Geant4_DEFINITIONS}) # Add -D type defs
|
||||
debug_package(Geant4)
|
||||
endif(GEANT4_FOUND AND ULIB_USE_GEANT4)
|
||||
|
||||
## QT4 ##
|
||||
option(ULIB_USE_QT4 "Activate use of Qt Framework" ON)
|
||||
if(ULIB_USE_QT4)
|
||||
message(STATUS "## QT4 ##")
|
||||
find_package(Qt4)
|
||||
# include_directories(${Qt4_INCLUDE_DIRS})
|
||||
# debug(Qt4_INCLUDE_DIRS)
|
||||
endif(ULIB_USE_QT4)
|
||||
|
||||
## QT5 ##
|
||||
option(ULIB_USE_QT5 "Activate use of Qt Framework" ON)
|
||||
if(ULIB_USE_QT5)
|
||||
message(STATUS "## QT5 ##")
|
||||
find_package(Qt5Widgets)
|
||||
# include_directories(${Qt5_INCLUDE_DIRS})
|
||||
# debug(Qt5_INCLUDE_DIRS)
|
||||
endif(ULIB_USE_QT5)
|
||||
|
||||
## READLINE ##
|
||||
message(STATUS "## READLINE ##")
|
||||
find_package(ReadLine)
|
||||
include_directories(${READLINE_INCLUDE_DIR})
|
||||
debug(READLINE_INCLUDE_DIR)
|
||||
|
||||
## STD MATH REQUIRED ##
|
||||
#message(STATUS "## STD MATH ##")
|
||||
set(CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_INCLUDES math.h)
|
||||
set(CMAKE_REQUIRED_LIBRARIES CMAKE_REQUIRED_LIBRARIES m)
|
||||
|
||||
|
||||
|
||||
################################################################################
|
||||
Reference in New Issue
Block a user