summary refs log tree commit diff
path: root/gnu/packages/storage.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/storage.scm')
-rw-r--r--gnu/packages/storage.scm23
1 files changed, 14 insertions, 9 deletions
diff --git a/gnu/packages/storage.scm b/gnu/packages/storage.scm
index aa7d34acc1..5c702e3362 100644
--- a/gnu/packages/storage.scm
+++ b/gnu/packages/storage.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -108,7 +108,7 @@
                (string-append "-DXFS_INCLUDE_DIR="
                               (assoc-ref %build-inputs "xfsprogs") "/include")
                "-DCMAKE_INSTALL_LOCALSTATEDIR=/var"
-               "-DENABLE_SHARED=ON"
+               "-DBUILD_SHARED_LIBS=ON"
                "-DWITH_SYSTEM_ROCKSDB=ON"
                "-DWITH_SYSTEM_BOOST=ON"
                "-DWITH_PYTHON3=ON"
@@ -236,11 +236,6 @@
                  (("^add_ceph_test\\(osd-copy-from\\.sh.*$") "\n")
                  (("^add_ceph_test\\(osd-fast-mark-down\\.sh.*$") "\n"))
                #t)))
-         (add-before 'configure 'gcc-workaround
-           (lambda _
-             (unsetenv "C_INCLUDE_PATH")
-             (unsetenv "CPLUS_INCLUDE_PATH")
-             #t))
          (add-before 'check 'set-check-environment
            (lambda _
              ;; Run tests in parallel.
@@ -284,12 +279,22 @@
                            (wrap-program (string-append out "/bin/" executable)
                              `("PYTHONPATH" ":" prefix (,PYTHONPATH))))
                          scripts)
+               #t)))
+         (add-before 'validate-runpath 'remove-test-executables
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               ;; FIXME: The BUILD_SHARED_LIBS CMake flag causes the test executables
+               ;; to link the bundled googletest dynamically, which in turn causes
+               ;; RUNPATH validation failures because 'libgtest.so' and friends do
+               ;; not get absolute RUNPATH entries.  The next version of Ceph can use
+               ;; an external googletest; for now just remove the test executables.
+               (for-each delete-file (find-files (string-append out "/bin")
+                                                 "ceph_(test|perf)"))
                #t))))))
     (outputs
      '("out" "lib"))
     (native-inputs
-     `(("gcc" ,gcc-7)                      ;7 or later is required
-       ("gperf" ,gperf)
+     `(("gperf" ,gperf)
        ("pkg-config" ,pkg-config)
        ("python-cython" ,python-cython)
        ("python-sphinx" ,python-sphinx)