nixpkgs/pkgs/tools/filesystems/hubicfuse/default.nix
Sergei Trofimovich 2cdca0320d hubicfuse: pull upstream fix for -fno-common tollchains
Without the change build fails on upstream gcc-10 as:

    ld: /build/ccadKet8.o:/build/source/cloudfsapi.h:73: multiple definition of
      `public_container'; /build/ccoYHN4x.o:/build/source/cloudfsapi.h:73: first defined here
2022-05-17 10:16:27 +01:00

45 lines
1.4 KiB
Nix

{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, curl, openssl, fuse, libxml2, json_c, file }:
stdenv.mkDerivation rec {
pname = "hubicfuse";
version = "3.0.1";
src = fetchFromGitHub {
owner = "TurboGit";
repo = "hubicfuse";
rev = "v${version}";
sha256 = "1x988hfffxgvqxh083pv3lj5031fz03sbgiiwrjpaiywfbhm8ffr";
};
patches = [
# Fix Darwin build
# https://github.com/TurboGit/hubicfuse/pull/159
(fetchpatch {
url = "https://github.com/TurboGit/hubicfuse/commit/b460f40d86bc281a21379158a7534dfb9f283786.patch";
sha256 = "0nqvcbrgbc5dms8fkz3brlj40yn48p36drabrnc26gvb3hydh5dl";
})
# UPstream fix for build failure on -fno-common toolchains
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/TurboGit/hubicfuse/commit/34a6c3e57467b5f7e9befe2171bf4292893c5a18.patch";
sha256 = "0k1jz2h8sdhmi0srx0adbyrcrm57j4annj84yw6hdrly5hsf7bzc";
})
];
nativeBuildInputs = [ pkg-config ];
buildInputs = [ curl openssl fuse libxml2 json_c file ];
postInstall = ''
install hubic_token $out/bin
mkdir -p $out/sbin
ln -sf $out/bin/hubicfuse $out/sbin/mount.hubicfuse
'';
meta = with lib; {
homepage = "https://github.com/TurboGit/hubicfuse";
description = "FUSE-based filesystem to access hubic cloud storage";
platforms = platforms.unix;
license = licenses.mit;
maintainers = [ maintainers.jpierre03 ];
};
}