Help with Bear

  • Open
  • quality assurance status badge
Details
2 participants
  • Brett Gilio
  • ???
Owner
unassigned
Submitted by
Brett Gilio
Severity
normal
B
B
B
Brett Gilio wrote on 27 Nov 2020 00:27
(address . 44896@debbugs.gnu.org)
87a6v3r95y.fsf@debian
From ad64b3febdcd3c98796bb8c5d2ab99add30b9198 Mon Sep 17 00:00:00 2001
From: Brett Gilio <brettg@gnu.org>
Date: Thu, 26 Nov 2020 17:12:10 -0600
Subject: [PATCH 1/1] gnu: bear: Update to 3.0.3.

* gnu/packages/build-tools.scm (bear): Update to 3.0.3.

INCOMPLETE
---
gnu/packages/build-tools.scm | 51 +++++++++++++++++++++++++++++++-----
1 file changed, 45 insertions(+), 6 deletions(-)

Toggle diff (93 lines)
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 3f140efdb3..316e992f70 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -38,16 +38,23 @@
#:use-module (gnu packages)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages cpp)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages logging)
#:use-module (gnu packages lua)
#:use-module (gnu packages package-management)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages pretty-print)
+ #:use-module (gnu packages protobuf)
#: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 rpc)
#:use-module (gnu packages sqlite)
+ #:use-module (gnu packages tls)
#:use-module (gnu packages ninja)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python))
@@ -90,7 +97,7 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(define-public bear
(package
(name "bear")
- (version "2.4.4")
+ (version "3.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -99,16 +106,48 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(file-name (git-file-name name version))
(sha256
(base32
- "184dqjcpxiwcfziyi67zzran2c4fal1r3j8nhjdjadcmfxf4389d"))))
+ "1abx5h6xy0h3mz29ial5si8smkmjzla050d130pcc6dzr4ic642w"))))
(build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags
+ (list "-DCMAKE_CXX_FLAGS=-lspdlog -lstdc++fs"
+ "-DCMAKE_CXX_STANDARD=17")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-headers
+ (lambda _
+ (substitute*
+ (list "source/libsys/include/libsys/Os.h"
+ "source/libsys/include/libsys/Path.h"
+ "source/libsys/include/libsys/Process.h"
+ "source/intercept/include/intercept/output/Report.h"
+ "source/libsys/source/Process.cc"
+ "source/citnames/source/Configuration.h"
+ "source/citnames/source/Output.h"
+ "source/citnames/source/semantic/Semantic.h"
+ "source/citnames/source/semantic/Tool.h"
+ "source/bear/main.cc"
+ "source/citnames/source/Application.cc"
+ "source/citnames/source/semantic/Tool.cc")
+ (("<filesystem>") "<experimental/filesystem>")
+ (("std::filesystem") "std::experimental::filesystem"))
+ #t)))))
(inputs
- `(("python" ,python-wrapper)))
+ `(("fmt" ,fmt)
+ ("grpc" ,grpc)
+ ("json-modern-cxx" ,json-modern-cxx)
+ ("protobuf" ,protobuf)
+ ("spdlog" ,spdlog)))
+ (native-inputs
+ `(("googletest" ,googletest)
+ ("openssl" ,openssl)
+ ("pkg-config" ,pkg-config)))
(home-page "https://github.com/rizsotto/Bear")
(synopsis "Tool for generating a compilation database")
(description "A JSON compilation database is used in the Clang project to
-provide information on how a given compilation unit is processed. With this,
-it is easy to re-run the compilation with alternate programs. Bear is used to
-generate such a compilation database.")
+provide information on how a given compilation unit is processed . With this,
+it is easy to re-run the compilation with alternate programs . Bear is used to
+generate such a compilation database . ")
(license license:gpl3+)))
(define-public gn
--
2.29.2
?
(name . Brett Gilio)(address . brettg@gnu.org)(address . 44896@debbugs.gnu.org)
TYAP286MB01859407D971117DC9F88D5CA3CF0@TYAP286MB0185.JPNP286.PROD.OUTLOOK.COM
Brett Gilio <brettg@gnu.org> writes:

Toggle quote (11 lines)
> Hey all,
>
> I have been trying to update our bear package. This package makes rather
> extensive use of the filesystem module introduced around GCC 5.5.x.
>
> As the filesystem module was not stabilized until after CXX17, and in
> GCC 8+, and we are using GCC 7.5.0, there are a number of work arounds
> that need to be done to get this package compliant with building against
> 7.5.0.
>

You can provide ‘gcc-8’ as a ‘native-inputs’ for the bear package (see
‘guix edit waybar’ for an example), which should make <filesystem>
works.
?