nixpkgs/pkgs/tools/filesystems/grive2/default.nix
Sergei Trofimovich b458ef900f grive2: pull gcc-12 upstream fix
Without the change build fails on `master` as:

    [ 14%] Building CXX object libgrive/CMakeFiles/grive.dir/src/base/Syncer.cc.o
    In file included from /build/source/libgrive/src/base/Syncer.cc:20:
    /build/source/libgrive/src/base/Syncer.hh:58:22: error: 'unique_ptr' in namespace 'std' does not name a template type
       58 |         virtual std::unique_ptr<Feed> GetFolders() = 0;
          |                      ^~~~~~~~~~

Full build log: https://hydra.nixos.org/log/48jk4w7l1frlf6x8xjli2vyqqxk24ib1-grive2-0.5.3.drv
2023-05-06 11:44:26 +01:00

46 lines
992 B
Nix

{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, pkg-config
, yajl
, cmake
, libgcrypt
, curl
, expat
, boost
, libiberty
}:
stdenv.mkDerivation rec {
version = "0.5.3";
pname = "grive2";
src = fetchFromGitHub {
owner = "vitalif";
repo = "grive2";
rev = "v${version}";
sha256 = "sha256-P6gitA5cXfNbNDy4ohRLyXj/5dUXkCkOdE/9rJPzNCg=";
};
patches = [
# Backport gcc-12 support:
# https://github.com/vitalif/grive2/pull/363
(fetchpatch {
name = "gcc-12.patch";
url = "https://github.com/vitalif/grive2/commit/3cf1c058a3e61deb370dde36024a106a213ab2c6.patch";
hash = "sha256-v2Pb6Qvgml/fYzh/VCjOvEVnFYMkOHqROvLLe61DmKA=";
})
];
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ libgcrypt yajl curl expat boost libiberty ];
meta = with lib; {
description = "A console Google Drive client";
homepage = "https://github.com/vitalif/grive2";
license = licenses.gpl2;
platforms = platforms.linux;
};
}