Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Teach our CMake configuration to optionally skip hard-linking the dashed built-ins #3056

Merged
merged 2 commits into from
Mar 5, 2021

Conversation

dscho
Copy link
Member

@dscho dscho commented Feb 24, 2021

The fact that git-add.exe (and over a hundred more commands) are still hard-linked in libexec/git-core/ is more a historical than a useful thing. In particular when bundling MinGit, that's just useless weight, and we exclude it.

Except in the ARM64 variant, as it is built via git-artifacts, it does not work: our CMake-based build did not know how to exclude the dashed built-ins, and mingit/release.sh simply copies the entire ARM64 artifacts it was given, dashed built-ins or not.

Let's teach our CMake configuration to be helpful in this instance, by optionally skip those usually unwanted files.

@derrickstolee derrickstolee changed the title Teach our CMake configurataion to optionally skip hard-linking the dashed built-ins Teach our CMake configuration to optionally skip hard-linking the dashed built-ins Feb 25, 2021
@dennisameling
Copy link

This is interesting, thanks! Let me know if I can be of any help here 🚀

dscho added 2 commits March 5, 2021 12:43
Just like the Makefile-based build learned to skip hard-linking the
dashed built-ins in 179227d (Optionally skip linking/copying the
built-ins, 2020-09-21), this patch teaches the CMake-based build the
same trick.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
The archive and MinGit variants really get bloated because they handle
those as straight copies instead of hard-links.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
@dscho dscho force-pushed the cmake-and-skip-dashed-built-ins branch from 26a72f4 to e02b3c2 Compare March 5, 2021 11:43
@dscho
Copy link
Member Author

dscho commented Mar 5, 2021

The corresponding contribution to the Git mailing list will wait until after Git v2.31.0 was released: gitgitgadget#887

@dscho dscho merged commit cef4830 into git-for-windows:main Mar 5, 2021
@dscho dscho deleted the cmake-and-skip-dashed-built-ins branch March 5, 2021 12:22
git-for-windows-ci pushed a commit that referenced this pull request Mar 5, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 5, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 5, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 5, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
@dscho dscho added this to the Next release milestone Mar 5, 2021
dscho added a commit that referenced this pull request Mar 6, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 6, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 6, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 6, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 8, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 8, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 8, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 8, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 8, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit to dscho/git that referenced this pull request Mar 9, 2021
…hed-built-ins

Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 10, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 10, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 10, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 10, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Mar 10, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Mar 10, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 2, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit to dscho/git that referenced this pull request Aug 3, 2021
…hed-built-ins

Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 3, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 3, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 3, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 3, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 4, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 4, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 4, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 4, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 4, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 4, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 6, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 6, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 6, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 11, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 13, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 18, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 23, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Aug 24, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Aug 31, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Sep 8, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Sep 13, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Oct 4, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Oct 12, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Oct 12, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
dscho added a commit that referenced this pull request Oct 13, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Oct 13, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Oct 13, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
git-for-windows-ci pushed a commit that referenced this pull request Oct 13, 2021
Teach our CMake configuration to optionally skip hard-linking the dashed built-ins
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