diff --git a/pkgs/development/libraries/protobuf/2.5.nix b/pkgs/development/libraries/protobuf/2.5.nix deleted file mode 100644 index 9d7bb38cf3c..00000000000 --- a/pkgs/development/libraries/protobuf/2.5.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ callPackage, fetchurl, ... } @ args: - -callPackage ./generic.nix (args // rec { - version = "2.5.0"; - # make sure you test also -A pythonPackages.protobuf - src = fetchurl { - url = "http://protobuf.googlecode.com/files/${version}.tar.bz2"; - sha256 = "0xxn9gxhvsgzz2sgmihzf6pf75clr05mqj6218camwrwajpcbgqk"; - }; -}) diff --git a/pkgs/development/libraries/protobuf/generic.nix b/pkgs/development/libraries/protobuf/generic.nix deleted file mode 100644 index 7d64df43626..00000000000 --- a/pkgs/development/libraries/protobuf/generic.nix +++ /dev/null @@ -1,61 +0,0 @@ -{ lib, stdenv, version, src -, autoreconfHook, zlib, gtest -, ... -}: - -stdenv.mkDerivation { - pname = "protobuf"; - inherit version; - - inherit src; - - postPatch = '' - rm -rf gtest - cp -r ${gtest.src}/googletest gtest - chmod -R a+w gtest - '' + lib.optionalString stdenv.isDarwin '' - substituteInPlace src/google/protobuf/testing/googletest.cc \ - --replace 'tmpnam(b)' '"'$TMPDIR'/foo"' - ''; - - outputs = [ "out" "lib" ]; - - nativeBuildInputs = [ autoreconfHook ]; - buildInputs = [ zlib ]; - - # The generated C++ code uses static initializers which mutate a global data - # structure. This causes problems for an executable when: - # - # 1) it dynamically links to two libs, both of which contain generated C++ for - # the same proto file, and - # 2) the two aforementioned libs both dynamically link to libprotobuf. - # - # One solution is to statically link libprotobuf, that way the global - # variables are not shared; in fact, this is necessary for the python Mesos - # binding to not crash, as the python lib contains two C extensions which - # both refer to the same proto schema. - # - # See: https://github.com/NixOS/nixpkgs/pull/19064#issuecomment-255082684 - # https://github.com/google/protobuf/issues/1489 - dontDisableStatic = true; - configureFlags = [ - "CFLAGS=-fPIC" - "CXXFLAGS=-fPIC" - ]; - - doCheck = true; - - meta = { - description = "Protocol Buffers - 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 = "mBSD"; - homepage = "https://developers.google.com/protocol-buffers/"; - platforms = lib.platforms.unix; - }; - - passthru.version = version; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 93670a15f35..6d1eeeefd43 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19753,7 +19753,6 @@ with pkgs; protobuf3_7 = callPackage ../development/libraries/protobuf/3.7.nix { }; protobuf3_6 = callPackage ../development/libraries/protobuf/3.6.nix { }; protobuf3_1 = callPackage ../development/libraries/protobuf/3.1.nix { }; - protobuf2_5 = callPackage ../development/libraries/protobuf/2.5.nix { }; protobufc = callPackage ../development/libraries/protobufc/1.3.nix { };