Merge #233306: diffutils: 3.9 -> 3.10

...into staging
This commit is contained in:
Vladimír Čunát 2023-06-11 09:22:33 +02:00
commit 2b50c0e06b
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
2 changed files with 6 additions and 30 deletions

View File

@ -7,28 +7,16 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "diffutils"; pname = "diffutils";
version = "3.9"; version = "3.10";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/diffutils/diffutils-${version}.tar.xz"; url = "mirror://gnu/diffutils/diffutils-${version}.tar.xz";
hash = "sha256-2A076QogGGjeg9eNrTQTrYgWDMU7zDbrnq98INvwI/E="; hash = "sha256-kOXpPMck5OvhLt6A3xY0Bjx6hVaSaFkZv+YLVWyb0J4=";
}; };
patches = [
# Backport of a fix for 'diff -D' output.
# TODO: remove when updating to 3.10.
./fix-diff-D.patch
];
postPatch = ''
# avoid the need for help2man
# TODO: can be removed when fix-diff-D.patch is removed.
touch man/diff.1
'';
outputs = [ "out" "info" ]; outputs = [ "out" "info" ];
nativeBuildInputs = [ xz.bin ]; nativeBuildInputs = [ (lib.getBin xz) ];
/* If no explicit coreutils is given, use the one from stdenv. */ /* If no explicit coreutils is given, use the one from stdenv. */
buildInputs = [ coreutils ]; buildInputs = [ coreutils ];
@ -38,10 +26,13 @@ stdenv.mkDerivation rec {
lib.optional (coreutils != null) "PR_PROGRAM=${coreutils}/bin/pr" lib.optional (coreutils != null) "PR_PROGRAM=${coreutils}/bin/pr"
++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "gl_cv_func_getopt_gnu=yes"; ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "gl_cv_func_getopt_gnu=yes";
doCheck = true;
meta = with lib; { meta = with lib; {
homepage = "https://www.gnu.org/software/diffutils/diffutils.html"; homepage = "https://www.gnu.org/software/diffutils/diffutils.html";
description = "Commands for showing the differences between files (diff, cmp, etc.)"; description = "Commands for showing the differences between files (diff, cmp, etc.)";
license = licenses.gpl3; license = licenses.gpl3;
platforms = platforms.unix; platforms = platforms.unix;
maintainers = with maintainers; [ das_j ];
}; };
} }

View File

@ -1,15 +0,0 @@
https://git.savannah.gnu.org/cgit/diffutils.git/patch/?id=ba08fbbb0ca5da455bf695236c57bc50e7faed50
https://github.com/NixOS/nixpkgs/pull/213421#issuecomment-1407749912
Fix 'diff -D' regression
--- a/src/diff.c
+++ b/src/diff.c
@@ -416,7 +416,7 @@ main (int argc, char **argv)
char *base = b;
int changes = 0;
- for (i = 0; i < sizeof sizeof C_ifdef_group_formats; i++)
+ for (i = 0; i < sizeof C_ifdef_group_formats; i++)
{
char ch = C_ifdef_group_formats[i];
switch (ch)