cmake_minimum_required(VERSION 3.15) project(hf_naptar) set(CMAKE_CXX_STANDARD 98) set(CMAKE_CXX_FLAGS "-Wall -Werror") add_library(hf_naptar Datum.h Datum.cpp evfordulo.h evfordulo.cpp Naptar.cpp Naptar.h memtrace.cpp memtrace.h) add_executable(hf_naptar_test main.cpp gtest_lite.h memtrace.cpp memtrace.h) target_link_libraries(hf_naptar_test hf_naptar) add_compile_definitions(hf_naptar_test MEMTRACE) # GTK stuff #add_executable(gtk_naptar gtk_naptar.cpp Datum.cpp Datum.h Naptar.cpp Naptar.h memtrace.cpp memtrace.h evfordulo.h evfordulo.cpp) add_executable(gtkmm_naptar gtkmm_naptar.cpp gtest_lite.h Datum.cpp Datum.h Naptar.cpp Naptar.h memtrace.cpp memtrace.h evfordulo.h evfordulo.cpp MainWindow.cpp MainWindow.h AboutWindow.hpp AddDateWindow.h AddDateWindow.cpp AddAnniversaryWindow.hpp AddAnniversaryWindow.hpp) find_package(PkgConfig REQUIRED) #pkg_check_modules (GTK3 REQUIRED gtk+-3.0) pkg_check_modules (GTKMM gtkmm-3.0) link_directories(${GTKMM_LIBRARY_DIRS}) include_directories(${GTKMM_INCLUDE_DIRS}) add_definitions (${GTKMM_CFLAGS_OTHER}) # target_link_libraries (gtk_naptar ${GTK3_LIBRARIES}) target_link_libraries (gtkmm_naptar ${GTKMM_LIBRARIES}) #Doxygen option(BUILD_DOC "Build Documentation" ON) find_package(Doxygen) if(DOXYGEN_FOUND) set(BUILD_DOC_DIR ${CMAKE_SOURCE_DIR}/build/docs) if(NOT EXISTS ${BUILD_DOC_DIR}) file(MAKE_DIRECTORY ${BUILD_DOC_DIR}) endif() set(DOXYGEN_IN ${CMAKE_CURRENT_SOURCE_DIR}/docs/Doxyfile) set(DOXYGEN_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) configure_file(${DOXYGEN_IN} ${DOXYGEN_OUT} @ONLY) message("Doxygen build started") add_custom_target(Doxygen ALL COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_OUT} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating API documentation with Doxygen" VERBATIM) else(DOXYGEN_FOUND) message("Doxygen needs to be installed to generate the documentation.") endif(DOXYGEN_FOUND)