From 6f3f10490ed254123149e9bbd688789333dc3622 Mon Sep 17 00:00:00 2001 From: Qingping Hou Date: Sun, 31 Jul 2016 16:23:53 -0700 Subject: [PATCH] protobuf: add 3.0.0b2 For tensorflow --- .../libraries/protobuf/3.0.0-beta-2.nix | 43 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 45 insertions(+) create mode 100644 pkgs/development/libraries/protobuf/3.0.0-beta-2.nix diff --git a/pkgs/development/libraries/protobuf/3.0.0-beta-2.nix b/pkgs/development/libraries/protobuf/3.0.0-beta-2.nix new file mode 100644 index 00000000000..a06d4cef968 --- /dev/null +++ b/pkgs/development/libraries/protobuf/3.0.0-beta-2.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchFromGitHub , autoreconfHook, zlib, gmock }: + +stdenv.mkDerivation rec { + name = "protobuf-${version}"; + + version = "3.0.0-beta-2"; + # make sure you test also -A pythonPackages.protobuf + src = fetchFromGitHub { + owner = "google"; + repo = "protobuf"; + rev = "v${version}"; + sha256 = "0cbr1glgma5vakabsjwcs41pcnn8yphhn037l0zd121zb9gdaqc1"; + }; + + postPatch = '' + rm -rf gmock + cp -r ${gmock.source} gmock + chmod -R a+w gmock + '' + stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace src/google/protobuf/testing/googletest.cc \ + --replace 'tmpnam(b)' '"'$TMPDIR'/foo"' + ''; + + buildInputs = [ autoreconfHook zlib ]; + + enableParallelBuilding = true; + + doCheck = true; + + meta = { + description = "Google's data interchange format"; + longDescription = + ''Protocol Buffers are a way of encoding structured data in an efficient + yet extensible format. Google uses Protocol Buffers for almost all of + its internal RPC protocols and file formats. + ''; + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.unix; + homepage = https://developers.google.com/protocol-buffers/; + }; + + passthru.version = version; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e9b53cf251a..42cf49c1143 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9081,6 +9081,8 @@ in protobuf = protobuf2_6; protobuf3_0 = lowPrio (callPackage ../development/libraries/protobuf/3.0.nix { }); + # 3.0.0-beta-2 is only introduced for tensorflow. remove this version when tensorflow is moved to 3.0. + protobuf3_0_0b2 = lowPrio (callPackage ../development/libraries/protobuf/3.0.0-beta-2.nix { }); protobuf2_6 = callPackage ../development/libraries/protobuf/2.6.nix { }; protobuf2_5 = callPackage ../development/libraries/protobuf/2.5.nix { };