1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- cmake_minimum_required(VERSION 3.10)
- project(MyProject)
- ###########
- # Debug or Release
- ###########
- if (NOT CMAKE_BUILD_TYPE)
- ## set default to Debug
- set(CMAKE_BUILD_TYPE Debug) # override with -DCMAKE_BUILD_TYPE=Release
- message("==> CMAKE_BUILD_TYPE empty. Changing it to Debug.")
- else()
- message("==> CMAKE_BUILD_TYPE == ${CMAKE_BUILD_TYPE}.")
- endif()
- ## https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_macros.html
- ## During Debug, use debug version of libstdc++ (asserts on access to invalid iterators, etc!)
- set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_GLIBCXX_DEBUG")
- ###########
- # Suppress certain warnings
- ###########
- # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated-declarations")
- ##############
- # C++ Standard
- ##############
- set(CMAKE_CXX_STANDARD 14)
- set(CMAKE_CXX_EXTENSIONS OFF)
- # Enable testing
- # set(BUILD_TESTING ON)
- # include(CTest)
- ### ADD gtest
- add_subdirectory(googletest)
- add_executable(test_lastseen test_lastseen.cpp lastseen.cpp)
- add_dependencies(test_lastseen gtest)
- target_link_libraries(test_lastseen gtest_main)
- enable_testing()
- add_test(NAME test_lastseen
- COMMAND test_lastseen)
- # include(FetchContent)
- #
- # FetchContent_Populate(
- # zf_log
- # GIT_REPOSITORY https://github.com/wonder-mice/zf_log.git
- # SOURCE_DIR zf_log
- # )
- # add_subdirectory(${zf_log_SOURCE_DIR}/src zf_log)
- # This works, if zf_log is pulled in.
- add_subdirectory(zf_log)
- # Example for how to define a test which uses gtest_gmock
- # add_executable(mytest tester.cpp)
- # target_link_libraries(mytest gmock_main)
- # Here's how to add all *.h and *.cpp files
- # to a project:
- #
- # file(GLOB SOURCES
- # header-folder/*.h
- # source-folder/*.cpp
- # )
- # add_executable(yourProj ${SOURCES})
- add_executable(mystic mystic.cpp lastseen.cpp terminal.cpp render.cpp utils.cpp)
- target_link_libraries(mystic util)
- target_link_libraries(mystic zf_log)
- target_compile_definitions(mystic PUBLIC ZF_LOG_DEF_LEVEL=ZF_LOG_VERBOSE)
- add_executable(try-re try-re.c)
- add_executable(ansi-color ansi-color.c)
- add_executable(ansi-to-src ansi-to-src.cpp utils.cpp)
- add_executable(images images.cpp images.h)
- add_executable(render-test render-test.cpp render.cpp terminal.cpp utils.cpp)
- target_link_libraries(render-test zf_log)
- target_compile_definitions(render-test PUBLIC ZF_LOG_DEF_LEVEL=ZF_LOG_VERBOSE)
|