;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
+;;; Copyright © 2020 Yuval Kogman <nothingmuch@woobling.org>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (gnu packages)
+ #:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages lua)
#:use-module (gnu packages package-management)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages ninja)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python))
majority of the OBS functionality is available via commands and the rest can
be reached via direct API calls.")
(license license:gpl2+)))
+
+(define-public compiledb
+ (package
+ (name "compiledb")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "compiledb" version))
+ (sha256
+ (base32 "0vlngsdxfakyl8b7rnvn8h3l216lhbrrydr04yhy6kd03zflgfq6"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'no-compat-shim-dependency
+ ;; shutilwhich is only needed for python 3.3 and earlier
+ (lambda _
+ (substitute* "setup.py" (("^ *'shutilwhich'\n") ""))
+ (substitute* "compiledb/compiler.py" (("shutilwhich") "shutil")))))))
+ (propagated-inputs
+ `(("python-bashlex" ,python-bashlex)
+ ("python-click" ,python-click)))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page
+ "https://github.com/nickdiego/compiledb")
+ (synopsis
+ "Generate Clang JSON Compilation Database files for make-based build systems")
+ (description
+ "@code{compiledb} provides a @code{make} python wrapper script which,
+besides executing the make build command, updates the JSON compilation
+database file corresponding to that build, resulting in a command-line
+interface similar to Bear.")
+ (license license:gpl3)))