guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/03: gnu: cereal: Use cmake to build and install the library.


From: guix-commits
Subject: 01/03: gnu: cereal: Use cmake to build and install the library.
Date: Tue, 21 Sep 2021 08:05:38 -0400 (EDT)

lilyp pushed a commit to branch master
in repository guix.

commit dfc0fedc2cd55394d20499d3f571b8f175019547
Author: Ivan Gankevich <i.gankevich@spbu.ru>
AuthorDate: Tue Sep 21 01:15:48 2021 +0300

    gnu: cereal: Use cmake to build and install the library.
    
    * gnu/packages/serialization.scm (cereal): Use cmake to build and
      install the library.
    
    Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
---
 gnu/packages/serialization.scm | 35 +++++++++++------------------------
 1 file changed, 11 insertions(+), 24 deletions(-)

diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 0e79b7c..196141a 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -142,32 +142,19 @@ implement RPC protocols.")
          "0hc8wh9dwpc1w1zf5lfss4vg5hmgpblqxbrpp1rggicpx9ar831p"))))
     (build-system cmake-build-system)
     (arguments
-     `(;; The only included tests are portability tests requiring
-       ;; cross-compilation and boost.  Since we are building cereal on more
-       ;; platforms anyway, there is no compelling reason to build the tests.
-       #:tests? #f
-       #:out-of-source? #f
+     `(#:configure-flags '("-DSKIP_PORTABILITY_TEST=ON")
        #:phases
        (modify-phases %standard-phases
-         (delete 'configure)
-         (replace 'build
-          (lambda _
-            (substitute* "doc/doxygen.in"
-              (("@CMAKE_CURRENT_BINARY_DIR@") ".")
-              (("@CMAKE_CURRENT_SOURCE_DIR@") "."))
-            (with-directory-excursion "doc"
-              (invoke "doxygen" "doxygen.in"))))
-         ;; There is no "install" target, so we have to provide our own
-         ;; "install" phase.
-         (replace 'install
-          (lambda* (#:key outputs #:allow-other-keys)
-            (let* ((out     (assoc-ref outputs "out"))
-                   (doc     (string-append out "/share/cereal/docs"))
-                   (include (string-append out "/include/cereal")))
-              (mkdir-p doc)
-              (mkdir-p include)
-              (copy-recursively "include/cereal" include)
-              (copy-recursively "doc/html" doc)))))))
+         (add-before 'configure 'skip-sandbox
+           (lambda _
+             (substitute* "CMakeLists.txt"
+               (("add_subdirectory\\(sandbox\\)") ""))))
+         (add-after 'install 'install-doc
+           (lambda _
+             (let ((doc (string-append %output "/share/doc/html")))
+               (invoke "make" "doc")
+               (mkdir-p doc)
+               (copy-recursively "doc/html" doc)))))))
     (native-inputs
      `(("doxygen" ,doxygen)))
     (home-page "https://uscilab.github.io/cereal/";)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]