Randy Eckenrode 2026-05-07 18:16:31 -04:00
commit 857fccfb37
No known key found for this signature in database
GPG key ID: 64C1CD4EC2A600D9
3 changed files with 44 additions and 4 deletions

View file

@ -1,6 +1,6 @@
{
lib,
apple-sdk,
apple-sdk_26,
libutil,
mkAppleDerivation,
pkg-config,
@ -14,11 +14,19 @@ mkAppleDerivation {
"man"
];
patches = [
# Use `scandir` on versions of macOS older than 26.4.
./patches/0001-Fall-back-to-scandir.patch
];
xcodeHash = "sha256-Ox8Ii2sUuledUttZ64DaHC0iFlUybs3lNZ23IDeziPM=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ libutil ];
buildInputs = [
apple-sdk_26
libutil
];
meta = {
description = "BSD patch commands for Darwin";

View file

@ -0,0 +1,32 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Randy Eckenrode <randy@largeandhighquality.com>
Date: Fri, 8 May 2026 19:34:31 -0400
Subject: [PATCH] Fall-back-to-scandir
---
diff/diffdir.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/diff/diffdir.c b/diff/diffdir.c
index 7583f98..cc476bc 100644
--- a/diff/diffdir.c
+++ b/diff/diffdir.c
@@ -92,8 +92,13 @@ vscandir(struct inodetree *tree, const char *path, struct dirent ***dirp,
*dirp = NULL;
return (0);
}
- if ((ret = fdscandir(fd, dirp, select, compar)) < 0)
- goto fail;
+ if (__builtin_available(macOS 26.4, *)) {
+ if ((ret = fdscandir(fd, dirp, select, compar)) < 0)
+ goto fail;
+ } else {
+ if ((ret = scandir(path, dirp, select, compar)) < 0)
+ goto fail;
+ }
RB_INSERT(inodetree, tree, ino);
close(fd);
return (ret);
--
2.51.2

View file

@ -244,8 +244,8 @@
"version": "951.7"
},
"patch_cmds": {
"hash": "sha256-fDY2NOT3DnU5pm06cHSs+JJcA/EFP8Lxjg7sErUerJ0=",
"version": "72"
"hash": "sha256-XoLEVrvu9pfHPalkBQDH0IfzcX8FLkcEBmW03cq2jQY=",
"version": "75"
},
"ppp": {
"hash": "sha256-syc0tbDPACswBNNrTaOsC6Lyix6d7O9634PBCjnuqOs=",