summary refs log tree commit diff
path: root/gnu/packages/cpp.scm
diff options
context:
space:
mode:
authorBrett Gilio <brettg@posteo.net>2019-12-16 00:06:05 -0600
committerBrett Gilio <brettg@posteo.net>2019-12-16 00:06:05 -0600
commit2c82d4ad10de8e0ba462d81401385c5e7499f6e2 (patch)
tree0af6969fc43f86a90577482638f276c0c6b6dbf1 /gnu/packages/cpp.scm
parent90ee17cdac77e48603b93ab30b71c4ba7ce2db42 (diff)
downloadguix-2c82d4ad10de8e0ba462d81401385c5e7499f6e2.tar.gz
gnu: ccls: Configure using -isystem for header files.
* gnu/packages/cpp.scm (ccls): Configure using -isystem for header files.
[arguments]: Use GCC as a build input for preprocessing and searching GCC
subdirectories, this provides better support for header file completion on
runtime.
[inputs]: Add ncurses for command-line support. Remove LLVM, it is not needed.
[native-inputs]: Move rapidjson from inputs to native-inputs, add GCC.
Diffstat (limited to 'gnu/packages/cpp.scm')
-rw-r--r--gnu/packages/cpp.scm18
1 files changed, 13 insertions, 5 deletions
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 335f9a65cd..7870184a52 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2019 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
+;;; Copyright © 2019 Brett Gilio <brettg@posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -35,7 +36,9 @@
   #:use-module (gnu packages check)
   #:use-module (gnu packages code)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages llvm)
+  #:use-module (gnu packages ncurses)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages tls)
@@ -305,12 +308,17 @@ tools (containers, algorithms) used by other QuantStack packages.")
        (file-name (git-file-name name version))))
     (build-system cmake-build-system)
     (arguments
-     '(#:tests? #f)) ; no check target.
-    (inputs
-     `(("rapidjson" ,rapidjson)))
-    (native-inputs
+     `(#:tests? #f ; no check target.
+       #:configure-flags
+       (list (string-append "-DCMAKE_CXX_FLAGS='-isystem "
+                            (assoc-ref %build-inputs "gcc")
+                            "/include/c++'"))))
+     (inputs
      `(("clang" ,clang)
-       ("llvm" ,llvm)))
+       ("ncurses" ,ncurses)))
+    (native-inputs
+     `(("rapidjson" ,rapidjson)
+       ("gcc" ,gcc)))
     (home-page "https://github.com/MaskRay/ccls")
     (synopsis "C/C++/Objective-C language server")
     (description