09e702a505
libiconv is already defined per-platform. The actual libiconv library won't be built on platforms like Linux where it doesn't need to be, so there's no need to maintain a separate platform list here. We have to override the uname values, or they'll be detected for the build platform, because the build system just runs uname(1). Tested by cross compiling to x86_64-freebsd from x86_64-linux.
43 lines
1.1 KiB
Nix
43 lines
1.1 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchurl
|
|
, help2man
|
|
, libiconv
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
version = "1.6.4.625";
|
|
pname = "fatsort";
|
|
|
|
src = fetchurl {
|
|
url = "mirror://sourceforge/fatsort/${pname}-${version}.tar.xz";
|
|
sha256 = "sha256-mm+JoGQLt4LYL/I6eAyfCuw9++RoLAqO2hV+CBBkLq0=";
|
|
};
|
|
|
|
buildInputs = [ help2man libiconv ];
|
|
|
|
makeFlags = [
|
|
"CC=${stdenv.cc.targetPrefix}cc"
|
|
"LD=${stdenv.cc.targetPrefix}cc"
|
|
|
|
"UNAME_O=${stdenv.hostPlatform.uname.system}"
|
|
"UNAME_S=${stdenv.hostPlatform.uname.system}"
|
|
];
|
|
|
|
# make install target is broken (DESTDIR usage is insane)
|
|
# it's easier to just skip make and install manually
|
|
installPhase = ''
|
|
runHook preInstall
|
|
install -D -m 755 ./src/fatsort $out/bin/fatsort
|
|
install -D -m 644 ./man/fatsort.1 $out/man/man1/fatsort.1
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = with lib; {
|
|
homepage = "http://fatsort.sourceforge.net/";
|
|
description = "Sorts FAT partition table, for devices that don't do sorting of files";
|
|
maintainers = [ maintainers.kovirobi ];
|
|
license = licenses.gpl2Plus;
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|