mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-09-04 01:27:20 +02:00
75 lines
3.1 KiB
CMake
75 lines
3.1 KiB
CMake
cmake_minimum_required (VERSION 3.22)
|
|
include_directories (${CMAKE_SOURCE_DIR}
|
|
${CMAKE_SOURCE_DIR}/src
|
|
${CMAKE_SOURCE_DIR}/src/commands
|
|
${CMAKE_SOURCE_DIR}/src/columns
|
|
${CMAKE_SOURCE_DIR}/src/libshared/src
|
|
${TASK_INCLUDE_DIRS})
|
|
|
|
add_library (task STATIC CLI2.cpp
|
|
Context.cpp
|
|
DOM.cpp
|
|
Eval.cpp
|
|
Filter.cpp
|
|
Hooks.cpp
|
|
Lexer.cpp
|
|
Operation.cpp
|
|
TF2.cpp
|
|
TDB2.cpp
|
|
Task.cpp
|
|
Variant.cpp
|
|
Version.cpp
|
|
ViewTask.cpp
|
|
dependency.cpp
|
|
feedback.cpp
|
|
legacy.cpp
|
|
nag.cpp
|
|
recur.cpp
|
|
rules.cpp
|
|
sort.cpp
|
|
util.cpp)
|
|
target_link_libraries(task taskchampion-cpp)
|
|
|
|
add_library (libshared STATIC libshared/src/Color.cpp
|
|
libshared/src/Configuration.cpp
|
|
libshared/src/Datetime.cpp
|
|
libshared/src/Duration.cpp
|
|
libshared/src/FS.cpp
|
|
libshared/src/JSON.cpp
|
|
libshared/src/Msg.cpp
|
|
libshared/src/Pig.cpp
|
|
libshared/src/RX.cpp
|
|
libshared/src/Table.cpp
|
|
libshared/src/Timer.cpp
|
|
libshared/src/format.cpp
|
|
libshared/src/ip.cpp
|
|
libshared/src/shared.cpp
|
|
libshared/src/unicode.cpp
|
|
libshared/src/utf8.cpp)
|
|
|
|
add_executable (task_executable main.cpp)
|
|
add_executable (calc_executable calc.cpp)
|
|
add_executable (lex_executable lex.cpp)
|
|
|
|
# Yes, 'task' (and hence libshared) is included twice, otherwise linking fails on assorted OSes.
|
|
target_link_libraries (task_executable task commands columns libshared task libshared ${TASK_LIBRARIES})
|
|
target_link_libraries (calc_executable task commands columns libshared task libshared ${TASK_LIBRARIES})
|
|
target_link_libraries (lex_executable task commands columns libshared task libshared ${TASK_LIBRARIES})
|
|
if (DARWIN)
|
|
# SystemConfiguration is required by Rust libraries like reqwest, to get proxy configuration.
|
|
target_link_libraries (task_executable "-framework CoreFoundation -framework Security -framework SystemConfiguration")
|
|
target_link_libraries (calc_executable "-framework CoreFoundation -framework Security -framework SystemConfiguration")
|
|
target_link_libraries (lex_executable "-framework CoreFoundation -framework Security -framework SystemConfiguration")
|
|
endif (DARWIN)
|
|
|
|
set_property (TARGET task_executable PROPERTY OUTPUT_NAME "task")
|
|
|
|
install (TARGETS task_executable DESTINATION ${TASK_BINDIR})
|
|
|
|
set_property (TARGET calc_executable PROPERTY OUTPUT_NAME "calc")
|
|
set_property (TARGET lex_executable PROPERTY OUTPUT_NAME "lex")
|
|
|
|
#SET(CMAKE_BUILD_TYPE gcov)
|
|
#SET(CMAKE_CXX_FLAGS_GCOV "--coverage")
|
|
#SET(CMAKE_C_FLAGS_GCOV "--coverage")
|
|
#SET(CMAKE_EXE_LINKER_FLAGS_GCOV "--coverage")
|