gigaTerminal text editor | 
          
| git clone git://git.dimitrijedobrota.com/giga.git | 
| Log | Files | Refs | README | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING | 
CMakeLists.txt (1331B)
    0 cmake_minimum_required(VERSION 3.14)
          
              2 include(cmake/prelude.cmake)
          
              4 project(
              5     giga
              6     VERSION 0.1.12
              7     DESCRIPTION "Terminal text editor"
              8     HOMEPAGE_URL "https://git.dimitrijedobrota.com/giga.git"
              9     LANGUAGES CXX
             10 )
          
             12 include(cmake/project-is-top-level.cmake)
             13 include(cmake/variables.cmake)
          
             15 find_package(display 0.3 CONFIG REQUIRED)
             16 find_package(alec 0.1.13 CONFIG REQUIRED)
          
             18 # ---- Declare library ----
          
             20 add_library(
             21     giga_lib OBJECT
             22     source/layout_dynamic.cpp
             23 )
          
             25 target_include_directories(
             26     giga_lib ${warning_guard}
             27     PUBLIC
             28     "\$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/source>"
             29 )
          
             31 target_compile_features(giga_lib PUBLIC cxx_std_20)
             32 target_link_libraries(giga_lib PUBLIC display::display)
          
             34 # ---- Declare executable ----
          
             36 add_executable(giga_exe source/main.cpp)
             37 add_executable(giga::exe ALIAS giga_exe)
          
             39 set_property(TARGET giga_exe PROPERTY OUTPUT_NAME giga)
          
             41 target_compile_features(giga_exe PRIVATE cxx_std_20)
          
             43 target_link_libraries(giga_exe PRIVATE giga_lib)
          
             45 # ---- Install rules ----
          
             47 if(NOT CMAKE_SKIP_INSTALL_RULES)
             48   include(cmake/install-rules.cmake)
             49 endif()
          
             51 # ---- Developer mode ----
          
             53 if(NOT giga_DEVELOPER_MODE)
             54   return()
             55 elseif(NOT PROJECT_IS_TOP_LEVEL)
             56   message(
             57       AUTHOR_WARNING
             58       "Developer mode is intended for developers of giga"
             59   )
             60 endif()
          
             62 include(cmake/dev-mode.cmake)