MINGW-packages icon indicating copy to clipboard operation
MINGW-packages copied to clipboard

findutils: new package

Open cyrilarnould opened this issue 2 years ago • 3 comments

Redo of #16846.

Most of the patches have been adapted from Eli Zaretskii's ezwinports, with the following exceptions:

Patch 0001 adds the poll and windows-stat-inodes gnulib modules. The poll module provides the poll functionality that is absent on mingw. windows-stat-inodes ensures the -inum option of find is working properly. The modules have been taken from the same gnulib commit that is linked in the findutils 4.9.0 release (v0.1-5153-g6ef3d78333).

Patch 0002 modifies the configure script to allow using the mountlist module on mingw. The code doesn't compile without it but it also doesn't seem broken. The mountlist module also specifies that using the header is fine on unsupported systems.

Patches 0009, 0012, 0013, and 0014 disable features that had not been implemented yet in the 4.2.30 findutils release that ezwinports is based on. I also don't know how I'd implement them; they are all based on functionality that is not available on mingw as far as I can tell.

Patch 0008 tries to address the differences in how the PATH environment variable is separated on Windows.

Patches 0006 and 0015 are fairly straightforward compilation error fixes, the latter one coming from a future upstream commit.

Patch 0016 fixes linking on clang builds.

Note that not all of the tests pass. I could provide patches for some of them if this is preferable, but for others I think there's no use case on Windows. I keep a write up in the repository which the patches are based off of:

https://github.com/cyrilarnould/findutils

cyrilarnould avatar Jun 14 '23 14:06 cyrilarnould

it has unsynced from upstream

Kreijstal avatar Jan 09 '24 08:01 Kreijstal

I plan on keeping the mingw-4.9.0 branch on the upstream v4.9.0 tag in my findutils fork. I do keep a more or less up-to-date mingw branch in my local repository, but since I rebase this from time to time I don't want to push it to github to avoid conflicts. Once upstream releases a new (tagged) version, I plan on adding a new branch (e.g. mingw-4.10.0).

cyrilarnould avatar Jan 09 '24 17:01 cyrilarnould