Newer
Older
if(POLICY CMP0077)
cmake_policy(SET CMP0077 NEW) # since 3.13
endif()
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
include(PreventInSourceBuilds)
option(PEDANTIC "Compile with pedantic warnings" ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
if(MSVC)
else()
add_compile_options(-O2)
if(PEDANTIC)
add_compile_options(-pedantic -Wall -Wno-sign-compare -Wno-parentheses)
endif()
endif()
set(BUILD_SHARED_LIBS ON)
include(CTest) # equivalent to "enable_testing() ???
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND}) # => 'make check' is an alias for 'ctest'
configure_file(${CMAKE_SOURCE_DIR}/cmake/scripts/CTestCustom.cmake.in
${CMAKE_BINARY_DIR}/CTestCustom.cmake)
set(destination_lib ${CMAKE_INSTALL_PREFIX}/lib)
find_package(BISON REQUIRED)
find_package(FLEX REQUIRED)
find_package(Readline REQUIRED)
find_package(GSL REQUIRED)
find_package(FFTW_DBL REQUIRED)
find_package(YamlCpp05 REQUIRED)
find_package(KWW REQUIRED)
find_package(Cerf REQUIRED)
find_package(LMFit REQUIRED)
find_package(Gnuplot REQUIRED)
message(STATUS "All required packages found")
add_subdirectory(readplus)
add_subdirectory(trivia)
add_subdirectory(lib)
add_subdirectory(src)
add_subdirectory(share)
add_subdirectory(man)
message(STATUS "Now configuring gtest")
set(gtest_disable_pthreads ON)
add_subdirectory(ftest) # functional tests (run Frida with given script)
# add_subdirectory(readplus/test) # interactive readline test
message(STATUS "End of main/CMakeLists.txt")