diff options
author | Johannes Schindelin <johannes.schindelin@gmx.de> | 2019-07-29 13:08:13 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-07-29 14:51:43 -0700 |
commit | b18ae14a8f6da9a04d0a6e4698d8ccea4afb546d (patch) | |
tree | 59afeebac1a24d9af9f1f582dc77dc9d703f05de /config.mak.uname | |
parent | 976aaedca0c6f64b37f4241bf06fa7ab06095986 (diff) | |
download | git-b18ae14a8f6da9a04d0a6e4698d8ccea4afb546d.tar.gz |
vcxproj: also link-or-copy builtins
The default location for `.exe` files linked by Visual Studio depends on
the mode (debug vs release) and the architecture. Meaning: after a full
build, there is a `git.exe` in the top-level directory, but none of the
built-ins are linked..
When running a test script in Git Bash, it therefore would pick up the
wrong, say, `git-receive-pack.exe`: the one installed at the same time
as the Git Bash.
Absolutely not what we want. We want to have confidence that our test
covers the MSVC-built Git executables, and not some random stuff.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'config.mak.uname')
-rw-r--r-- | config.mak.uname | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/config.mak.uname b/config.mak.uname index 6d0ed923b8..db7f06b95f 100644 --- a/config.mak.uname +++ b/config.mak.uname @@ -703,6 +703,21 @@ vcxproj: perl contrib/buildsystems/generate -g Vcxproj git add -f git.sln {*,*/lib,t/helper/*}/*.vcxproj + # Generate the LinkOrCopyBuiltins.targets file + (echo '<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">' && \ + echo ' <Target Name="CopyBuiltins_AfterBuild" AfterTargets="AfterBuild">' && \ + for name in $(BUILT_INS);\ + do \ + echo ' <Copy SourceFiles="$$(OutDir)\git.exe" DestinationFiles="$$(OutDir)\'"$$name"'" SkipUnchangedFiles="true" UseHardlinksIfPossible="true" />'; \ + done && \ + for name in $(REMOTE_CURL_ALIASES); \ + do \ + echo ' <Copy SourceFiles="$$(OutDir)\'"$(REMOTE_CURL_PRIMARY)"'" DestinationFiles="$$(OutDir)\'"$$name"'" SkipUnchangedFiles="true" UseHardlinksIfPossible="true" />'; \ + done && \ + echo ' </Target>' && \ + echo '</Project>') >git/LinkOrCopyBuiltins.targets + git add -f git/LinkOrCopyBuiltins.targets + # Add command-list.h $(MAKE) MSVC=1 SKIP_VCPKG=1 prefix=/mingw64 command-list.h git add -f command-list.h |