You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

88 lines
2.6 KiB

if(MSYS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DMSYS_PROCESS_USE_SH")
endif()
set(project_files
config.cc
dialogs.cc
dialogs_unix.cc
directories.cc
entrybox.cc
info.cc
juci.cc
menu.cc
notebook.cc
project.cc
selectiondialog.cc
terminal.cc
tooltips.cc
window.cc
)
#Files used both in ../src and ../tests
set(project_shared_files
cmake.cc
ctags.cc
dispatcher.cc
filesystem.cc
Git integration through libgit2 (#244) * Git integration, fixes #63 * Fixed a crash when deleting directories, added libgit2 to MSYS2 CI, adjusted colors slightly * Git integration now supports debian stable * Fixed compilation error on MSYS2 * Added git_test * git_test fix * Git integration: now updates correct paths on source save. Also added slight delay to source diff git monitor change signal * git_test fixed * Now monitors .git directory instead. The .git/index file does not always update on for instance: git commit -m ... * Directories cleanup * Fixed git status update on rename refactoring, and some additional cleanup * Added menu items: Go to Next Diff, and Show Diff * Fixed Go to Next Diff and Show Diff keybindings * Minor fixes to git integration * Added: implement method * Minor fixes to Implement Method * Minor fixes to source_diff * source_diff: optimisations added, as well as some minor improvements * Fixed a crash when trying to show diff in a buffer not related to a diff repository * Git integration: MSYS2 support * source_diff: source should now refresh correctly when .git directory has changed * directories.cc: stop updating parent path colors when path including .git directory/file is found * Spellcheck underline no longer shows for for instance '\n' * Made directory view's git status update async * Use boost::filesystem::path in git.* * Optimisation: now stores a cache of git status, which can be slow, that is used when possible * Source view will now grab focus when a selection dialog is shown * Source menu should now be correctly updated * Implement Method: improved * git.cc: minor fix
10 years ago
git.cc
project_build.cc
source.cc
source_clang.cc
Git integration through libgit2 (#244) * Git integration, fixes #63 * Fixed a crash when deleting directories, added libgit2 to MSYS2 CI, adjusted colors slightly * Git integration now supports debian stable * Fixed compilation error on MSYS2 * Added git_test * git_test fix * Git integration: now updates correct paths on source save. Also added slight delay to source diff git monitor change signal * git_test fixed * Now monitors .git directory instead. The .git/index file does not always update on for instance: git commit -m ... * Directories cleanup * Fixed git status update on rename refactoring, and some additional cleanup * Added menu items: Go to Next Diff, and Show Diff * Fixed Go to Next Diff and Show Diff keybindings * Minor fixes to git integration * Added: implement method * Minor fixes to Implement Method * Minor fixes to source_diff * source_diff: optimisations added, as well as some minor improvements * Fixed a crash when trying to show diff in a buffer not related to a diff repository * Git integration: MSYS2 support * source_diff: source should now refresh correctly when .git directory has changed * directories.cc: stop updating parent path colors when path including .git directory/file is found * Spellcheck underline no longer shows for for instance '\n' * Made directory view's git status update async * Use boost::filesystem::path in git.* * Optimisation: now stores a cache of git status, which can be slow, that is used when possible * Source view will now grab focus when a selection dialog is shown * Source menu should now be correctly updated * Implement Method: improved * git.cc: minor fix
10 years ago
source_diff.cc
source_spellcheck.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/CodeCompleteResults.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/CompilationDatabase.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/CompileCommand.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/CompileCommands.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/CompletionString.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/Cursor.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/Diagnostic.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/Index.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/SourceLocation.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/SourceRange.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/Token.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/Tokens.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/TranslationUnit.cc
${PROJECT_SOURCE_DIR}/libclangmm/src/Utility.cc
${PROJECT_SOURCE_DIR}/tiny-process-library/process.cpp
)
if(LIBLLDB_FOUND)
10 years ago
list(APPEND project_shared_files debug_lldb.cc)
endif()
if(MSYS)
list(APPEND project_shared_files ${PROJECT_SOURCE_DIR}/tiny-process-library/process_win.cpp)
else()
list(APPEND project_shared_files ${PROJECT_SOURCE_DIR}/tiny-process-library/process_unix.cpp)
endif()
include_directories(${global_includes})
add_library(project_shared OBJECT ${project_shared_files})
if(("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") AND (NOT $ENV{distribution} STREQUAL ""))
add_library(${CMAKE_PROJECT_NAME} OBJECT ${project_files})
else()
add_executable(${CMAKE_PROJECT_NAME} ${project_files} $<TARGET_OBJECTS:project_shared>)
target_link_libraries(${CMAKE_PROJECT_NAME} ${global_libraries})
install(TARGETS ${CMAKE_PROJECT_NAME}
RUNTIME DESTINATION bin
)
endif()
# add a target to generate API documentation with Doxygen
find_package(Plantuml)
find_package(Doxygen)
if(DOXYGEN_FOUND)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
add_custom_target(doc
${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Generating API documentation with Doxygen to ${CMAKE_CURRENT_BINARY_DIR}" VERBATIM
)
endif(DOXYGEN_FOUND)