X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/dc8621a2c1f010bf5d8b3365e26b66603a8f2fd4..70ebab5aa773e18f650d771ebf7b492a098561cd:/gnu/packages/protobuf.scm diff --git a/gnu/packages/protobuf.scm b/gnu/packages/protobuf.scm index 73169216b4..4ea36a2fba 100644 --- a/gnu/packages/protobuf.scm +++ b/gnu/packages/protobuf.scm @@ -2,8 +2,8 @@ ;;; Copyright © 2014 Ludovic Courtès ;;; Copyright © 2016 Daniel Pimentel ;;; Copyright © 2016 Leo Famulari -;;; Copyright © 2017, 2018 Ricardo Wurmus -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,6 +27,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) + #:use-module (guix build-system emacs) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages compression) #:use-module (gnu packages gcc) @@ -74,7 +75,7 @@ data in motion, or as a file format for data at rest.") (define-public protobuf (package (name "protobuf") - (version "3.5.1") + (version "3.11.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/google/protobuf/releases/" @@ -82,7 +83,7 @@ data in motion, or as a file format for data at rest.") version ".tar.gz")) (sha256 (base32 - "14j0427ykjzrd9a66c2mpk0sjcccjlsx6q8ww6hzwb6sha3vm3f2")))) + "0l8a1sgzhwwx5j5hv9n9zx8vkdwwn5gvd9dcpkkz4h0j17k1zywz")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib))) (outputs (list "out" @@ -111,9 +112,9 @@ yet extensible format. Google uses Protocol Buffers for almost all of its internal RPC protocols and file formats.") (license license:bsd-3))) -(define-public protobuf-next - (package (inherit protobuf) - (name "protobuf") +;; Tensorflow requires version 3.6 specifically. +(define-public protobuf-3.6 + (package/inherit protobuf (version "3.6.1") (source (origin (method url-fetch) @@ -124,6 +125,20 @@ internal RPC protocols and file formats.") (base32 "0a955bz59ihrb5wg7dwi12xajdi5pmz4bl0g147rbdwv393jwwxk")))))) +;; The 3.5 series are the last versions that do not require C++ 11. +(define-public protobuf-3.5 + (package/inherit + protobuf + (version "3.5.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/google/protobuf/releases/" + "download/v" version "/protobuf-cpp-" + version ".tar.gz")) + (sha256 + (base32 + "14j0427ykjzrd9a66c2mpk0sjcccjlsx6q8ww6hzwb6sha3vm3f2")))))) + ;; XXX Remove this old version when no other packages depend on it. (define-public protobuf-2 (package (inherit protobuf) @@ -140,7 +155,7 @@ internal RPC protocols and file formats.") (define-public protobuf-c (package (name "protobuf-c") - (version "1.3.1") + (version "1.3.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/protobuf-c/protobuf-c/" @@ -148,7 +163,7 @@ internal RPC protocols and file formats.") "/protobuf-c-" version ".tar.gz")) (sha256 (base32 - "0rr2kn7804cvhdm6lzz04gz76vy0fzj15dijbr17nv8x34x2sisi")))) + "0x4ybd9rfd878p2imz0hb8zxfd7l60vbdw7cg84dnysr9kqm3wjk")))) (build-system gnu-build-system) (inputs `(("protobuf" ,protobuf))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -165,7 +180,7 @@ code.") (define-public protozero (package (name "protozero") - (version "1.6.7") + (version "1.6.8") (source (origin (method git-fetch) @@ -174,7 +189,7 @@ code.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1ryvn3iwxiaih3mvyy45nbwxnhzfc8vby0xh9m6d6fpakhcpf6s3")))) + (base32 "1hfijpfylf1c71wa3mk70gjc88b6k1q7cxb87cwqdflw5q2x8ma6")))) (build-system cmake-build-system) (home-page "https://github.com/mapbox/protozero") (synopsis "Minimalistic protocol buffer decoder and encoder in C++") @@ -188,14 +203,14 @@ encoder in C++. The developer using protozero has to manually translate the (define-public python-protobuf (package (name "python-protobuf") - (version "3.5.2") + (version "3.11.3") (source (origin (method url-fetch) (uri (pypi-uri "protobuf" version)) (sha256 (base32 - "1q4b1m55w4gvcbzklbk8iylaii98n4in41k27d94w8ypbwlrm1q9")))) + "07qby3yc2a8a1vsxnc79j687q4r68k1d3npni7bldwmd3m6rfz67")))) (build-system python-build-system) (propagated-inputs `(("python-six" ,python-six))) @@ -208,3 +223,34 @@ mechanism for serializing structured data.") (define-public python2-protobuf (package-with-python2 python-protobuf)) + +;; For tensorflow. +(define-public python-protobuf-3.6 + (package/inherit python-protobuf + (name "python-protobuf") + (version (package-version protobuf-3.6) ) + (source + (origin + (method url-fetch) + (uri (pypi-uri "protobuf" version)) + (sha256 + (base32 + "04bqb12smlckzmgkj6vgmpbr3cby0n6726cmz33bqr7kn1vb728l")))))) + +(define-public emacs-protobuf-mode + (package + (name "emacs-protobuf-mode") + (version (package-version protobuf)) + (source (package-source protobuf)) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'add-source-to-load-path 'change-working-directory + (lambda _ (chdir "editors") #t))))) + (home-page "https://github.com/protocolbuffers/protobuf") + (synopsis "Protocol buffers major mode for Emacs") + (description + "This package provides an Emacs major mode for editing Protocol Buffer +source files.") + (license license:bsd-3)))