]> www.ginac.de Git - ginac.git/blobdiff - CMakeLists.txt
build: windows: enable automatic imports by default
[ginac.git] / CMakeLists.txt
index 86d76face6cac515d5481f8f6e5a08ac0a6d2b7a..20ce8e1906cb7e39ac14ba003495928091224263 100644 (file)
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 2.6)
+cmake_minimum_required(VERSION 3.1)
 set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules")
 
 project(GiNaC)
@@ -20,16 +20,23 @@ set(ginaclib_version ${ginaclib_soversion}.${ginac_lt_age}.${ginac_lt_revision})
 # make check
 enable_testing()
 add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND})
+add_custom_target(test_suite)
+if (WIN32)
+       if (NOT DEFINED CMAKE_RUNTIME_OUTPUT_DIRECTORY)
+               set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin)
+       endif()
+endif()
 # make info
 add_custom_target(info ALL)
 add_custom_target(html)
 add_custom_target(pdf)
 
+set (CMAKE_CXX_STANDARD 11)
+
 find_package(CLN 1.2.2 REQUIRED)
 include_directories(${CLN_INCLUDE_DIR})
 
 include(CheckIncludeFile)
-check_include_file("stdint.h" HAVE_STDINT_H)
 check_include_file("unistd.h" HAVE_UNISTD_H)
 
 include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/ginac)
@@ -159,12 +166,29 @@ if (READLINE_FOUND)
        set(HAVE_READLINE_HISTORY_H 1)
 endif()
 
+find_package(LibDL)
+if (LIBDL_FOUND)
+       set(HAVE_LIBDL 1)
+endif()
+
 find_program(MAKEINFO makeinfo)
 find_program(FIG2DEV fig2dev)
+find_program(PYTHON python)
+if (NOT PYTHON)
+       find_program(PYTHON python3)
+endif()
+if (NOT PYTHON)
+       message(FATAL_ERROR "Python version 3 or 2 is required")
+endif()
+
 
 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
 add_definitions(-DHAVE_CONFIG_H)
 
+if (NOT LIBEXECDIR)
+       set (LIBEXECDIR "${CMAKE_INSTALL_PREFIX}/libexec")
+endif()
+
 add_subdirectory(ginac)
 add_subdirectory(tools)
 add_subdirectory(check)