Subject: bug#26294: [PATCH] gnu: rocksdb: Disable tests on 32-bit systems.

From: Kei Kebreau <[email-masked]>
Date: Fri, 31 Mar 2017 15:00:33 -0400

Marius Bakke <[email-masked]> writes:

> * gnu/packages/databases.scm (rocksdb)[arguments]: Make #:tests? conditional.
> Delete unnecessary 'build' phase.
> ---
>  gnu/packages/databases.scm | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
> index b87e8a210..e73635910 100644
> --- a/gnu/packages/databases.scm
> +++ b/gnu/packages/databases.scm
> @@ -533,12 +533,20 @@ types are supported, as is encryption.")
>                    #t))))
>      (build-system gnu-build-system)
>      (arguments
> -     '(#:make-flags (list "CC=gcc"
> +     `(#:make-flags (list "CC=gcc"
>                            ;; Make the resulting library position-independent so the
>                            ;; static version can be included in shared objects.
>                            "EXTRA_CXXFLAGS=-fPIC"
>                            (string-append "INSTALL_PATH="
>                                           (assoc-ref %outputs "out")))
> +       ;; Many tests fail on 32-bit platforms. There are multiple reports about
> +       ;; this upstream, but it's not going to be supported any time soon.
> +       #:tests? (let ((system ,(or (%current-target-system)
> +                                   (%current-system)))
> +                      (supported-systems '("x86_64-linux" "aarch64-linux")))
> +                  (if (member system supported-systems)
> +                      #t
> +                      #f))
>         #:phases
>         (modify-phases %standard-phases
>           (add-after 'unpack 'patch-Makefile
> @@ -548,6 +556,8 @@ types are supported, as is encryption.")
>                 (("#!/bin/sh") (string-append "#!" (which "sh"))))
>               #t))
>           (delete 'configure)
> +         ;; The default target is only needed for tests and built on demand.
> +         (delete 'build)
>           (add-before 'check 'disable-failing-tests
>             (lambda _
>               (substitute* "Makefile"

I'm unable to test your claim about 32-bit tests (I'm getting HTTP error code
504 when attempt to access info on hydra.gnu.org), but the package
builds and lints fine for me on x86_64.