Blame synfig-core/src/CMakeLists.txt

caryoscelus b57217
# TODO: find out which version is actually required
caryoscelus b57217
cmake_minimum_required(VERSION 3.1)
caryoscelus b57217
caryoscelus b57217
##
caryoscelus b57217
## Find packages
caryoscelus b57217
##
caryoscelus b57217
caryoscelus b57217
# TODO: check if we really need all of them
cc8279
find_package(Boost REQUIRED system)
caryoscelus b57217
caryoscelus b57217
find_package(ZLIB REQUIRED)
6b7cd4
find_package(ETL REQUIRED)
6b7cd4
caryoscelus b57217
caryoscelus f4661e
## TODO: investigate these more closely
caryoscelus 174476
set(CMAKE_THREAD_PREFER_PTHREAD ON)
caryoscelus 174476
set(THREADS_PREFER_PTHREAD_FLAG ON)
caryoscelus f4661e
find_package(Threads REQUIRED)
caryoscelus 174476
if (CMAKE_USE_PTHREADS_INIT)
caryoscelus 174476
    set(HAVE_LIBPTHREAD ON)
caryoscelus 174476
endif()
caryoscelus 174476
caryoscelus b57217
include(FindPkgConfig)
caryoscelus b57217
pkg_check_modules(SIGCPP REQUIRED sigc++-2.0)
caryoscelus b57217
pkg_check_modules(GLIBMM REQUIRED glibmm-2.4)
caryoscelus b57217
pkg_check_modules(GIOMM REQUIRED giomm-2.4)
caryoscelus b57217
pkg_check_modules(CAIRO REQUIRED cairo)
caryoscelus b57217
pkg_check_modules(LIBXML REQUIRED libxml++-2.6)
caryoscelus b57217
pkg_check_modules(MLT REQUIRED mlt++)
caryoscelus 174476
pkg_check_modules(FFTW REQUIRED fftw3)
caryoscelus 174476
caryoscelus 0d136e
## TODO: move to module where it is actually required
caryoscelus 3084ef
pkg_check_modules(PANGO REQUIRED pango)
caryoscelus 3084ef
caryoscelus 0d136e
## TODO: should we keep it here?
caryoscelus 0d136e
find_package(ImageMagick COMPONENTS Magick++)
caryoscelus 0d136e
caryoscelus 174476
##
caryoscelus 174476
## Configure
caryoscelus 174476
##
caryoscelus 174476
caryoscelus 39d3fe
## set git version
caryoscelus 39d3fe
## TODO: put into separate file
caryoscelus 174476
find_package(Git)
caryoscelus 174476
if (GIT_FOUND)
caryoscelus 174476
    execute_process(
caryoscelus 174476
        COMMAND ${GIT_EXECUTABLE} show -s --format=%ad --date=format:%Y%m%d HEAD
caryoscelus 174476
        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
caryoscelus 174476
        OUTPUT_VARIABLE GIT_DATE
caryoscelus 174476
        OUTPUT_STRIP_TRAILING_WHITESPACE
caryoscelus 174476
    )
caryoscelus 174476
    execute_process(
caryoscelus 174476
        COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
caryoscelus 174476
        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
caryoscelus 174476
        OUTPUT_VARIABLE GIT_BRANCH
caryoscelus 174476
        OUTPUT_STRIP_TRAILING_WHITESPACE
caryoscelus 174476
    )
caryoscelus 174476
    execute_process(
caryoscelus 174476
        COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD
caryoscelus 174476
        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
caryoscelus 174476
        OUTPUT_VARIABLE GIT_HASH
caryoscelus 174476
        OUTPUT_STRIP_TRAILING_WHITESPACE
caryoscelus 174476
    )
caryoscelus 174476
else()
caryoscelus 174476
    set(GIT_DATE    "unknown")
caryoscelus 174476
    set(GIT_BRANCH  "unknown")
caryoscelus 174476
    set(GIT_HASH    "unknown")
caryoscelus 174476
endif()
caryoscelus 174476
caryoscelus 174476
add_definitions(-DHAVE_CONFIG_H)
caryoscelus 174476
configure_file(config.h.cmake.in config.h)
caryoscelus 174476
configure_file(autorevision.h.cmake.in autorevision.h)
caryoscelus b57217
caryoscelus b57217
##
caryoscelus b57217
## Include
caryoscelus b57217
##
caryoscelus b57217
caryoscelus 174476
## for config
caryoscelus 174476
include_directories(${CMAKE_CURRENT_BINARY_DIR})
caryoscelus 174476
caryoscelus b57217
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
caryoscelus b57217
caryoscelus b57217
##
caryoscelus de1b91
## CMake helpers
caryoscelus de1b91
##
caryoscelus de1b91
caryoscelus de1b91
include(cmake/install_header.cmake)
caryoscelus de1b91
caryoscelus de1b91
##
caryoscelus b57217
## Sub-dirs
caryoscelus b57217
##
caryoscelus b57217
caryoscelus b57217
add_subdirectory(synfig)
caryoscelus 174476
add_subdirectory(tool)
caryoscelus 5dc91c
add_subdirectory(modules)
caryoscelus b57217
caryoscelus b57217
##
caryoscelus b57217
## Build targets
caryoscelus b57217
##