diff --git a/TODO.md b/TODO.md index a4837e1..c8ac847 100644 --- a/TODO.md +++ b/TODO.md @@ -1 +1,2 @@ * Include C++ include dirs code +* Ensure compile commands directories do not duplicate diff --git a/cmake-ide.el b/cmake-ide.el index 404ddc9..009671c 100644 --- a/cmake-ide.el +++ b/cmake-ide.el @@ -124,6 +124,12 @@ :group 'cmake-ide :safe #'stringp) +(defcustom cmake-ide-cmake-command-flags + nil + "List of misc flags passed to the cmake invocation." + :group 'cmake-ide + :safe #'stringp) + (defcustom cmake-ide-header-search-other-file t "Whether or not to search for a corresponding source file for headers when setting flags for them." @@ -559,7 +565,9 @@ the object file's name just above." (when project-dir (let ((default-directory cmake-dir)) (cmake-ide--message "Running cmake for src path %s in build path %s" project-dir cmake-dir) - (start-process "cmake" "*cmake*" cmake-ide-cmake-command "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON" project-dir)))) + (apply #'start-process "cmake" "*cmake*" cmake-ide-cmake-command project-dir + "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON" cmake-ide-cmake-command-flags) + ))) (defun cmake-ide--get-build-dir () @@ -944,6 +952,7 @@ the object file's name just above." (cmake-ide--message "Starting rdm server") (with-current-buffer buf (start-process "rdm" (current-buffer) cmake-ide-rdm-executable + "-j 2" "-i 40" "-a 10" "-c" cmake-ide-rdm-rc-path)))))) (defun cmake-ide--process-running-p (name)