summaryrefslogtreecommitdiffstats
path: root/ConfigureChecks.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'ConfigureChecks.cmake')
-rw-r--r--ConfigureChecks.cmake77
1 files changed, 55 insertions, 22 deletions
diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
index 6cbee868..24c10fa9 100644
--- a/ConfigureChecks.cmake
+++ b/ConfigureChecks.cmake
@@ -25,6 +25,16 @@ if( WITH_GCC_VISIBILITY )
endif( WITH_GCC_VISIBILITY )
+##### check for Doxygen
+
+if( BUILD_DOC AND BUILD_KIG )
+ find_program( DOXYGEN_BINARY NAMES doxygen )
+ if( NOT DOXYGEN_BINARY )
+ tde_message_fatal( "Doxygen is required to build Kig scripting api documentation, but was not found on your system" )
+ endif( )
+endif( )
+
+
##### check for arts
if( WITH_ARTS )
@@ -40,15 +50,39 @@ if( NOT WITH_ARTS )
endif( NOT WITH_ARTS )
+##### check for boost
+
+if( BUILD_KBRUCH )
+
+find_package( Boost )
+
+if( NOT Boost_FOUND )
+ tde_message_fatal( "Boost is required, but was not found on your system" )
+endif()
+endif( BUILD_KBRUCH )
+
+
##### check for Python
if( BUILD_KIG )
- find_package( PythonInterp )
- find_package( PythonLibs )
- if( NOT PYTHONLIBS_FOUND )
- tde_message_fatal( "Python is required, but was not found on your system" )
- endif( NOT PYTHONLIBS_FOUND )
+if( ${CMAKE_VERSION} VERSION_LESS "3.12" )
+ find_package( PythonInterp )
+ find_package( PythonLibs )
+ if( NOT PYTHONLIBS_FOUND )
+ tde_message_fatal( "Python is required, but was not found on your system" )
+ endif( NOT PYTHONLIBS_FOUND )
+ else( )
+ find_package( Python COMPONENTS Interpreter Development )
+ if( NOT Python_Development_FOUND )
+ tde_message_fatal( "Python is required, but was not found on your system" )
+ endif( )
+ set( PYTHON_VERSION_STRING "${Python_VERSION}" )
+ set( PYTHON_VERSION_MAJOR "${Python_VERSION_MAJOR}" )
+ set( PYTHON_VERSION_MINOR "${Python_VERSION_MINOR}" )
+ set( PYTHON_INCLUDE_DIRS "${Python_INCLUDE_DIRS}" )
+ set( PYTHON_LIBRARIES "${Python_LIBRARIES}" )
+ endif( )
if( "${PYTHON_VERSION_STRING}" VERSION_LESS "3.0" )
set( KIG_Python_init "initkig"
@@ -57,30 +91,29 @@ if( BUILD_KIG )
set( KIG_Python_init "PyInit_kig"
CACHE STRING "KIG: Init function for python-boost" )
endif( )
+endif( BUILD_KIG )
-endif( )
+# Check for Python Boost
-##### check for Doxygen
+if( BUILD_KIG AND WITH_KIG_PYTHON_SCRIPTING )
-if( BUILD_DOC AND BUILD_KIG )
- find_program( DOXYGEN_BINARY NAMES doxygen )
- if( NOT DOXYGEN_BINARY )
- tde_message_fatal( "Doxygen is required to build Kig scripting api documentation, but was not found on your system" )
- endif( )
-endif( )
+find_package( Boost COMPONENTS python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR} )
+if( NOT Boost_FOUND )
+ find_package( Boost COMPONENTS python )
+endif( )
-##### check for boost
-
-if( BUILD_KIG OR BUILD_KBRUCH )
-
- find_package( Boost )
- if( NOT Boost_FOUND )
- tde_message_fatal( "Boost is required, but was not found on your system" )
- endif( NOT Boost_FOUND )
+if( NOT Boost_FOUND )
+ tde_message_fatal( "Boost Python Library is required, but was not found on your system" )
+ else()
+ set( KIG_ENABLE_PYTHON_SCRIPTING 1 )
+endif( NOT Boost_FOUND )
-endif( BUILD_KIG OR BUILD_KBRUCH )
+if( NOT Boost_PYTHON_LIBRARY AND Boost_PYTHON${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}_LIBRARY )
+ set( Boost_PYTHON_LIBRARY "${Boost_PYTHON${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}_LIBRARY}" )
+endif( )
+endif( BUILD_KIG AND WITH_KIG_PYTHON_SCRIPTING )
##### check for headers