GNU bug report logs -
#31733
[PATCH] gnu: encfs: Update to 1.9.5.
Previous Next
Reported by: Pierre Neidhardt <ambrevar <at> gmail.com>
Date: Wed, 6 Jun 2018 09:48:02 UTC
Severity: normal
Tags: patch
Done: Kei Kebreau <kkebreau <at> posteo.net>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Pierre Neidhardt <ambrevar <at> gmail.com> writes:
> Kei Kebreau <kkebreau <at> posteo.net> writes:
>
>>> - googletest: this one does not have an option in CMakeList.txt to be
>>> used externally. So either we report upstream or we patch the
>>> CMakeList.txt.
>>>
>>
>> I see that while CMakeLists.txt doesn't have an external option to
>> control this, it *does* look for googletest in the vendor
>> directory. Perhaps we can add our own googletest as a native input and
>> remove the bundled googletest and CMakeLists.txt's references to it in a
>> snippet?
>
> I have no experience at all with googletest. Do you know how, when and
> why to use it?
> If so, could you help me with this process? Thanks!
I don't have experience with it either, but I did find an interesting
way around the issue in the Guix code. (Usually if I have an issue
packaging something, I try "grepping" around the existing code to see if
someone has already solved a similar problem.) I've attached a patch
(based on yours) that covers the method:
[...]
(snippet '(begin
(for-each delete-file-recursively
- (find-files "internal" "^tinyxml2-[0-9]"
- #:directories? #t))
+ '("vendor/github.com/leethomason/tinyxml2"
+ "vendor/github.com/google/googletest"))
#t))))
Here I just remove the tinyxml2 and googletest directories as discussed.
[...]
;; Test dependencies.
("expect" ,expect)
+ ("googletest-source" ,(package-source googletest))
("perl" ,perl)))
(inputs
`(("attr" ,attr)
As seen in the definition for gnucash, the idea is to extract *our*
googletest source code in place of the bundled version. This seems to be
the easiest way to deal with replacing googletest in this case rather
than completely removing it.
[...]
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'unpack-googletest
+ (lambda* (#:key inputs #:allow-other-keys)
+ (mkdir-p "vendor/github.com/google/googletest")
+ (invoke "tar" "xvf" (assoc-ref inputs "googletest-source")
+ "-C" "vendor/github.com/google/googletest"
+ "--strip-components=1")))
This phase does the extracting bit.
As for the Easylogging++ and google/benchmark replacements, we'd have to
start by packaging them.
Did this help at all?
[0001-gnu-encfs-Update-to-1.9.5.patch (text/plain, attachment)]
[signature.asc (application/pgp-signature, inline)]
This bug report was last modified 6 years and 342 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.