mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 13:28:12 -05:00
gnu: ldb: Fix build on 32-bit systems.
* guix/utils.scm (target-64bit?): New procedure. * gnu/packages/samba.scm (ldb)[inputs]: Only add LMDB on 64-bit systems. [arguments]: Make #:tests? conditional on LMDB availability.
This commit is contained in:
parent
406c83f78d
commit
259341cf93
2 changed files with 13 additions and 2 deletions
|
@ -362,7 +362,10 @@ (define-public ldb
|
|||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
'(;; LMDB is only supported on 64-bit systems, yet the test suite
|
||||
;; requires it.
|
||||
#:tests? (assoc-ref %build-inputs "lmdb")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
;; ldb use a custom configuration script that runs waf.
|
||||
|
@ -382,7 +385,9 @@ (define-public ldb
|
|||
`(("talloc" ,talloc)
|
||||
("tdb" ,tdb)))
|
||||
(inputs
|
||||
`(("lmdb" ,lmdb)
|
||||
`(,@(if (target-64bit?)
|
||||
`(("lmdb" ,lmdb))
|
||||
'())
|
||||
("popt" ,popt)
|
||||
("tevent" ,tevent)))
|
||||
(synopsis "LDAP-like embedded database")
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
;;; Copyright © 2015 David Thompson <davet@gnu.org>
|
||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -77,6 +78,7 @@ (define-module (guix utils)
|
|||
package-name->name+version
|
||||
target-mingw?
|
||||
target-arm32?
|
||||
target-64bit?
|
||||
version-compare
|
||||
version>?
|
||||
version>=?
|
||||
|
@ -474,6 +476,10 @@ (define* (target-mingw? #:optional (target (%current-target-system)))
|
|||
(define (target-arm32?)
|
||||
(string-prefix? "arm" (or (%current-target-system) (%current-system))))
|
||||
|
||||
(define (target-64bit?)
|
||||
(let ((system (or (%current-target-system) (%current-system))))
|
||||
(any (cut string-prefix? <> system) '("x86_64" "aarch64" "mips64" "ppc64"))))
|
||||
|
||||
(define version-compare
|
||||
(let ((strverscmp
|
||||
(let ((sym (or (dynamic-func "strverscmp" (dynamic-link))
|
||||
|
|
Loading…
Reference in a new issue