diff --git a/win32/generate-msvc.mak b/win32/generate-msvc.mak
index dd8691d127..5d02daa5d1 100644
--- a/win32/generate-msvc.mak
+++ b/win32/generate-msvc.mak
@@ -29,14 +29,17 @@ GDK_RESOURCES_ARGS = ..\gdk\gdk.gresource.xml --target=$@ --sourcedir=..\gdk --c
GTK_MARSHALERS_FLAGS = --prefix=_gtk_marshal --valist-marshallers
GTK_RESOURCES_ARGS = ..\gtk\gtk.gresource.xml --target=$@ --sourcedir=..\gtk --c-name _gtk --manual-register
-all: \
- ..\config.h \
+GDK_GENERATED_SOURCES = \
..\gdk\gdkconfig.h \
..\gdk\gdkversionmacros.h \
..\gdk\gdkmarshalers.h \
..\gdk\gdkmarshalers.c \
..\gdk\gdkresources.h \
..\gdk\gdkresources.c \
+
+generate-base-sources: \
+ ..\config.h \
+ $(GDK_GENERATED_SOURCES) \
..\gtk\gtk-win32.rc \
..\gtk\libgtk3.manifest \
..\gtk\gtkdbusgenerated.h \
diff --git a/win32/gtk-introspection-msvc.mak b/win32/gtk-introspection-msvc.mak
index d2af90b5cb..156c744b17 100644
--- a/win32/gtk-introspection-msvc.mak
+++ b/win32/gtk-introspection-msvc.mak
@@ -1,6 +1,7 @@
# NMake Makefile to build Introspection Files for GTK+
!include detectenv-msvc.mak
+!include generate-msvc.mak
APIVERSION = 3.0
@@ -28,7 +29,7 @@ AT_PLAT=aarch64
AT_PLAT=i686
!endif
-all: setgirbuildenv $(built_install_girs) $(built_install_typelibs)
+introspect: setgirbuildenv $(built_install_girs) $(built_install_typelibs)
setgirbuildenv:
@set PYTHONPATH=$(PREFIX)\lib\gobject-introspection
@@ -38,15 +39,15 @@ setgirbuildenv:
!include introspection.body.mak
-install-introspection: all
+install-introspection: introspect
@-copy vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.gir "$(G_IR_INCLUDEDIR)"
@-copy /b vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.typelib "$(G_IR_TYPELIBDIR)"
!else
-all:
+introspect:
@-echo $(ERROR_MSG)
!endif
-clean:
+introspect-clean:
@-del /f/q vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.typelib
@-del /f/q vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.gir
diff --git a/win32/vs10/gtk3-introspect.vcxproj b/win32/vs10/gtk3-introspect.vcxproj
index 6c191dde9e..cba81df3c2 100644
--- a/win32/vs10/gtk3-introspect.vcxproj
+++ b/win32/vs10/gtk3-introspect.vcxproj
@@ -68,27 +68,27 @@
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam)
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean all
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean
$(GtkIntrospectBuiltFiles)
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam)
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean all
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean
$(GtkIntrospectBuiltFiles)
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam)
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean all
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean
$(GtkIntrospectBuiltFiles)
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam)
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean all
- $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) clean
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean introspect
+ $(GtkIntrospectNMakeCmd) $(IntrospectPythonParam) introspect-clean
$(GtkIntrospectBuiltFiles)
diff --git a/win32/vs10/gtk3-prebuild.vcxproj b/win32/vs10/gtk3-prebuild.vcxproj
index 3f1e73bc6a..7d4af0aa20 100644
--- a/win32/vs10/gtk3-prebuild.vcxproj
+++ b/win32/vs10/gtk3-prebuild.vcxproj
@@ -121,14 +121,14 @@
- $(GenerateRequiredSourcesBase) CFG=Debug BROADWAY=1 $(IntrospectPythonParam)
- $(GenerateRequiredSourcesBase) CFG=Release BROADWAY=1 $(IntrospectPythonParam)
- $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam)
- $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam)
- $(GenerateRequiredSourcesBase) CFG=Debug BROADWAY=1 $(IntrospectPythonParam) clean all
- $(GenerateRequiredSourcesBase) CFG=Release BROADWAY=1 $(IntrospectPythonParam) clean all
- $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam) clean all
- $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam) clean all
+ $(GenerateRequiredSourcesBase) CFG=Debug BROADWAY=1 $(IntrospectPythonParam) generate-base-sources
+ $(GenerateRequiredSourcesBase) CFG=Release BROADWAY=1 $(IntrospectPythonParam) generate-base-sources
+ $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam) generate-base-sources
+ $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam) generate-base-sources
+ $(GenerateRequiredSourcesBase) CFG=Debug BROADWAY=1 $(IntrospectPythonParam) clean generate-base-sources
+ $(GenerateRequiredSourcesBase) CFG=Release BROADWAY=1 $(IntrospectPythonParam) clean generate-base-sources
+ $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam) clean generate-base-sources
+ $(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam) clean generate-base-sources
$(GenerateRequiredSourcesBase) CFG=Debug BROADWAY=1 $(IntrospectPythonParam) clean
$(GenerateRequiredSourcesBase) CFG=Release BROADWAY=1 $(IntrospectPythonParam) clean
$(GenerateRequiredSourcesBase) CFG=$(Configuration) $(IntrospectPythonParam) clean
diff --git a/win32/vs9/gtk3-introspect.vcproj b/win32/vs9/gtk3-introspect.vcproj
index d69697fa41..e8e9dc5719 100644
--- a/win32/vs9/gtk3-introspect.vcproj
+++ b/win32/vs9/gtk3-introspect.vcproj
@@ -25,9 +25,9 @@
>
@@ -38,9 +38,9 @@
>
@@ -53,9 +53,9 @@
>
@@ -66,9 +66,9 @@
>
diff --git a/win32/vs9/gtk3-prebuild.vcproj b/win32/vs9/gtk3-prebuild.vcproj
index 7c328f7274..2bad5dd70f 100644
--- a/win32/vs9/gtk3-prebuild.vcproj
+++ b/win32/vs9/gtk3-prebuild.vcproj
@@ -28,8 +28,8 @@
>
@@ -43,8 +43,8 @@
>
@@ -58,8 +58,8 @@
>
@@ -73,8 +73,8 @@
>
@@ -89,8 +89,8 @@
>
@@ -105,8 +105,8 @@
>
@@ -121,8 +121,8 @@
>
@@ -137,8 +137,8 @@
>