On 5/28/2019 10:09 AM, Philip Oakley wrote:
Hi Jeff,
On 28/05/2019 14:56, Jeff Hostetler wrote:
On 5/28/2019 8:08 AM, Philip Oakley wrote:
When the user installs an updated version of Visual Studio, the
previously
generated MSVC-DEFS-GEN will need to be deleted to allow updating.
Alternatively the whole vcpkg download may be cleaned allowing it to be
reloaded, though this may take much longer on slower connections.
Signed-off-by: Philip Oakley <philipoakley@xxxxxxx>
---
In response to discussions at:
https://github.com/git-for-windows/git/issues/2186
cc: Jeff Hostetler <git@xxxxxxxxxxxxxxxxx>
cc: Johannes Schindelin <Johannes.Schindelin@xxxxxx>
compat/vcbuild/README | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/compat/vcbuild/README b/compat/vcbuild/README
index 81da36a93b..40695fc1cc 100644
--- a/compat/vcbuild/README
+++ b/compat/vcbuild/README
@@ -18,6 +18,13 @@ The Steps to Build Git with VS2015 or VS2017 from
the command line.
Makefile:
<repo_root>/compat/vcbuild/MSVC-DEFS-GEN
+ - If you update your Visual Studio version, then delete the
MSVC-DEFS-GEN
+ file so that fresh environment variables can be discovered.
+
+ Or clean the "vcpkg" environment with:
+
+ $ make MSVC=1 clean
+
2. OPTIONALLY copy the third-party *.dll and *.pdb files into the repo
root to make it easier to run and debug git.exe without having to
manipulate your PATH. This is especially true for debug
sessions in
Did you mean to send this upstream or to Git for Windows?
I didn't think that the VS2015/VS2017 vcpkg-aware version of
compat/vcbuild/* had made it upstream yet, so this patch might not
apply upstream.
Ah, that would be my mistake.
BTW, the Makefile (when MSVC=1 is defined) will take care of deleting
the MSVC-DEFS-GEN, so all we really need to say here is to do:
$ make MSVC=1 clean
or $ make MSVC=1 DEBUG=1 clean
after upgrading to a new version of VS.
It (my suggestion) was the difference between a deep clean of all the
1.05GB of vcpkg files, vs the 847 bytes of just the MSVC-DEFS-GEN file
that was a concern.
The need to repeat the download of 1GB just because of a VS version
change felt a bit excessive, hence the initial suggestion.
Right, there is a separate compat/vcbuild/VCPKG-DEFS file that
controls if the third-party libraries need to be downloaded and/or
compiled. Make clean doesn't touch that.
And yes, this area still needs a little polish.
Jeff
PS. I have a TODO item to fix the Makefile to automatically detect
and take care of this.
Thanks.
IIUC download of the vcpkg files are separate from the generation of the
MSVC-DEFS-GEN file - or are their inter-linkages?
--
Philip