[atkmm] Overhaul the Visual Studio 2010 Projects



commit 14fe675be237ddd9b3688281020eb9817b646b56
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Fri Sep 19 16:10:49 2014 +0800

    Overhaul the Visual Studio 2010 Projects
    
    Give the Visual Studio 2010 Projects an overhaul, by using property sheets
    to consolidate commonly-used items, so to ease future maintenance, and move
    all the projects to MSVC_Net2010.
    
        * MSVC_Net2010/atkmm-build-defines.props:
        * MSVC_Net2010/atkmm-version-paths.props: Add property sheets to
          consolidate the commonly-used items, so that projects can refer
          to them.
        * MSVC_Net2010/gendef/gendef.vcxproj:
        * MSVC_Net2010/gendef/gendef.vcxproj.filters:
        * MSVC_Net2010/atkmm/atkmm.vcxproj:
        * MSVC_Net2010/atkmm/atkmm.vcxproj.filters: Clean up using the
          property sheets, and move to MSVC_Net2010/.  Adjust the file
          paths accordingly, and add a PlatformToolset tag so that it would
          be easier to support Visual Studio 2012/2013.  Also produce
          .pdb files for Release builds.
        * MSVC_Net2010/atkmm.sln:
        * MSVC_Net2010/filelist.am: Adjust file paths accordingly.

 MSVC_Net2010/atkmm-build-defines.props           |   37 +++++
 MSVC_Net2010/atkmm-version-paths.props           |   42 ++++++
 MSVC_Net2010/atkmm.sln                           |    4 +-
 MSVC_Net2010/{atkmm => }/atkmm.vcxproj           |  170 ++++++++++-----------
 MSVC_Net2010/atkmm.vcxproj.filters               |   68 +++++++++
 MSVC_Net2010/atkmm/atkmm.vcxproj.filters         |   68 ---------
 MSVC_Net2010/filelist.am                         |   10 +-
 MSVC_Net2010/{gendef => }/gendef.vcxproj         |   32 ++---
 MSVC_Net2010/{gendef => }/gendef.vcxproj.filters |    2 +-
 9 files changed, 250 insertions(+), 183 deletions(-)
---
diff --git a/MSVC_Net2010/atkmm-build-defines.props b/MSVC_Net2010/atkmm-build-defines.props
new file mode 100644
index 0000000..53e4a4c
--- /dev/null
+++ b/MSVC_Net2010/atkmm-build-defines.props
@@ -0,0 +1,37 @@
+<?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="atkmm-version-paths.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <AtkMMBuildDefs>ATKMM_BUILD</AtkMMBuildDefs>
+    <CPPDepLibsRelease>glibmm-vc$(VSVer)0-2_4.lib;sigc-vc$(VSVer)0-2_0.lib</CPPDepLibsRelease>
+    <CPPDepLibsDebug>glibmm-vc$(VSVer)0-d-2_4.lib;sigc-vc$(VSVer)0-d-2_0.lib</CPPDepLibsDebug>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>panogmmbuilddefinesprops</_PropertySheetDisplayName>
+    <OutDir>$(SolutionDir)$(Configuration)\$(PlatformName)\bin\</OutDir>
+    <IntDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      
<AdditionalIncludeDirectories>.\atkmm;..\atk;$(GlibEtcInstallRoot)\include\glibmm-2.4;$(GlibEtcInstallRoot)\lib\glibmm-2.4\include;$(GlibEtcInstallRoot)\include\sigc++-2.0;$(GlibEtcInstallRoot)\lib\sigc++-2.0\include;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <ForcedIncludeFiles>msvc_recommended_pragmas.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
+    </ClCompile>
+    <Link>
+      
<AdditionalDependencies>atk-1.0.lib;gobject-2.0.lib;glib-2.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      
<AdditionalLibraryDirectories>$(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <BuildMacro Include="AtkMMBuildDefs">
+      <Value>$(AtkMMBuildDefs)</Value>
+    </BuildMacro>
+    <BuildMacro Include="CPPDepLibsRelease">
+      <Value>$(CPPDepLibsRelease)</Value>
+    </BuildMacro>
+    <BuildMacro Include="CPPDepLibsDebug">
+      <Value>$(CPPDepLibsDebug)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/MSVC_Net2010/atkmm-version-paths.props b/MSVC_Net2010/atkmm-version-paths.props
new file mode 100644
index 0000000..8c487fa
--- /dev/null
+++ b/MSVC_Net2010/atkmm-version-paths.props
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <PropertyGroup Label="UserMacros">
+    <VSVer>10</VSVer>
+    <GlibEtcInstallRoot>$(SolutionDir)\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
+    <CopyDir>$(GlibEtcInstallRoot)</CopyDir>
+    <DefDir>$(SolutionDir)$(Configuration)\$(Platform)\obj\$(ProjectName)\</DefDir>
+    <ApiMajorVersion>1</ApiMajorVersion>
+    <ApiMinorVersion>6</ApiMinorVersion>
+    <ReleaseDllSuffix>-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion)</ReleaseDllSuffix>
+    <DebugDllSuffix>-vc$(VSVer)0-d-$(ApiMajorVersion)_$(ApiMinorVersion)</DebugDllSuffix>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>atkmmversionpathsprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="VSVer">
+      <Value>$(VSVer)</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="ApiMajorVersion">
+      <Value>$(ApiMajorVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="ApiMinorVersion">
+      <Value>$(ApiMinorVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="ReleaseDllSuffix">
+      <Value>$(ReleaseDllSuffix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="DebugDllSuffix">
+      <Value>$(DebugDllSuffix)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/MSVC_Net2010/atkmm.sln b/MSVC_Net2010/atkmm.sln
index 0b2fceb..fd91d5a 100644
--- a/MSVC_Net2010/atkmm.sln
+++ b/MSVC_Net2010/atkmm.sln
@@ -1,8 +1,8 @@
 Microsoft Visual Studio Solution File, Format Version 11.00
 # Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "atkmm-1.6", "atkmm\atkmm.vcxproj", 
"{9FE0D5A6-458C-45C7-B954-2C3C1E6196C2}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "atkmm", "atkmm.vcxproj", 
"{9FE0D5A6-458C-45C7-B954-2C3C1E6196C2}"
 EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gendef", "gendef\gendef.vcxproj", 
"{07324745-C9BE-4D65-B08A-9C88188C0C28}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gendef", "gendef.vcxproj", 
"{07324745-C9BE-4D65-B08A-9C88188C0C28}"
 EndProject
 Global
        GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/MSVC_Net2010/atkmm/atkmm.vcxproj b/MSVC_Net2010/atkmm.vcxproj
similarity index 50%
rename from MSVC_Net2010/atkmm/atkmm.vcxproj
rename to MSVC_Net2010/atkmm.vcxproj
index 5961873..1d418f7 100644
--- a/MSVC_Net2010/atkmm/atkmm.vcxproj
+++ b/MSVC_Net2010/atkmm.vcxproj
@@ -19,7 +19,7 @@
     </ProjectConfiguration>
   </ItemGroup>
   <PropertyGroup Label="Globals">
-    <ProjectName>atkmm-1.6</ProjectName>
+    <ProjectName>atkmm</ProjectName>
     <ProjectGuid>{9FE0D5A6-458C-45C7-B954-2C3C1E6196C2}</ProjectGuid>
     <Keyword>Win32Proj</Keyword>
   </PropertyGroup>
@@ -27,63 +27,58 @@
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
   </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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.props" />
   </ImportGroup>
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
     <PreLinkEventUseInBuild 
Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreLinkEventUseInBuild>
-    <OutDir 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
     <PreLinkEventUseInBuild 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</PreLinkEventUseInBuild>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
     <PreLinkEventUseInBuild 
Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreLinkEventUseInBuild>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
     <PreLinkEventUseInBuild 
Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</PreLinkEventUseInBuild>
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">atkmm-vc100-d-1_6</TargetName>
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">atkmm-vc100-d-1_6</TargetName>
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">atkmm-vc100-1_6</TargetName>
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">atkmm-vc100-1_6</TargetName>
+    <TargetName 
Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectName)$(DebugDllSuffix)</TargetName>
+    <TargetName 
Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectName)$(DebugDllSuffix)</TargetName>
+    <TargetName 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectName)$(ReleaseDllSuffix)</TargetName>
+    <TargetName 
Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectName)$(ReleaseDllSuffix)</TargetName>
   </PropertyGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
     <ClCompile>
       <AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
       <Optimization>Disabled</Optimization>
-      
<AdditionalIncludeDirectories>../../atk;$(SolutionDir)\..\..\vs10\win32\include\glibmm-2.4;$(SolutionDir)\..\..\vs10\win32\lib\glibmm-2.4\include;$(SolutionDir)\..\..\vs10\win32\include\sigc++-2.0;$(SolutionDir)\..\..\vs10\win32\lib\sigc++-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>_DEBUG;ATKMM_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>_DEBUG;$(AtkMMBuildDefs);%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <MinimalRebuild>true</MinimalRebuild>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -95,13 +90,12 @@
     </ClCompile>
     <PreLinkEvent>
       <Message>Generate atkmm def file</Message>
-      <Command>$(SolutionDir)gendef\$(Platform)\$(Configuration)\gendef 
$(Platform)\$(Configuration)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
+      <Command>$(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
     </PreLinkEvent>
     <Link>
-      
<AdditionalDependencies>atk-1.0.lib;glib-2.0.lib;gobject-2.0.lib;sigc-vc100-d-2_0.lib;glibmm-vc100-d-2_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      
<AdditionalLibraryDirectories>$(SolutionDir)\..\..\vs10\win32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-      <OutputFile>$(OutDir)atkmm-vc100-d-1_6.dll</OutputFile>
-      <ModuleDefinitionFile>$(Platform)\$(Configuration)\$(ProjectName).def</ModuleDefinitionFile>
+      <AdditionalDependencies>$(CPPDepLibsDebug);%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(ProjectName)$(DebugDllSuffix).dll</OutputFile>
+      <ModuleDefinitionFile>$(IntDir)\$(ProjectName).def</ModuleDefinitionFile>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <RandomizedBaseAddress>false</RandomizedBaseAddress>
       <DataExecutionPrevention>
@@ -111,8 +105,7 @@
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
     <ClCompile>
       <AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
-      
<AdditionalIncludeDirectories>../../atk;$(SolutionDir)\..\..\vs10\win32\include\glibmm-2.4;$(SolutionDir)\..\..\vs10\win32\lib\glibmm-2.4\include;$(SolutionDir)\..\..\vs10\win32\include\sigc++-2.0;$(SolutionDir)\..\..\vs10\win32\lib\sigc++-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>ATKMM_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>$(AtkMMBuildDefs);%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
       <RuntimeTypeInfo>true</RuntimeTypeInfo>
       <PrecompiledHeader>
@@ -122,13 +115,14 @@
     </ClCompile>
     <PreLinkEvent>
       <Message>Generate atkmm def file</Message>
-      <Command>$(SolutionDir)gendef\$(Platform)\$(Configuration)\gendef 
$(Platform)\$(Configuration)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
+      <Command>$(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
     </PreLinkEvent>
     <Link>
-      
<AdditionalDependencies>atk-1.0.lib;glib-2.0.lib;gobject-2.0.lib;sigc-vc100-2_0.lib;glibmm-vc100-2_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      
<AdditionalLibraryDirectories>$(SolutionDir)\..\..\vs10\win32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-      <OutputFile>$(OutDir)atkmm-vc100-1_6.dll</OutputFile>
-      <ModuleDefinitionFile>$(Platform)\$(Configuration)\$(ProjectName).def</ModuleDefinitionFile>
+      <AdditionalDependencies>$(CPPDepLibsRelease);%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(ProjectName)$(ReleaseDllSuffix).dll</OutputFile>
+      <ModuleDefinitionFile>$(IntDir)\$(ProjectName).def</ModuleDefinitionFile>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <OptimizeReferences>true</OptimizeReferences>
       <RandomizedBaseAddress>false</RandomizedBaseAddress>
       <DataExecutionPrevention>
       </DataExecutionPrevention>
@@ -141,8 +135,7 @@
     <ClCompile>
       <AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
       <Optimization>Disabled</Optimization>
-      
<AdditionalIncludeDirectories>../../atk;$(SolutionDir)\..\..\vs10\x64\include\glibmm-2.4;$(SolutionDir)\..\..\vs10\x64\lib\glibmm-2.4\include;$(SolutionDir)\..\..\vs10\x64\include\sigc++-2.0;$(SolutionDir)\..\..\vs10\x64\lib\sigc++-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>_DEBUG;ATKMM_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>_DEBUG;$(AtkMMBuildDefs);%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <MinimalRebuild>true</MinimalRebuild>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -154,13 +147,12 @@
     </ClCompile>
     <PreLinkEvent>
       <Message>Generate atkmm def file</Message>
-      <Command>$(SolutionDir)gendef\$(Platform)\$(Configuration)\gendef 
$(Platform)\$(Configuration)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
+      <Command>$(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
     </PreLinkEvent>
     <Link>
-      
<AdditionalDependencies>atk-1.0.lib;glib-2.0.lib;gobject-2.0.lib;sigc-vc100-d-2_0.lib;glibmm-vc100-d-2_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      
<AdditionalLibraryDirectories>$(SolutionDir)\..\..\vs10\x64\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-      <OutputFile>$(OutDir)atkmm-vc100-d-1_6.dll</OutputFile>
-      <ModuleDefinitionFile>$(Platform)\$(Configuration)\$(ProjectName).def</ModuleDefinitionFile>
+      <AdditionalDependencies>$(CPPDepLibsDebug);%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(ProjectName)$(DebugDllSuffix).dll</OutputFile>
+      <ModuleDefinitionFile>$(IntDir)\$(ProjectName).def</ModuleDefinitionFile>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <RandomizedBaseAddress>false</RandomizedBaseAddress>
       <DataExecutionPrevention>
@@ -174,8 +166,7 @@
     </Midl>
     <ClCompile>
       <AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
-      
<AdditionalIncludeDirectories>../../atk;$(SolutionDir)\..\..\vs10\x64\include\glibmm-2.4;$(SolutionDir)\..\..\vs10\x64\lib\glibmm-2.4\include;$(SolutionDir)\..\..\vs10\x64\include\sigc++-2.0;$(SolutionDir)\..\..\vs10\x64\lib\sigc++-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>ATKMM_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>$(AtkMMBuildDefs);%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
       <RuntimeTypeInfo>true</RuntimeTypeInfo>
       <PrecompiledHeader>
@@ -185,13 +176,14 @@
     </ClCompile>
     <PreLinkEvent>
       <Message>Generate atkmm def file</Message>
-      <Command>$(SolutionDir)gendef\$(Platform)\$(Configuration)\gendef 
$(Platform)\$(Configuration)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
+      <Command>$(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(TargetFileName) $(IntDir)*.obj</Command>
     </PreLinkEvent>
     <Link>
-      
<AdditionalDependencies>atk-1.0.lib;glib-2.0.lib;gobject-2.0.lib;sigc-vc100-2_0.lib;glibmm-vc100-2_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      
<AdditionalLibraryDirectories>$(SolutionDir)\..\..\vs10\x64\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-      <OutputFile>$(OutDir)atkmm-vc100-1_6.dll</OutputFile>
-      <ModuleDefinitionFile>$(Platform)\$(Configuration)\$(ProjectName).def</ModuleDefinitionFile>
+      <AdditionalDependencies>$(CPPDepLibsRelease);%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(ProjectName)$(ReleaseDllSuffix).dll</OutputFile>
+      <ModuleDefinitionFile>$(IntDir)\$(ProjectName).def</ModuleDefinitionFile>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <OptimizeReferences>true</OptimizeReferences>
       <RandomizedBaseAddress>false</RandomizedBaseAddress>
       <DataExecutionPrevention>
       </DataExecutionPrevention>
@@ -199,56 +191,56 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\atk\atkmm\action.cc" />
-    <ClCompile Include="..\..\atk\atkmm\component.cc" />
-    <ClCompile Include="..\..\atk\atkmm\document.cc" />
-    <ClCompile Include="..\..\atk\atkmm\editabletext.cc" />
-    <ClCompile Include="..\..\atk\atkmm\hyperlink.cc" />
-    <ClCompile Include="..\..\atk\atkmm\hypertext.cc" />
-    <ClCompile Include="..\..\atk\atkmm\image.cc" />
-    <ClCompile Include="..\..\atk\atkmm\implementor.cc" />
-    <ClCompile Include="..\..\atk\atkmm\init.cc" />
-    <ClCompile Include="..\..\atk\atkmm\noopobject.cc" />
-    <ClCompile Include="..\..\atk\atkmm\object.cc" />
-    <ClCompile Include="..\..\atk\atkmm\objectaccessible.cc" />
-    <ClCompile Include="..\..\atk\atkmm\relation.cc" />
-    <ClCompile Include="..\..\atk\atkmm\relationset.cc" />
-    <ClCompile Include="..\..\atk\atkmm\selection.cc" />
-    <ClCompile Include="..\..\atk\atkmm\stateset.cc" />
-    <ClCompile Include="..\..\atk\atkmm\streamablecontent.cc" />
-    <ClCompile Include="..\..\atk\atkmm\table.cc" />
-    <ClCompile Include="..\..\atk\atkmm\text.cc" />
-    <ClCompile Include="..\..\atk\atkmm\value.cc" />
-    <ClCompile Include="..\..\atk\atkmm\wrap_init.cc" />
+    <ClCompile Include="..\atk\atkmm\action.cc" />
+    <ClCompile Include="..\atk\atkmm\component.cc" />
+    <ClCompile Include="..\atk\atkmm\document.cc" />
+    <ClCompile Include="..\atk\atkmm\editabletext.cc" />
+    <ClCompile Include="..\atk\atkmm\hyperlink.cc" />
+    <ClCompile Include="..\atk\atkmm\hypertext.cc" />
+    <ClCompile Include="..\atk\atkmm\image.cc" />
+    <ClCompile Include="..\atk\atkmm\implementor.cc" />
+    <ClCompile Include="..\atk\atkmm\init.cc" />
+    <ClCompile Include="..\atk\atkmm\noopobject.cc" />
+    <ClCompile Include="..\atk\atkmm\object.cc" />
+    <ClCompile Include="..\atk\atkmm\objectaccessible.cc" />
+    <ClCompile Include="..\atk\atkmm\relation.cc" />
+    <ClCompile Include="..\atk\atkmm\relationset.cc" />
+    <ClCompile Include="..\atk\atkmm\selection.cc" />
+    <ClCompile Include="..\atk\atkmm\stateset.cc" />
+    <ClCompile Include="..\atk\atkmm\streamablecontent.cc" />
+    <ClCompile Include="..\atk\atkmm\table.cc" />
+    <ClCompile Include="..\atk\atkmm\text.cc" />
+    <ClCompile Include="..\atk\atkmm\value.cc" />
+    <ClCompile Include="..\atk\atkmm\wrap_init.cc" />
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="..\..\atk\atkmm\action.h" />
-    <ClInclude Include="..\..\atk\atkmm\component.h" />
-    <ClInclude Include="..\..\atk\atkmm\document.h" />
-    <ClInclude Include="..\..\atk\atkmm\editabletext.h" />
-    <ClInclude Include="..\..\atk\atkmm\hyperlink.h" />
-    <ClInclude Include="..\..\atk\atkmm\hypertext.h" />
-    <ClInclude Include="..\..\atk\atkmm\image.h" />
-    <ClInclude Include="..\..\atk\atkmm\implementor.h" />
-    <ClInclude Include="..\..\atk\atkmm\init.h" />
-    <ClInclude Include="..\..\atk\atkmm\noopobject.h" />
-    <ClInclude Include="..\..\atk\atkmm\object.h" />
-    <ClInclude Include="..\..\atk\atkmm\objectaccessible.h" />
-    <ClInclude Include="..\..\atk\atkmm\relation.h" />
-    <ClInclude Include="..\..\atk\atkmm\relationset.h" />
-    <ClInclude Include="..\..\atk\atkmm\selection.h" />
-    <ClInclude Include="..\..\atk\atkmm\stateset.h" />
-    <ClInclude Include="..\..\atk\atkmm\streamablecontent.h" />
-    <ClInclude Include="..\..\atk\atkmm\table.h" />
-    <ClInclude Include="..\..\atk\atkmm\text.h" />
-    <ClInclude Include="..\..\atk\atkmm\value.h" />
-    <ClInclude Include="..\..\atk\atkmm\wrap_init.h" />
+    <ClInclude Include="..\atk\atkmm\action.h" />
+    <ClInclude Include="..\atk\atkmm\component.h" />
+    <ClInclude Include="..\atk\atkmm\document.h" />
+    <ClInclude Include="..\atk\atkmm\editabletext.h" />
+    <ClInclude Include="..\atk\atkmm\hyperlink.h" />
+    <ClInclude Include="..\atk\atkmm\hypertext.h" />
+    <ClInclude Include="..\atk\atkmm\image.h" />
+    <ClInclude Include="..\atk\atkmm\implementor.h" />
+    <ClInclude Include="..\atk\atkmm\init.h" />
+    <ClInclude Include="..\atk\atkmm\noopobject.h" />
+    <ClInclude Include="..\atk\atkmm\object.h" />
+    <ClInclude Include="..\atk\atkmm\objectaccessible.h" />
+    <ClInclude Include="..\atk\atkmm\relation.h" />
+    <ClInclude Include="..\atk\atkmm\relationset.h" />
+    <ClInclude Include="..\atk\atkmm\selection.h" />
+    <ClInclude Include="..\atk\atkmm\stateset.h" />
+    <ClInclude Include="..\atk\atkmm\streamablecontent.h" />
+    <ClInclude Include="..\atk\atkmm\table.h" />
+    <ClInclude Include="..\atk\atkmm\text.h" />
+    <ClInclude Include="..\atk\atkmm\value.h" />
+    <ClInclude Include="..\atk\atkmm\wrap_init.h" />
   </ItemGroup>
   <ItemGroup>
-    <ResourceCompile Include="atkmm.rc" />
+    <ResourceCompile Include=".\atkmm\atkmm.rc" />
   </ItemGroup>
   <ItemGroup>
-    <ProjectReference Include="..\gendef\gendef.vcxproj">
+    <ProjectReference Include="gendef.vcxproj">
       <Project>{07324745-c9be-4d65-b08a-9c88188c0c28}</Project>
       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
     </ProjectReference>
diff --git a/MSVC_Net2010/atkmm.vcxproj.filters b/MSVC_Net2010/atkmm.vcxproj.filters
new file mode 100644
index 0000000..168432c
--- /dev/null
+++ b/MSVC_Net2010/atkmm.vcxproj.filters
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\atk\atkmm\action.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\component.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\document.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\editabletext.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\hyperlink.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\hypertext.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\image.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\implementor.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\init.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\noopobject.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\object.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\objectaccessible.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\relation.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\relationset.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\selection.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\stateset.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\streamablecontent.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\table.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\text.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\value.cc"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\atk\atkmm\wrap_init.cc"><Filter>Source Files</Filter></ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\atk\atkmm\action.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\component.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\document.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\editabletext.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\hyperlink.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\hypertext.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\image.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\implementor.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\init.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\noopobject.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\object.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\objectaccessible.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\relation.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\relationset.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\selection.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\stateset.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\streamablecontent.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\table.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\text.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\value.h"><Filter>Header Files</Filter></ClInclude>
+    <ClInclude Include="..\atk\atkmm\wrap_init.h"><Filter>Header Files</Filter></ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="atkmm.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/MSVC_Net2010/filelist.am b/MSVC_Net2010/filelist.am
index 2edff3e..e2c2d21 100644
--- a/MSVC_Net2010/filelist.am
+++ b/MSVC_Net2010/filelist.am
@@ -2,10 +2,12 @@
 
 msvc_net2010_data =                    \
        atkmm.sln                       \
-       gendef/gendef.vcxproj           \
-       gendef/gendef.vcxproj.filters   \
+       atkmm-build-defines.props       \
+       atkmm-version-paths.props       \
+       gendef.vcxproj                  \
+       gendef.vcxproj.filters          \
        gendef/gendef.cc                \
        atkmm/atkmm.rc                  \
-       atkmm/atkmm.vcxproj             \
-       atkmm/atkmm.vcxproj.filters     \
+       atkmm.vcxproj                   \
+       atkmm.vcxproj.filters           \
        atkmm/atkmmconfig.h
diff --git a/MSVC_Net2010/gendef/gendef.vcxproj b/MSVC_Net2010/gendef.vcxproj
similarity index 82%
rename from MSVC_Net2010/gendef/gendef.vcxproj
rename to MSVC_Net2010/gendef.vcxproj
index 9f1d504..561499b 100644
--- a/MSVC_Net2010/gendef/gendef.vcxproj
+++ b/MSVC_Net2010/gendef.vcxproj
@@ -26,51 +26,47 @@
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
   </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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.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="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
+    <Import Project=".\atkmm-build-defines.props" />
   </ImportGroup>
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
-    <OutDir 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
   </PropertyGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
@@ -86,9 +82,8 @@
       <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <OutputFile>$(OutDir)gendef.exe</OutputFile>
+      <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
       <GenerateDebugInformation>true</GenerateDebugInformation>
-      <ProgramDatabaseFile>$(OutDir)gendef.pdb</ProgramDatabaseFile>
       <SubSystem>Console</SubSystem>
       <RandomizedBaseAddress>false</RandomizedBaseAddress>
       <DataExecutionPrevention>
@@ -106,7 +101,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <OutputFile>$(OutDir)gendef.exe</OutputFile>
+      <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
@@ -133,9 +128,8 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <OutputFile>$(OutDir)gendef.exe</OutputFile>
+      <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
       <GenerateDebugInformation>true</GenerateDebugInformation>
-      <ProgramDatabaseFile>$(OutDir)gendef.pdb</ProgramDatabaseFile>
       <SubSystem>Console</SubSystem>
       <RandomizedBaseAddress>false</RandomizedBaseAddress>
       <DataExecutionPrevention>
@@ -156,7 +150,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <OutputFile>$(OutDir)gendef.exe</OutputFile>
+      <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
@@ -168,7 +162,7 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="gendef.cc" />
+    <ClCompile Include=".\gendef\gendef.cc" />
   </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
diff --git a/MSVC_Net2010/gendef/gendef.vcxproj.filters b/MSVC_Net2010/gendef.vcxproj.filters
similarity index 93%
rename from MSVC_Net2010/gendef/gendef.vcxproj.filters
rename to MSVC_Net2010/gendef.vcxproj.filters
index ec3f611..918d0ca 100644
--- a/MSVC_Net2010/gendef/gendef.vcxproj.filters
+++ b/MSVC_Net2010/gendef.vcxproj.filters
@@ -15,7 +15,7 @@
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="gendef.cc">
+    <ClCompile Include=".\gendef\gendef.cc">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>



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