(define %source-dir (dirname (current-filename)))
-;; This will be needed when gnunet source moves to git.
-;; Taken from https://gitlab.com/dustyweb/pubstrate/blob/master/guix.scm
(define git-file?
(let* ((pipe (with-directory-excursion %source-dir
(open-pipe* OPEN_READ "git" "ls-files")))
(any (cut string-suffix? <> file) files))
(_ #f)))))
-(define gnunet-svn
+(define gnunet-git
(package
- (name "gnunet-svn")
+ (name "gnunet-git")
(version (string-append "0.10.1-" "dev"))
(source
(local-file %source-dir
#:recursive? #t))
- ;;#:select? git-file?))
+ ;;#:select? git-file?)) ; XXX: FIXME.
(build-system gnu-build-system)
(inputs
`(("glpk" ,glpk)
("automake" ,automake)
("gnu-gettext" ,gnu-gettext)
("libtool" ,libtool)))
+ ;; TODO: To make use of out:debug, which carries the symbols,
+ ;; this file needs to fixed.
+ (outputs '("out" "debug"))
(arguments
`(#:configure-flags
(list (string-append "--with-nssdir=" %output "/lib")
- "--enable-experimental"
;; These appear to be "broken" on Guix, needs debugging.
- ;;"--enable-gcc-hardening"
+ "--enable-gcc-hardening"
"--enable-linker-hardening"
+
+ "--enable-poisoning"
+ "--enable-sanitizer"
+ "--enable-experimental"
"--enable-logging=verbose"
- "--enable-poisoning")
+ "CFLAGS=-ggdb -O0")
;;#:parallel-tests? #f ; parallel building seems to fail
;;#:tests? #f ; fail: test_gnunet_statistics.py
#:phases
(add-after 'patch-bin-sh 'bootstrap
(lambda _
(zero? (system* "sh" "bootstrap"))))
- (delete 'check)
+ (delete 'check))))
;; XXX: https://gnunet.org/bugs/view.php?id=4619
- (add-after 'install 'set-path-for-check
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin"))
- (lib (string-append out "/lib")))
- (setenv "GNUNET_PREFIX" lib)
- (setenv "PATH" (string-append (getenv "PATH") ":" bin))
- (zero? (system* "make" "check"))))))))
+ ;; (add-after 'install 'set-path-for-check
+ ;; (lambda* (#:key outputs #:allow-other-keys)
+ ;; (let* ((out (assoc-ref outputs "out"))
+ ;; (bin (string-append out "/bin"))
+ ;; (lib (string-append out "/lib")))
+ ;; (setenv "GNUNET_PREFIX" lib)
+ ;; (setenv "PATH" (string-append (getenv "PATH") ":" bin))
+ ;; (zero? (system* "make" "check"))))))))
(synopsis "Secure, decentralized, peer-to-peer networking framework")
(description
"GNUnet is a framework for secure peer-to-peer networking. The
(license license:gpl3+)
(home-page "https://gnunet.org/")))
-gnunet-svn
+gnunet-git