diff options
Diffstat (limited to 'gnu/packages/protobuf.scm')
-rw-r--r-- | gnu/packages/protobuf.scm | 41 |
1 files changed, 31 insertions, 10 deletions
diff --git a/gnu/packages/protobuf.scm b/gnu/packages/protobuf.scm index 995d543059..322ce61b13 100644 --- a/gnu/packages/protobuf.scm +++ b/gnu/packages/protobuf.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org> ;;; @@ -84,7 +84,7 @@ data in motion, or as a file format for data at rest.") (define-public protobuf (package (name "protobuf") - (version "3.14.0") + (version "3.17.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/google/protobuf/releases/" @@ -92,7 +92,7 @@ data in motion, or as a file format for data at rest.") version ".tar.gz")) (sha256 (base32 - "0nan2wkkwkcx3qyx0cf5vfzjcjhr5qgh4jfx6v2lwpf5q03mmv2h")))) + "1jzqrklhj9grs6xbddyb5dyxfbgbgbyhl5zig8ml50wb22gwkkji")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib))) (outputs (list "out" @@ -100,6 +100,26 @@ data in motion, or as a file format for data at rest.") (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'disable-broken-tests + ;; The following tests fail on 32 bit architectures such as + ;; i686-linux. + (lambda _ + (let-syntax ((disable-tests + (syntax-rules () + ((_ file test ...) + (substitute* file + ((test name) + (string-append "DISABLED_" name)) ...))))) + ;; See: https://github.com/protocolbuffers/protobuf/issues/8460. + (disable-tests "src/google/protobuf/any_test.cc" + "TestPackFromSerializationExceedsSizeLimit") + ;; See: https://github.com/protocolbuffers/protobuf/issues/8459. + (disable-tests "src/google/protobuf/arena_unittest.cc" + "SpaceAllocated_and_Used" + "BlockSizeSmallerThanAllocation") + ;; See: https://github.com/protocolbuffers/protobuf/issues/8082. + (disable-tests "src/google/protobuf/io/zero_copy_stream_unittest.cc" + "LargeOutput")))) (add-after 'install 'move-static-libraries (lambda* (#:key outputs #:allow-other-keys) ;; Move static libraries to the "static" output. @@ -111,8 +131,7 @@ data in motion, or as a file format for data at rest.") (for-each (lambda (file) (install-file file slib) (delete-file file)) - (find-files lib "\\.a$")) - #t)))))) + (find-files lib "\\.a$")))))))) (home-page "https://github.com/google/protobuf") (synopsis "Data encoding for remote procedure calls (RPCs)") (description @@ -123,7 +142,8 @@ internal RPC protocols and file formats.") ;; Tensorflow requires version 3.6 specifically. (define-public protobuf-3.6 - (package/inherit protobuf + (package + (inherit protobuf) (version "3.6.1") (source (origin (method url-fetch) @@ -136,8 +156,8 @@ internal RPC protocols and file formats.") ;; The 3.5 series are the last versions that do not require C++ 11. (define-public protobuf-3.5 - (package/inherit - protobuf + (package + (inherit protobuf) (version "3.5.1") (source (origin (method url-fetch) @@ -289,7 +309,8 @@ structured data.") ;; For tensorflow. (define-public python-protobuf-3.6 - (package/inherit python-protobuf + (package + (inherit python-protobuf) (name "python-protobuf") (version (package-version protobuf-3.6) ) (source @@ -309,7 +330,7 @@ structured data.") (arguments `(#:phases (modify-phases %standard-phases - (add-before 'add-source-to-load-path 'change-working-directory + (add-before 'expand-load-path 'change-working-directory (lambda _ (chdir "editors") #t))))) (home-page "https://github.com/protocolbuffers/protobuf") (synopsis "Protocol buffers major mode for Emacs") |