MSVC projects: Generate demo sources in IntDir

This is to reduce the pollution in the souce directories.  Update the
include paths accordingly.
This commit is contained in:
Chun-wei Fan
2022-05-26 19:45:47 +08:00
parent b58ba13a9e
commit 6f7e3cb3f6
12 changed files with 60 additions and 26 deletions

View File

@@ -88,13 +88,13 @@ generate-base-sources: \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk-3\gtk\gtk-win32.rc \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk-3\gtk\libgtk3.manifest \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk-3\gtk\gtk.gresource.xml \
..\demos\gtk-demo\demos.h \
..\demos\gtk-demo\demo_resources.c \
..\demos\icon-browser\resources.c
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-demo\demos.h \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-demo\demo_resources.c \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-icon-browser\resources.c
# Copy the pre-defined config.h.win32 and demos.h.win32
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\config.h: ..\config.h.win32
..\demos\gtk-demo\demos.h: ..\demos\gtk-demo\demos.h.win32
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-demo\demos.h: ..\demos\gtk-demo\demos.h.win32
# Generate the versioned headers and resource scripts (*.rc)
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkversionmacros.h: ..\gdk\gdkversionmacros.h.in
@@ -112,7 +112,7 @@ generate-base-sources: \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\config.h \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkconfig.h \
..\demos\gtk-demo\demos.h:
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-demo\demos.h:
@echo Copying $@...
@if not exist $(@D)\ md $(@D)
@copy $** $@
@@ -278,13 +278,17 @@ generate-base-sources: \
@$(PYTHON) $(GLIB_GENMARSHAL) $(GTK_MARSHALERS_FLAGS) --body $** >> $@.tmp
@move $@.tmp $@
..\demos\gtk-demo\demo_resources.c: ..\demos\gtk-demo\demo.gresource.xml $(GTK_DEMO_RESOURCES)
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-demo\demo_resources.c: ..\demos\gtk-demo\demo.gresource.xml $(GTK_DEMO_RESOURCES)
@echo Generating $@...
@$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(@D) --generate-source $(@D)\demo.gresource.xml
@if not exist $(@D)\ md $(@D)
@$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=..\demos\gtk-demo \
--generate-source ..\demos\gtk-demo\demo.gresource.xml
..\demos\icon-browser\resources.c: ..\demos\icon-browser\iconbrowser.gresource.xml $(ICON_BROWSER_RESOURCES)
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-icon-browser\resources.c: ..\demos\icon-browser\iconbrowser.gresource.xml $(ICON_BROWSER_RESOURCES)
@echo Generating $@...
@$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(@D) --generate-source $(@D)\iconbrowser.gresource.xml
@if not exist $(@D)\ md $(@D)
@$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=..\demos\icon-browser \
--generate-source ..\demos\icon-browser\iconbrowser.gresource.xml
gtk3-demo.sourcefiles: $(demo_actual_sources)
@-del vs9\$(DEMO_VS9_PROJ)
@@ -409,9 +413,9 @@ regenerate-demos-h-win32: ..\demos\gtk-demo\geninclude.py $(demo_actual_sources)
# Remove the generated files
clean:
@-del /f /q ..\demos\icon-browser\resources.c
@-del /f /q ..\demos\gtk-demo\demo_resources.c
@-del /f /q ..\demos\gtk-demo\demos.h
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-icon-browser\resources.c
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-demo\demo_resources.c
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk3-demo\demos.h
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk-3\gtk\gtktypebuiltins.c
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk-3\gtk\gtktypebuiltins.h
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gtk-3\gtk\gtkprivatetypebuiltins.c

View File

@@ -16,6 +16,5 @@
</ItemGroup>
<ItemGroup>
#include "gtk3-demo-application.vs10.sourcefiles.filters"
<ClCompile Include="..\..\demos\gtk-demo\demo_resources.c"><Filter>Source Files</Filter></ClCompile>
</ItemGroup>
</Project>

View File

@@ -79,7 +79,7 @@
</ItemDefinitionGroup>
<ItemGroup>
#include "gtk3-demo-application.vs10.sourcefiles"
<ClCompile Include="..\..\demos\gtk-demo\demo_resources.c" />
<ClCompile Include=".\$(Configuration)\$(Platform)\obj\gtk3-demo\demo_resources.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk-3.vcxproj">

View File

@@ -12,6 +12,5 @@
</ItemGroup>
<ItemGroup>
#include "gtk3-demo.vs10.sourcefiles.filters"
<ClCompile Include="..\..\demos\gtk-demo\demo_resources.c"><Filter>Source Files</Filter></ClCompile>
</ItemGroup>
</Project>

View File

@@ -44,7 +44,7 @@
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(GtkBaseIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(Gtk3DemoIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PrecompiledHeader></PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<CompileAs>CompileAsC</CompileAs>
@@ -80,7 +80,7 @@
</ItemDefinitionGroup>
<ItemGroup>
#include "gtk3-demo.vs10.sourcefiles"
<ClCompile Include="..\..\demos\gtk-demo\demo_resources.c" />
<ClCompile Include="$(IntDir)\demo_resources.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk-3.vcxproj">

View File

@@ -16,6 +16,5 @@
</ItemGroup>
<ItemGroup>
#include "gtk3-icon-browser.vs10.sourcefiles.filters"
<ClCompile Include="..\..\demos\icon-browser\resources.c"><Filter>Source Files</Filter></ClCompile>
</ItemGroup>
</Project>

View File

@@ -82,7 +82,7 @@
</ItemDefinitionGroup>
<ItemGroup>
#include "gtk3-icon-browser.vs10.sourcefiles"
<ClCompile Include="..\..\demos\icon-browser\resources.c" />
<ClCompile Include="$(IntDir)\resources.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk-3.vcxproj">

View File

@@ -15,6 +15,7 @@
<BaseConfigIncludes>$(GtkGenSrcDir);$(GdkGenSrcDir);..\..</BaseConfigIncludes>
<GdkBaseIncludes>$(GdkGenSrcDir)\gdk;..\..\gdk;$(BaseConfigIncludes)</GdkBaseIncludes>
<GtkBaseIncludes>$(GtkGenSrcDir)\gtk;..\..\gtk;$(GdkBaseIncludes)</GtkBaseIncludes>
<Gtk3DemoIncludes>.\$(Configuration)\$(Platform)\obj\gtk3-demo;..\..\gtk;$(GtkBaseIncludes)</Gtk3DemoIncludes>
<GtkIncludedImmodulesDefines>INCLUDE_IM_am_et;INCLUDE_IM_cedilla;INCLUDE_IM_cyrillic_translit;INCLUDE_IM_ime;INCLUDE_IM_inuktitut;INCLUDE_IM_ipa;INCLUDE_IM_multipress;INCLUDE_IM_thai;INCLUDE_IM_ti_er;INCLUDE_IM_ti_et;INCLUDE_IM_viqr</GtkIncludedImmodulesDefines>
<GtkHostMachine Condition="'$(Platform)' == 'Win32'">i686</GtkHostMachine>
<GtkHostMachine Condition="'$(Platform)' == 'x64'">x86_64</GtkHostMachine>
@@ -90,6 +91,9 @@ nmake -f install-msvc.mak PREFIX=$(GlibEtcInstallRoot)</InstallBuildsBase>
<BuildMacro Include="GtkBaseIncludes">
<Value>$(GtkBaseIncludes)</Value>
</BuildMacro>
<BuildMacro Include="Gtk3DemoIncludes">
<Value>$(Gtk3DemoIncludes)</Value>
</BuildMacro>
<BuildMacro Include="GtkIncludedImmodulesDefines">
<Value>$(GtkIncludedImmodulesDefines)</Value>
</BuildMacro>

View File

@@ -55,6 +55,14 @@
Name="GtkBaseIncludesRelease"
Value=".\Release\$(PlatformName)\obj\gtk-3\gtk;..\..\gtk;$(GdkBaseIncludesRelease)"
/>
<UserMacro
Name="Gtk3DemoIncludesDebug"
Value=".\Debug\$(PlatformName)\obj\gtk3-demo;$(GtkBaseIncludesDebug)"
/>
<UserMacro
Name="Gtk3DemoIncludesRelease"
Value=".\Release\$(PlatformName)\obj\gtk3-demo;$(GtkBaseIncludesRelease)"
/>
<UserMacro
Name="GdkDefines"
Value="GDK_COMPILATION;G_LOG_DOMAIN=\&quot;Gdk\&quot;"

View File

@@ -153,7 +153,14 @@
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gtk3-demo-application.sourcefiles"
<File RelativePath="..\..\demos\gtk-demo\demo_resources.c" />
<File RelativePath=".\Release\$(PlatformName)\obj\gtk3-demo\demo_resources.c">
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
<FileConfiguration Name="Debug|x64" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
</File>
<File RelativePath=".\Debug\$(PlatformName)\obj\gtk3-demo\demo_resources.c" >
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
<FileConfiguration Name="Release|x64" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
</File>
</Filter>
<Filter
Name="Headers"

View File

@@ -31,7 +31,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="$(GtkBaseIncludesDebug)"
AdditionalIncludeDirectories="$(Gtk3DemoIncludesDebug)"
PreprocessorDefinitions="_DEBUG;$(GtkPrefixDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -63,7 +63,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="$(GtkBaseIncludesDebug)"
AdditionalIncludeDirectories="$(Gtk3DemoIncludesDebug)"
PreprocessorDefinitions="_DEBUG;$(GtkPrefixDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -95,7 +95,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="$(GtkBaseIncludesRelease)"
AdditionalIncludeDirectories="$(Gtk3DemoIncludesRelease)"
PreprocessorDefinitions="$(GtkPrefixDefine)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -127,7 +127,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="$(GtkBaseIncludesRelease)"
AdditionalIncludeDirectories="$(Gtk3DemoIncludesRelease)"
PreprocessorDefinitions="$(GtkPrefixDefine)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -157,7 +157,14 @@
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gtk3-demo.sourcefiles"
<File RelativePath="..\..\demos\gtk-demo\demo_resources.c" />
<File RelativePath=".\Release\$(PlatformName)\obj\gtk3-demo\demo_resources.c">
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
<FileConfiguration Name="Debug|x64" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
</File>
<File RelativePath=".\Debug\$(PlatformName)\obj\gtk3-demo\demo_resources.c" >
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
<FileConfiguration Name="Release|x64" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"

View File

@@ -157,7 +157,14 @@
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gtk3-icon-browser.sourcefiles"
<File RelativePath="..\..\demos\icon-browser\resources.c" />
<File RelativePath=".\Release\$(PlatformName)\obj\gtk3-icon-browser\resources.c">
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
<FileConfiguration Name="Debug|x64" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
</File>
<File RelativePath=".\Debug\$(PlatformName)\obj\gtk3-icon-browser\resources.c" >
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
<FileConfiguration Name="Release|x64" ExcludedFromBuild="true" ><Tool Name="VCCLCompilerTool" /></FileConfiguration>
</File>
</Filter>
<Filter
Name="Headers"