diff options
author | Ivan Gankevich <i.gankevich@spbu.ru> | 2021-09-21 01:15:48 +0300 |
---|---|---|
committer | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2021-09-21 14:03:17 +0200 |
commit | dfc0fedc2cd55394d20499d3f571b8f175019547 (patch) | |
tree | 4e441e93dc2f7694056a93529927460f802fea67 | |
parent | 9057035d892266c1b90242d0652a642e13b09d79 (diff) | |
download | guix-dfc0fedc2cd55394d20499d3f571b8f175019547.tar guix-dfc0fedc2cd55394d20499d3f571b8f175019547.tar.gz |
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>
-rw-r--r-- | gnu/packages/serialization.scm | 35 |
1 files changed, 11 insertions, 24 deletions
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 0e79b7c89c..196141ace8 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/") |