From c4dca7438cd60b69edd08e337b6a1fef535a3a27 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 20 Nov 2022 11:57:10 +0100 Subject: fatsort: fix build, cleanup, enable on darwin --- pkgs/tools/filesystems/fatsort/default.nix | 26 +++++++++++++---- .../filesystems/fatsort/fatsort-Makefiles.patch | 34 ---------------------- 2 files changed, 21 insertions(+), 39 deletions(-) delete mode 100644 pkgs/tools/filesystems/fatsort/fatsort-Makefiles.patch diff --git a/pkgs/tools/filesystems/fatsort/default.nix b/pkgs/tools/filesystems/fatsort/default.nix index 6db496242d244..d01ebce489c8c 100644 --- a/pkgs/tools/filesystems/fatsort/default.nix +++ b/pkgs/tools/filesystems/fatsort/default.nix @@ -1,4 +1,9 @@ -{lib, stdenv, fetchurl, help2man}: +{ lib +, stdenv +, fetchurl +, help2man +, libiconv +}: stdenv.mkDerivation rec { version = "1.6.4.625"; @@ -9,17 +14,28 @@ stdenv.mkDerivation rec { sha256 = "sha256-mm+JoGQLt4LYL/I6eAyfCuw9++RoLAqO2hV+CBBkLq0="; }; - patches = [ ./fatsort-Makefiles.patch ]; + buildInputs = [ help2man ] + ++ lib.optionals stdenv.isDarwin [ libiconv ]; - buildInputs = [ help2man ]; + makeFlags = [ + "CC=${stdenv.cc.targetPrefix}cc" + "LD=${stdenv.cc.targetPrefix}cc" + ]; - makeFlags = [ "PREFIX=${placeholder "out"}" ]; + # 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.gpl2; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/tools/filesystems/fatsort/fatsort-Makefiles.patch b/pkgs/tools/filesystems/fatsort/fatsort-Makefiles.patch deleted file mode 100644 index 51775edfb41d1..0000000000000 --- a/pkgs/tools/filesystems/fatsort/fatsort-Makefiles.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -uNr fatsort-1.6.2.605.orig/Makefile fatsort-1.6.2.605.new/Makefile ---- fatsort-1.6.2.605.orig/Makefile 2019-11-16 16:40:27.000000000 +0100 -+++ fatsort-1.6.2.605.new/Makefile 2020-05-10 21:34:34.820874026 +0200 -@@ -1,4 +1,5 @@ --MANDIR=/usr/local/share/man/man1 -+PREFIX?=/usr/local -+MANDIR=$(PREFIX)/share/man/man1 - - INSTALL_FLAGS=-m 0755 -p -D - -diff -uNr fatsort-1.6.2.605.orig/src/Makefile fatsort-1.6.2.605.new/src/Makefile ---- fatsort-1.6.2.605.orig/src/Makefile 2018-11-17 00:40:59.000000000 +0100 -+++ fatsort-1.6.2.605.new/src/Makefile 2020-05-10 21:33:52.053391027 +0200 -@@ -30,7 +30,7 @@ - override CFLAGS += -D __CYGWIN__ - override CFLAGS += -D __LINUX__ - override LDFLAGS += -liconv -- SBINDIR=/usr/local/sbin -+ SBINDIR=$(PREFIX)/sbin - endif - else - ifdef MINGW -@@ -60,9 +60,9 @@ - # OS X's install does not support the '-D' flag. - INSTALL_FLAGS=-m 0755 -p - # Mac OS X does not have a "/usr/local/sbin" -- SBINDIR=/usr/local/bin -+ SBINDIR=$(PREFIX)/bin - else -- SBINDIR=/usr/local/sbin -+ SBINDIR=$(PREFIX)/sbin - endif - endif - endif -- cgit 1.4.1