Skip to content

Allow to replace ln -fs and hardlink on Windows by default - #8790

Closed
oech3 wants to merge 5 commits into
uutils:mainfrom
oech3:wrap-ln
Closed

Allow to replace ln -fs and hardlink on Windows by default#8790
oech3 wants to merge 5 commits into
uutils:mainfrom
oech3:wrap-ln

Conversation

@oech3

@oech3 oech3 commented Oct 2, 2025

Copy link
Copy Markdown
Contributor

Allow to replace ln -fs for multicall-binary with any command.
make LN=ln fixes argv[0] .
Closes #7928

@github-actions

github-actions Bot commented Oct 2, 2025

Copy link
Copy Markdown

GNU testsuite comparison:

Skip an intermittent issue tests/misc/tee (fails in this run but passes in the 'main' branch)
Skip an intermittent issue tests/timeout/timeout (fails in this run but passes in the 'main' branch)

@codspeed-hq

codspeed-hq Bot commented Oct 2, 2025

Copy link
Copy Markdown

CodSpeed Performance Report

Merging #8790 will not alter performance

Comparing oech3:wrap-ln (d213e49) with main (be25344)

Summary

✅ 69 untouched
⏩ 73 skipped1

Footnotes

  1. 73 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@oech3

oech3 commented Oct 3, 2025

Copy link
Copy Markdown
Contributor Author

@ognevny Does uutils-coreutils of MSYS2 need to have hardlinks of multi-call binary by default?

@ognevny

ognevny commented Oct 3, 2025

Copy link
Copy Markdown
Contributor

multicall binary uses symlinks. there are problems with shipping them, so we use "classical" approach with distributing individual binaries. https://www.msys2.org/docs/symlinks/

edit: oh, I see. hard links are acceptable for us, because they are supported in older versions of Windows

@oech3

oech3 commented Oct 3, 2025

Copy link
Copy Markdown
Contributor Author

I don't know does pacman of MSYS2 support hardlink. If supported, I'll make LN=ln default on win.

@ognevny

ognevny commented Oct 3, 2025

Copy link
Copy Markdown
Contributor

I don't know does pacman of MSYS2 support hardlink

it's supported. we have a whole package with hardlinks!

@oech3 oech3 changed the title Allow to replace ln command & cleanup Allow to replace ln -fs and hardlink on Windows by default Oct 3, 2025
@oech3

oech3 commented Oct 3, 2025

Copy link
Copy Markdown
Contributor Author

Failing tests by network err: #8787 (comment)

@github-actions

github-actions Bot commented Oct 3, 2025

Copy link
Copy Markdown

GNU testsuite comparison:

Skipping an intermittent issue tests/timeout/timeout (passes in this run but fails in the 'main' branch)

@oech3 oech3 closed this Oct 4, 2025
@oech3
oech3 deleted the wrap-ln branch October 4, 2025 08:07
@github-actions

github-actions Bot commented Oct 4, 2025

Copy link
Copy Markdown

GNU testsuite comparison:

Skip an intermittent issue tests/tail/overlay-headers (fails in this run but passes in the 'main' branch)
Skip an intermittent issue tests/timeout/timeout (fails in this run but passes in the 'main' branch)

@oech3

oech3 commented Oct 5, 2025

Copy link
Copy Markdown
Contributor Author

@ognevny It seems hardlink patch is not enough and MULTICALL=y fails on MSYS2 because of missing gmake.exe. pacman -F gmake.exe returns none. Simply sed -i "s/gmake/make/" did not help.

@ognevny

ognevny commented Oct 5, 2025

Copy link
Copy Markdown
Contributor

missing gmake.exe. pacman -F gmake.exe returns none

gmake is also not presented on Archlinux, so it shouldn't be used at all

@oech3

This comment was marked as outdated.

@oech3

This comment was marked as outdated.

@oech3

oech3 commented Oct 5, 2025

Copy link
Copy Markdown
Contributor Author

It seems gmake err happen if I tried to backport hardlink feature by sed.
I can build MULTICALL=y with manually applied patch on MSYS2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants