guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#63330] [PATCH 0/4] Functional programming? In my C++?! It's more li


From: Maxim Cournoyer
Subject: [bug#63330] [PATCH 0/4] Functional programming? In my C++?! It's more likely than you think!
Date: Sun, 07 May 2023 11:30:21 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)

Hi,

Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

> * gnu/packages/cpp.scm (immer): New variable.
> ---
>  gnu/packages/cpp.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
> index 023d1c0337..da3567b5ef 100644
> --- a/gnu/packages/cpp.scm
> +++ b/gnu/packages/cpp.scm
> @@ -67,6 +67,7 @@ (define-module (gnu packages cpp)
>    #:use-module (gnu packages)
>    #:use-module (gnu packages assembly)
>    #:use-module (gnu packages autotools)
> +  #:use-module (gnu packages bdw-gc)
>    #:use-module (gnu packages boost)
>    #:use-module (gnu packages build-tools)
>    #:use-module (gnu packages c)
> @@ -1390,6 +1391,38 @@ (define-public libexpected
>      (home-page "https://tl.tartanllama.xyz/";)
>      (license license:cc0)))
>  
> +(define-public immer
> +  (package
> +   (name "immer")
> +   (version "0.8.0")
> +   (source (origin
> +            (method git-fetch)
> +            (uri (git-reference
> +                  (url "https://github.com/arximboldi/immer";)
> +                  (commit (string-append "v" version))))
> +            (file-name (git-file-name name version))
> +            (sha256
> +             (base32 "11km3l5h3rgsbj8yfyzk3fnx9na55l6zs2sxpx922yvlvs2blh27"))
> +            (modules '((guix build utils)))
> +            (snippet #~(begin
> +                         (delete-file "tools/include/doctest.h")
> +                         (delete-file "tools/include/catch.hpp")
> +                         (substitute* (find-files "test" "\\.[cih]pp")
> +                           (("<catch.hpp>") "<catch2/catch.hpp>")
> +                           (("<doctest.h>") "<doctest/doctest.h>"))
> +                         (substitute* (find-files "test/oss-fuzz" "\\.cpp")
> +                           ;; someone used the wrong header :)
> +                           (("<fmt/printf.h>") "<fmt/ostream.h>"))))))

Did you report the wrong header usage upstream?  A less intrusive fix
for the catch/doctest include problem could be to add their include
subdirectories as -I directives to the CXXFLAGS environment variable, or
since that's CMake, via its CMAKE_CXX_FLAGS make options.  See 'clara'
for an actual example.

-- 
Thanks,
Maxim





reply via email to

[Prev in Thread] Current Thread [Next in Thread]