From 8e88a2e1360d7a74bf300bb5b855d9daf3f19691 Mon Sep 17 00:00:00 2001 From: Chun-wei Fan Date: Mon, 9 Jun 2014 11:48:54 +0800 Subject: [PATCH] MSVC 2010+ Projects: Update "Installation" Process Currently, due to the way that Visual Studio 2010+ projects are handled, the "install" project does not re-build upon changes to the sources, as it does not believe that its dependencies have changed, although the changed sources are automatically recompiled. This means that if a part or more of the solution does not build, or if the sources need some other fixes or enhancements, the up-to-date build is not copied automatically, which can be misleading. Improve on the situation by forcing the "install" project to trigger its rebuild, so that the updated binaries can be copied. This does trigger an MSBuild warning, but having that warning is way better than not having an up-to-date build, especially during testing and development. --- build/win32/vs10/gtk-install.props | 28 ++++++++++++---- build/win32/vs10/install.vcxproj | 52 ++++++++++++++++-------------- 2 files changed, 50 insertions(+), 30 deletions(-) diff --git a/build/win32/vs10/gtk-install.props b/build/win32/vs10/gtk-install.props index 4711dd73de..bc5cf85e22 100644 --- a/build/win32/vs10/gtk-install.props +++ b/build/win32/vs10/gtk-install.props @@ -4,6 +4,10 @@ + $(SolutionDir)$(Configuration)\$(Platform)\bin + $(BinDir)\$(GtkDllPrefix)gdk(GtkDllSuffix).dll;$(BinDir)\$(GtkDllPrefix)gtk(GtkDllSuffix).dll;$(BinDir)\$(GtkDllPrefix)gailutil(GtkDllSuffix).dll + $(BinDir)\gtk3-demo.exe;$(BinDir)\gtk3-demo-application.exe + $(BinDir)\broadwayd.exe mkdir $(CopyDir)\bin @@ -15,22 +19,22 @@ if "$(Configuration)" == "Release_Broadway" goto DO_BROADWAY_BIN if "$(Configuration)" == "Debug_Broadway" goto DO_BROADWAY_BIN -copy $(Configuration)\$(Platform)\bin\*.dll $(CopyDir)\bin +copy $(BinDir)\*.dll $(CopyDir)\bin -copy $(Configuration)\$(Platform)\bin\*-$(ApiVersion).lib $(CopyDir)\lib +copy $(BinDir)\*-$(ApiVersion).lib $(CopyDir)\lib -copy $(Configuration)\$(Platform)\bin\*.exe $(CopyDir)\bin +copy $(BinDir)\*.exe $(CopyDir)\bin goto DONE_BIN :DO_BROADWAY_BIN -copy $(Configuration)\$(Platform)\bin\$(GtkDllPrefix)gdk$(GtkDllSuffix).dll $(CopyDir)\bin +copy $(BinDir)\$(GtkDllPrefix)gdk$(GtkDllSuffix).dll $(CopyDir)\bin -copy $(Configuration)\$(Platform)\bin\gdk-$(ApiVersion).lib $(CopyDir)\lib +copy $(BinDir)\gdk-$(ApiVersion).lib $(CopyDir)\lib -copy $(Configuration)\$(Platform)\bin\broadwayd.exe $(CopyDir)\bin +copy $(BinDir)\broadwayd.exe $(CopyDir)\bin if "$(Configuration)" == "Release_Broadway" copy .\Release\$(Platform)\bin\$(GtkDllPrefix)gtk$(GtkDllSuffix).dll $(CopyDir)\bin @@ -800,6 +804,18 @@ copy ..\..\..\gdk\broadway\gdkbroadwayvisual.h $(CopyDir)\include\gtk-$(ApiVersi <_PropertySheetDisplayName>gtkinstallsprops + + $(BinDir) + + + $(InstalledDlls) + + + $(InstalledBins) + + + $(InstalledBroadwayBins) + $(GtkDoInstallBin) diff --git a/build/win32/vs10/install.vcxproj b/build/win32/vs10/install.vcxproj index 4fcc4ee7b9..7eaa30d2f2 100644 --- a/build/win32/vs10/install.vcxproj +++ b/build/win32/vs10/install.vcxproj @@ -139,45 +139,49 @@ - - $(GtkDoInstallBin)$(GtkDoInstall) - - - $(GtkDoInstallBin)$(GtkDoInstall) - - - $(GtkDoInstallBin)$(GtkDoInstall) - - - $(GtkDoInstallBin)$(GtkDoInstall) - - - $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) - - - $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) - - - $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) - - - $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) - + + + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall) + $(InstalledDlls);$(InstalledBins);%(Outputs) + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) + $(InstalledDlls);$(InstalledBins);$(InstalledBroadwayBins);%(Outputs) + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall) + $(InstalledDlls);$(InstalledBins);%(Outputs) + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) + $(InstalledDlls);$(InstalledBins);$(InstalledBroadwayBins);%(Outputs) + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall) + $(InstalledDlls);$(InstalledBins);%(Outputs) + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) + $(InstalledDlls);$(InstalledBins);$(InstalledBroadwayBins);%(Outputs) + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall) + $(InstalledDlls);$(InstalledBins);%(Outputs) + Installing Build Results... + $(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders) + $(InstalledDlls);$(InstalledBins);$(InstalledBroadwayBins);%(Outputs) + + {fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f7}