nixpkgs/pkgs/tools/graphics/quirc/default.nix
Vladimír Čunát 8f33b8cc93 mass rewrite of find parameters to cross-platform style
Fixes #9044, close #9667. Thanks to @taku0 for suggesting this solution.
Now we have no modes starting with `/` or `+`.

Rewrite the `-perm` parameters of find:
 - completely safe: rewrite `/0100` and `+100` to `-0100`,
 - slightly semantics-changing: rewrite `+111` to `-0100`.
I cross-verified the `find` manual pages for Linux, Darwin, FreeBSD.
2015-09-06 10:26:30 +02:00

40 lines
1.0 KiB
Nix

{stdenv, fetchgit, SDL_gfx, SDL, libjpeg, pkgconfig}:
let
s =
rec {
date = "2014-11-01";
version = "git-${date}";
baseName = "quirc";
name = "${baseName}-${version}";
url = "https://github.com/dlbeer/quirc";
rev = "3a3df0d1d6adc59fdc2cadecfaed91650b84cacb";
sha256 = "0wk2lmnw1k6m12dxs5a684mrm05x362h5kr3dwkfj8pyvdw3am18";
};
buildInputs = [
SDL SDL_gfx libjpeg pkgconfig
];
in
stdenv.mkDerivation {
inherit (s) name version;
inherit buildInputs;
src = fetchgit {
inherit (s) url sha256 rev;
};
NIX_CFLAGS_COMPILE="-I${SDL}/include/SDL";
configurePhase = ''
sed -e 's/-[og] root//g' -i Makefile
'';
preInstall = ''
mkdir -p "$out"/{bin,lib,include}
find . -maxdepth 1 -type f -perm -0100 -exec cp '{}' "$out"/bin ';'
'';
makeFlags = "PREFIX=$(out)";
meta = {
inherit (s) version;
description = ''A small QR code decoding library'';
license = stdenv.lib.licenses.isc;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
};
}