[atk] Visual C++ Projects: Split the Property Sheets



commit cc368e105bf9aa81d7fc80b5c4e3bb2924ad98fe
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Thu Dec 12 15:53:07 2013 +0800

    Visual C++ Projects: Split the Property Sheets
    
    This will make the single property sheets split into multiple property
    sheets as:
    -They will be easier to maintain
    -Individual Projects can include them as needed
    -Easier to automate the listing of headers to "install"
    
    Also update some parts to improve the overall build experience,
    specifically combining macro defs and using a custom build rule for
    config.h.

 build/win32/vs10/Makefile.am              |   22 ++--
 build/win32/vs10/atk-build-defines.props  |   30 +++++
 build/win32/vs10/atk-gen-src.props        |   43 +++++++
 build/win32/vs10/atk-gengir.props         |   26 ++++
 build/win32/vs10/atk-install.props        |   90 +++++++++++++
 build/win32/vs10/atk-version-paths.props  |   51 ++++++++
 build/win32/vs10/atk.props                |  196 -----------------------------
 build/win32/vs10/atk.vcxproj.filtersin    |    1 +
 build/win32/vs10/atk.vcxprojin            |   22 +++-
 build/win32/vs10/gengir.vcxproj           |    8 +-
 build/win32/vs10/install.vcxproj          |    8 +-
 build/win32/vs9/Makefile.am               |   18 ++-
 build/win32/vs9/atk-build-defines.vsprops |   25 ++++
 build/win32/vs9/atk-gen-src.vsprops       |   32 +++++
 build/win32/vs9/atk-gengir.vsprops        |   21 +++
 build/win32/vs9/atk-install.vsprops       |   53 ++++++++
 build/win32/vs9/atk-version-paths.vsprops |   49 +++++++
 build/win32/vs9/atk.vcprojin              |   42 ++++++-
 build/win32/vs9/atk.vsprops               |  160 -----------------------
 build/win32/vs9/gengir.vcproj             |    8 +-
 build/win32/vs9/install.vcproj            |    8 +-
 21 files changed, 517 insertions(+), 396 deletions(-)
---
diff --git a/build/win32/vs10/Makefile.am b/build/win32/vs10/Makefile.am
index ef3f2b4..7623024 100644
--- a/build/win32/vs10/Makefile.am
+++ b/build/win32/vs10/Makefile.am
@@ -1,10 +1,14 @@
-EXTRA_DIST = \
-       README.txt \
-       atk.sln \
-       atk.props \
-       atk.vcxproj \
-       atk.vcxprojin \
-       atk.vcxproj.filters \
-       atk.vcxproj.filtersin \
+EXTRA_DIST =   \
+       README.txt      \
+       atk.sln \
+       atk.vcxproj     \
+       atk.vcxprojin   \
+       atk.vcxproj.filters     \
+       atk.vcxproj.filtersin   \
        install.vcxproj \
-       gengir.vcxproj
+       gengir.vcxproj  \
+       atk-build-defines.props \
+       atk-gen-src.props       \
+       atk-gengir.props        \
+       atk-install.props       \
+       atk-version-paths.props
diff --git a/build/win32/vs10/atk-build-defines.props b/build/win32/vs10/atk-build-defines.props
new file mode 100644
index 0000000..a0bec90
--- /dev/null
+++ b/build/win32/vs10/atk-build-defines.props
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <ImportGroup Label="PropertySheets">
+    <Import Project="atk-version-paths.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <AtkDefines>ATK_COMPILATION;DLL_EXPORT;ATK_LOCALEDIR="/dummy/share/locale"</AtkDefines>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>atkbuilddefinesprops</_PropertySheetDisplayName>
+    <OutDir>$(SolutionDir)$(Configuration)\$(PlatformName)\bin\</OutDir>
+    <IntDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      
<AdditionalIncludeDirectories>..\..\..;..\..\..\atk;$(GLibEtcInstallRoot)\include;$(GLibEtcInstallRoot)\include\glib-2.0;$(GLibEtcInstallRoot)\lib\glib-2.0\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      
<PreprocessorDefinitions>HAVE_CONFIG_H;G_DISABLE_SINGLE_INCLUDES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <ForcedIncludeFiles>msvc_recommended_pragmas.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
+    </ClCompile>
+    <Link>
+      
<AdditionalDependencies>glib-2.0.lib;gobject-2.0.lib;gmodule-2.0.lib;intl.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      
<AdditionalLibraryDirectories>$(GLibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <BuildMacro Include="AtkDefines">
+      <Value>$(AtkDefines)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs10/atk-gen-src.props b/build/win32/vs10/atk-gen-src.props
new file mode 100644
index 0000000..60783a8
--- /dev/null
+++ b/build/win32/vs10/atk-gen-src.props
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <ImportGroup Label="PropertySheets">
+    <Import Project="atk-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <GenConfigH>
+if exist ..\..\..\config.h goto DONE_CONFIG_H
+
+copy ..\..\..\config.h.win32 ..\..\..\config.h
+
+:DONE_CONFIG_H
+    </GenConfigH>
+    <GenMarshalSrc>
+cd ..\..\..\atk
+
+$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --header &gt; atkmarshal.h
+
+$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --body &gt; atkmarshal.c
+
+cd $(SolutionDir)
+    </GenMarshalSrc>
+    <GenerateAtkDef>
+echo EXPORTS &gt; $(DefDir)\atk.def
+
+cl /EP ..\..\..\atk\atk.symbols &gt;&gt; $(DefDir)\atk.def
+    </GenerateAtkDef>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>atkgensrcprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="GenConfigH">
+      <Value>$(GenConfigH)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GenMarshalSrc">
+      <Value>$(GenMarshalSrc)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GenerateAtkDef">
+      <Value>$(GenerateAtkDef)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs10/atk-gengir.props b/build/win32/vs10/atk-gengir.props
new file mode 100644
index 0000000..34708f0
--- /dev/null
+++ b/build/win32/vs10/atk-gengir.props
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <ImportGroup Label="PropertySheets">
+    <Import Project="atk-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+<DoGenGir>
+set VSVER=$(VSVer)
+set CONF=$(Configuration)
+set PLAT=$(Platform)
+set BASEDIR=$(GlibEtcInstallRoot)
+cd ..
+call gengir.bat
+
+cd vs$(VSVer)
+</DoGenGir>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>atkgengirprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="DoGenGir">
+      <Value>$(DoGenGir)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs10/atk-install.props b/build/win32/vs10/atk-install.props
new file mode 100644
index 0000000..0a9907d
--- /dev/null
+++ b/build/win32/vs10/atk-install.props
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <ImportGroup Label="PropertySheets">
+    <Import Project="atk-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <AtkDoInstall>
+mkdir $(CopyDir)\bin
+
+copy $(SolutionDir)$(Configuration)\$(Platform)\bin\*.dll $(CopyDir)\bin
+
+
+mkdir $(CopyDir)\lib
+
+copy $(SolutionDir)$(Configuration)\$(Platform)\bin\*-$(ApiVersion).lib $(CopyDir)\lib
+
+
+mkdir $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atk.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkaction.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkcomponent.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkdocument.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkeditabletext.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkgobjectaccessible.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkhyperlink.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkhyperlinkimpl.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkhypertext.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atknoopobject.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atknoopobjectfactory.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkobject.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkobjectfactory.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkplug.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkimage.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkregistry.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkrelation.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkrelationtype.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkrelationset.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkselection.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atksocket.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkstate.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkstateset.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkstreamablecontent.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atktable.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atktext.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkutil.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkmisc.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkvalue.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkwindow.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atkversion.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+
+copy ..\..\..\atk\atk-enum-types.h $(CopyDir)\include\atk-$(ApiVersion)\atk
+    </AtkDoInstall>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="AtkDoInstall">
+      <Value>$(AtkDoInstall)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs10/atk-version-paths.props b/build/win32/vs10/atk-version-paths.props
new file mode 100644
index 0000000..4298972
--- /dev/null
+++ b/build/win32/vs10/atk-version-paths.props
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <PropertyGroup Label="UserMacros">
+    <ApiVersion>1.0</ApiVersion>
+    <VSVer>10</VSVer>
+    <GlibEtcInstallRoot>$(SolutionDir)\..\..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
+    <CopyDir>$(GLibEtcInstallRoot)</CopyDir>
+    <DefDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</DefDir>
+    <AtkLibtoolCompatibleDllPrefix>lib</AtkLibtoolCompatibleDllPrefix>
+    <AtkLibtoolCompatibleDllSuffix>-$(ApiVersion)-0</AtkLibtoolCompatibleDllSuffix>
+    <AtkSeparateVSDllPrefix />
+    <AtkSeparateVSDllSuffix>-1-vs$(VSVer)</AtkSeparateVSDllSuffix>
+    <AtkDllPrefix>$(AtkSeparateVSDllPrefix)</AtkDllPrefix>
+    <AtkDllSuffix>$(AtkSeparateVSDllSuffix)</AtkDllSuffix>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>atkversionpathsprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="ApiVersion">
+      <Value>$(ApiVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GLibEtcInstallRoot">
+      <Value>$(GLibEtcInstallRoot)</Value>
+    </BuildMacro>
+    <BuildMacro Include="CopyDir">
+      <Value>$(CopyDir)</Value>
+    </BuildMacro>
+    <BuildMacro Include="DefDir">
+      <Value>$(DefDir)</Value>
+    </BuildMacro>
+    <BuildMacro Include="AtkLibtoolCompatibleDllPrefix">
+      <Value>$(AtkLibtoolCompatibleDllPrefix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="AtkLibtoolCompatibleDllSuffix">
+      <Value>$(AtkLibtoolCompatibleDllSuffix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="AtkSeparateVSDllPrefix">
+      <Value>$(AtkSeparateVSDllPrefix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="AtkSeparateVSDllSuffix">
+      <Value>$(AtkSeparateVSDllSuffix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="AtkDllPrefix">
+      <Value>$(AtkDllPrefix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="AtkDllSuffix">
+      <Value>$(AtkDllSuffix)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs10/atk.vcxproj.filtersin b/build/win32/vs10/atk.vcxproj.filtersin
index 07395b7..13bd339 100644
--- a/build/win32/vs10/atk.vcxproj.filtersin
+++ b/build/win32/vs10/atk.vcxproj.filtersin
@@ -18,6 +18,7 @@
 #include "libatk.vs10.sourcefiles.filters"
   </ItemGroup>
   <ItemGroup>
+    <CustomBuild Include="..\..\..\config.h.win32"><Filter>Resource Files</Filter></CustomBuild>
     <CustomBuild Include="..\..\..\atk\atkmarshal.list"><Filter>Resource Files</Filter></CustomBuild>
     <CustomBuild Include="..\..\..\atk\atk.symbols"><Filter>Resource Files</Filter></CustomBuild>
   </ItemGroup>
diff --git a/build/win32/vs10/atk.vcxprojin b/build/win32/vs10/atk.vcxprojin
index a52baf7..b2fc326 100644
--- a/build/win32/vs10/atk.vcxprojin
+++ b/build/win32/vs10/atk.vcxprojin
@@ -50,19 +50,19 @@
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gen-src.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gen-src.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gen-src.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gen-src.props" />
   </ImportGroup>
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
@@ -164,6 +164,20 @@
 #include "libatk.vs10.sourcefiles"
   </ItemGroup>
   <ItemGroup>
+    <CustomBuild Include="..\..\..\config.h.win32">
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying config.h from 
config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenConfigH)</Command>
+      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying config.h from 
config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GenConfigH)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying config.h from 
config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GenConfigH)</Command>
+      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying config.h from 
config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GenConfigH)</Command>
+      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\config.h;%(Outputs)</Outputs>
+    </CustomBuild>
     <CustomBuild Include="..\..\..\atk\atkmarshal.list">
       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating Marshalling 
Sources...</Message>
       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenMarshalSrc)</Command>
diff --git a/build/win32/vs10/gengir.vcxproj b/build/win32/vs10/gengir.vcxproj
index 1071b19..8cdd305 100644
--- a/build/win32/vs10/gengir.vcxproj
+++ b/build/win32/vs10/gengir.vcxproj
@@ -51,19 +51,19 @@
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gengir.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gengir.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gengir.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-gengir.props" />
   </ImportGroup>
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
diff --git a/build/win32/vs10/install.vcxproj b/build/win32/vs10/install.vcxproj
index 1a4b34d..f2b4c39 100644
--- a/build/win32/vs10/install.vcxproj
+++ b/build/win32/vs10/install.vcxproj
@@ -50,19 +50,19 @@
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-install.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-install.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-install.props" />
   </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="atk.props" />
+    <Import Project="atk-install.props" />
   </ImportGroup>
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
diff --git a/build/win32/vs9/Makefile.am b/build/win32/vs9/Makefile.am
index b707f2c..29520a8 100644
--- a/build/win32/vs9/Makefile.am
+++ b/build/win32/vs9/Makefile.am
@@ -1,8 +1,12 @@
-EXTRA_DIST = \
-       README.txt \
-       atk.sln \
-       atk.vsprops \
-       atk.vcproj \
-       atk.vcprojin \
+EXTRA_DIST =   \
+       README.txt      \
+       atk.sln \
+       atk.vcproj      \
+       atk.vcprojin    \
        install.vcproj  \
-       gengir.vcproj
+       gengir.vcproj   \
+       atk-build-defines.vsprops       \
+       atk-gen-src.vsprops     \
+       atk-gengir.vsprops      \
+       atk-install.vsprops     \
+       atk-version-paths.vsprops
diff --git a/build/win32/vs9/atk-build-defines.vsprops b/build/win32/vs9/atk-build-defines.vsprops
new file mode 100644
index 0000000..351d19e
--- /dev/null
+++ b/build/win32/vs9/atk-build-defines.vsprops
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+       ProjectType="Visual C++"
+       Version="8.00"
+       Name="atkbuilddefinesprops"
+       OutputDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin"
+       IntermediateDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\obj\$(ProjectName)\"
+       InheritedPropertySheets=".\atk-version-paths.vsprops"
+       >
+       <Tool
+               Name="VCCLCompilerTool"
+               
AdditionalIncludeDirectories="..\..\..;..\..\..\atk;$(GLibEtcInstallRoot)\include;$(GLibEtcInstallRoot)\include\glib-2.0;$(GLibEtcInstallRoot)\lib\glib-2.0\include\"
+               PreprocessorDefinitions="HAVE_CONFIG_H;G_DISABLE_SINGLE_INCLUDES"
+               ForcedIncludeFiles="msvc_recommended_pragmas.h"
+       />
+       <Tool
+               Name="VCLinkerTool"
+               AdditionalDependencies="glib-2.0.lib gobject-2.0.lib gmodule-2.0.lib intl.lib"
+               AdditionalLibraryDirectories="$(GLibEtcInstallRoot)\lib"
+       />
+       <UserMacro
+               Name="AtkDefines"
+               Value="ATK_COMPILATION;DLL_EXPORT;ATK_LOCALEDIR=\&quot;/dummy/share/locale\&quot;"
+       />
+</VisualStudioPropertySheet>
diff --git a/build/win32/vs9/atk-gen-src.vsprops b/build/win32/vs9/atk-gen-src.vsprops
new file mode 100644
index 0000000..d3fc31f
--- /dev/null
+++ b/build/win32/vs9/atk-gen-src.vsprops
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+       ProjectType="Visual C++"
+       Version="8.00"
+       Name="atkgensrcprops"
+       InheritedPropertySheets=".\atk-build-defines.vsprops"
+       >
+       <UserMacro
+               Name="GenConfigH"
+               Value="
+if exist ..\..\..\config.h goto DONE_CONFIG_H&#x0D;&#x0A;
+copy ..\..\..\config.h.win32 ..\..\..\config.h&#x0D;&#x0A;
+:DONE_CONFIG_H&#x0D;&#x0A;
+                     "
+       />
+       <UserMacro
+               Name="GenMarshalSrc"
+               Value="
+cd ..\..\..\atk&#x0D;&#x0A;
+$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --header &gt; 
atkmarshal.h&#x0D;&#x0A;
+$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --body &gt; 
atkmarshal.c&#x0D;&#x0A;
+cd $(SolutionDir)&#x0D;&#x0A;
+                     "
+       />
+       <UserMacro
+               Name="GenerateAtkDef"
+               Value="
+echo EXPORTS &gt; $(DefDir)\atk.def&#x0D;&#x0A;
+cl /EP ..\..\..\atk\atk.symbols &gt;&gt; $(DefDir)\atk.def
+                     "
+       />
+</VisualStudioPropertySheet>
diff --git a/build/win32/vs9/atk-gengir.vsprops b/build/win32/vs9/atk-gengir.vsprops
new file mode 100644
index 0000000..bd61147
--- /dev/null
+++ b/build/win32/vs9/atk-gengir.vsprops
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+       ProjectType="Visual C++"
+       Version="8.00"
+       Name="atkgengirprops"
+       InheritedPropertySheets=".\atk-build-defines.vsprops"
+       >
+       <UserMacro
+               Name="DoGenGir"
+               Value="
+set VSVER=$(VSVer)&#x0D;&#x0A;
+set CONF=$(ConfigurationName)&#x0D;&#x0A;
+set PLAT=$(PlatformName)&#x0D;&#x0A;
+set BASEDIR=$(GLibEtcInstallRoot)&#x0D;&#x0A;
+
+cd ..&#x0D;&#x0A;
+call gengir.bat&#x0D;&#x0A;
+cd vs$(VSVer)&#x0D;&#x0A;
+                     "
+       />
+</VisualStudioPropertySheet>
diff --git a/build/win32/vs9/atk-install.vsprops b/build/win32/vs9/atk-install.vsprops
new file mode 100644
index 0000000..e0d7db9
--- /dev/null
+++ b/build/win32/vs9/atk-install.vsprops
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+       ProjectType="Visual C++"
+       Version="8.00"
+       Name="atkinstallprops"
+       InheritedPropertySheets=".\atk-build-defines.vsprops"
+       >
+       <UserMacro
+               Name="AtkDoInstall"
+               Value="
+mkdir $(OutDir)&#x0D;&#x0A;
+mkdir $(OutDir)\bin&#x0D;&#x0A;
+copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\*.dll $(OutDir)\bin&#x0D;&#x0A;
+
+mkdir $(OutDir)\lib&#x0D;&#x0A;
+copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\*-$(ApiVersion).lib $(OutDir)\lib&#x0D;&#x0A;
+
+mkdir $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atk.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkaction.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkcomponent.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkdocument.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkeditabletext.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkgobjectaccessible.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkhyperlink.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkhyperlinkimpl.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkhypertext.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atknoopobject.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atknoopobjectfactory.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkobject.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkobjectfactory.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkplug.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkimage.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkregistry.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkrelation.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkrelationtype.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkrelationset.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkselection.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atksocket.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkstate.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkstateset.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkstreamablecontent.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atktable.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atktext.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkutil.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkmisc.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkvalue.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkwindow.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atkversion.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+copy ..\..\..\atk\atk-enum-types.h $(OutDir)\include\atk-$(ApiVersion)\atk&#x0D;&#x0A;
+"
+       />
+</VisualStudioPropertySheet>
diff --git a/build/win32/vs9/atk-version-paths.vsprops b/build/win32/vs9/atk-version-paths.vsprops
new file mode 100644
index 0000000..af7d75c
--- /dev/null
+++ b/build/win32/vs9/atk-version-paths.vsprops
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+       ProjectType="Visual C++"
+       Version="8.00"
+       Name="atkversionpathsprops"
+       >
+       <UserMacro
+               Name="VSVer"
+               Value="9"
+       />
+       <UserMacro
+               Name="GLibEtcInstallRoot"
+               Value="$(SolutionDir)\..\..\..\..\vs$(VSVER)\$(PlatformName)"
+       />
+       <UserMacro
+               Name="DefDir"
+               Value="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\obj\$(ProjectName)"
+       />
+       <UserMacro
+               Name="ApiVersion"
+               Value="1.0"
+       />
+       <UserMacro
+               Name="AtkLibtoolCompatibleDllPrefix"
+               Value="lib"
+       />
+       <UserMacro
+               Name="AtkLibtoolCompatibleDllSuffix"
+               Value="-$(ApiVersion)-0"
+       />
+       <UserMacro
+               Name="AtkSeparateVSDllPrefix"
+               Value=""
+       />
+       <UserMacro
+               Name="AtkSeparateVSDllSuffix"
+               Value="-1-vs$(VSVER)"
+       />
+       <!-- Change these two to AtkLibtoolCompatibleDllPrefix and
+       AtkLibtoolCompatibleDllSuffix if that is what you want -->
+       <UserMacro
+               Name="AtkDllPrefix"
+               Value="$(AtkSeparateVSDllPrefix)"
+       />
+       <UserMacro
+               Name="AtkDllSuffix"
+               Value="$(AtkSeparateVSDllSuffix)"
+       />
+</VisualStudioPropertySheet>
diff --git a/build/win32/vs9/atk.vcprojin b/build/win32/vs9/atk.vcprojin
index 8a9fbc5..6dcd55d 100644
--- a/build/win32/vs9/atk.vcprojin
+++ b/build/win32/vs9/atk.vcprojin
@@ -22,7 +22,7 @@
                <Configuration
                        Name="Debug|Win32"
                        ConfigurationType="2"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gen-src.vsprops"
                        CharacterSet="2"
                        >
                        <Tool
@@ -54,7 +54,7 @@
                <Configuration
                        Name="Release|Win32"
                        ConfigurationType="2"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gen-src.vsprops"
                        CharacterSet="2"
                        WholeProgramOptimization="1"
                        >
@@ -88,7 +88,7 @@
                </Configuration>
                <Configuration
                        Name="Debug|x64"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gen-src.vsprops"
                        ConfigurationType="2"
                        CharacterSet="2"
                        >
@@ -120,7 +120,7 @@
                </Configuration>
                <Configuration
                        Name="Release|x64"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gen-src.vsprops"
                        ConfigurationType="2"
                        CharacterSet="2"
                        >
@@ -171,6 +171,40 @@
                        Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
                        UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
                        >
+                       <File RelativePath="..\..\..\config.h.win32">
+                               <FileConfiguration Name="Debug|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Copying config.h from config.h.win32..."
+                                               CommandLine="$(GenConfigH)"
+                                               Outputs="..\..\..\config.h"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Release|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Copying config.h from config.h.win32..."
+                                               CommandLine="$(GenConfigH)"
+                                               Outputs="..\..\..\config.h"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Debug|x64">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Copying config.h from config.h.win32..."
+                                               CommandLine="$(GenConfigH)"
+                                               Outputs="..\..\..\config.h"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Release|x64">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Copying config.h from config.h.win32..."
+                                               CommandLine="$(GenConfigH)"
+                                               Outputs="..\..\..\config.h"
+                                       />
+                               </FileConfiguration>
+                       </File>
                        <File RelativePath="..\..\..\atk\atkmarshal.list">
                                <FileConfiguration Name="Debug|Win32">
                                        <Tool
diff --git a/build/win32/vs9/gengir.vcproj b/build/win32/vs9/gengir.vcproj
index 5534388..000f56d 100644
--- a/build/win32/vs9/gengir.vcproj
+++ b/build/win32/vs9/gengir.vcproj
@@ -21,7 +21,7 @@
        <Configurations>
                <Configuration
                        Name="Debug|Win32"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gengir.vsprops"
                        OutputDirectory="$(GlibEtcInstallRoot)"
                        ConfigurationType="10"
                        CharacterSet="2"
@@ -34,7 +34,7 @@
                </Configuration>
                <Configuration
                        Name="Debug|x64"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gengir.vsprops"
                        OutputDirectory="$(GlibEtcInstallRoot)"
                        ConfigurationType="10"
                        CharacterSet="2"
@@ -47,7 +47,7 @@
                </Configuration>
                <Configuration
                        Name="Release|Win32"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gengir.vsprops"
                        OutputDirectory="$(GlibEtcInstallRoot)"
                        ConfigurationType="10"
                        CharacterSet="2"
@@ -61,7 +61,7 @@
                </Configuration>
                <Configuration
                        Name="Release|x64"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-gengir.vsprops"
                        OutputDirectory="$(GlibEtcInstallRoot)"
                        ConfigurationType="10"
                        CharacterSet="2"
diff --git a/build/win32/vs9/install.vcproj b/build/win32/vs9/install.vcproj
index 8ed4e1a..dcbdb53 100644
--- a/build/win32/vs9/install.vcproj
+++ b/build/win32/vs9/install.vcproj
@@ -23,7 +23,7 @@
                        OutputDirectory="$(GLibEtcInstallRoot)"
                        IntermediateDirectory="$(ConfigurationName)"
                        ConfigurationType="10"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-install.vsprops"
                        CharacterSet="2"
                        >
                        <Tool
@@ -34,7 +34,7 @@
                <Configuration
                        Name="Debug|x64"
                        OutputDirectory="$(GLibEtcInstallRoot)"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-install.vsprops"
                        ConfigurationType="10"
                        CharacterSet="2"
                        DeleteExtensionsOnClean=""
@@ -49,7 +49,7 @@
                        OutputDirectory="$(GLibEtcInstallRoot)"
                        IntermediateDirectory="$(ConfigurationName)"
                        ConfigurationType="10"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-install.vsprops"
                        CharacterSet="2"
                        WholeProgramOptimization="1"
                        >
@@ -61,7 +61,7 @@
                <Configuration
                        Name="Release|x64"
                        OutputDirectory="$(GLibEtcInstallRoot)"
-                       InheritedPropertySheets=".\atk.vsprops"
+                       InheritedPropertySheets=".\atk-install.vsprops"
                        ConfigurationType="10"
                        CharacterSet="2"
                        WholeProgramOptimization="1"


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]