[pango] build: Integrate introspection build in MSVC projects



commit 346c60ba0e13aeb5baf2d8e24ff121cb8d2ee64e
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Fri Aug 25 15:08:29 2017 +0800

    build: Integrate introspection build in MSVC projects
    
    This adds the introspection NMake Makefiles buildable from within the
    Visual Studio projects, so that the whole Visual Studio build process
    would be simplified.  At its current state, this will build the
    introspection files for PangoCairo and Pango, but does not include
    PangoFT2 support, so this is not supported in the [Release|Debug]_FC
    configs.  For this to work, one needs to have a complete installation of
    GObject-introspection in $(GlibEtcInstallRoot), and will need to ensure
    that PythonDir (or PythonDirX64 on x64 systems) corresponds to the
    same Python series that was used to build GObject-Introspection.
    
    This needs to be built (and cleaned) separately as this is not built by
    default, by building/cleaning the pango-introspect project directly.
    
    In this commit, also rename the PythonPath entries in the projects and
    property sheets, so that we avoid getting confused with the PYTHONPATH
    envvar; and for Visual Studio 201x builds, we use Python 3.4.x by
    default 2010, 2012 and 2013, and 3.6.x by default for 2015 and 2017, as
    what is done now in GObject-Introspection projects.

 win32/vs10/Makefile.am                   |    1 +
 win32/vs10/pango-build-defines.props     |   10 +++
 win32/vs10/pango-install.propsin         |    4 +-
 win32/vs10/pango-introspect.vcxproj      |  103 ++++++++++++++++++++++++++++++
 win32/vs10/pango-version-paths.props.in  |   24 +++++--
 win32/vs10/pango.sln                     |    6 ++
 win32/vs11/Makefile.am                   |    1 +
 win32/vs12/Makefile.am                   |    1 +
 win32/vs14/Makefile.am                   |    1 +
 win32/vs15/Makefile.am                   |    1 +
 win32/vs9/Makefile.am                    |    1 +
 win32/vs9/pango-build-defines.vsprops    |    8 ++
 win32/vs9/pango-install.vspropsin        |    4 +-
 win32/vs9/pango-introspect.vcproj        |   76 ++++++++++++++++++++++
 win32/vs9/pango-version-paths.vsprops.in |   14 +++-
 win32/vs9/pango.sln                      |    9 +++
 16 files changed, 251 insertions(+), 13 deletions(-)
---
diff --git a/win32/vs10/Makefile.am b/win32/vs10/Makefile.am
index 30ebcff..e654c3b 100644
--- a/win32/vs10/Makefile.am
+++ b/win32/vs10/Makefile.am
@@ -27,6 +27,7 @@ EXTRA_DIST =  \
        pangocairo.vcxproj.filtersin            \
        pango-install.vcxproj                   \
        pango-install.vcxproj.filters           \
+       pango-introspect.vcxproj                \
        README.txt                              \
        $(GENERATED_ITEMS)
 
diff --git a/win32/vs10/pango-build-defines.props b/win32/vs10/pango-build-defines.props
index bb15936..3f60480 100644
--- a/win32/vs10/pango-build-defines.props
+++ b/win32/vs10/pango-build-defines.props
@@ -11,6 +11,10 @@
     <PangoFT2Incs>..;$(GlibEtcInstallRoot)\include\harfbuzz</PangoFT2Incs>
     <PangoFT2Libs>fontconfig.lib;freetype.lib;harfbuzz.lib</PangoFT2Libs>
     <PangoCairoIncs>$(GlibEtcInstallRoot)\include\cairo</PangoCairoIncs>
+    <PangoIntrospectNMakeCmd>cd ..
+set VCInstallDir=$(VCInstallDir)
+nmake -f pango-introspection-msvc.mak CFG=$(Configuration) 
PREFIX=$(GlibEtcInstallRoot)</PangoIntrospectNMakeCmd>
+    
<PangoIntrospectBuiltFiles>$(SolutionDir)\..\PangoCairo-1.0.gir;$(SolutionDir)\..\PangoCairo-1.0.typelib;$(SolutionDir)\..\Pango-1.0.gir;$(SolutionDir)\..\Pango-1.0.typelib</PangoIntrospectBuiltFiles>
   </PropertyGroup>
   <PropertyGroup>
     <_PropertySheetDisplayName>pangobuilddefinesprops</_PropertySheetDisplayName>
@@ -53,5 +57,11 @@
     <BuildMacro Include="PangoCairoIncs">
       <Value>$(PangoCairoIncs)</Value>
     </BuildMacro>
+    <BuildMacro Include="PangoIntrospectNMakeCmd">
+      <Value>$(PangoIntrospectNMakeCmd)</Value>
+    </BuildMacro>
+    <BuildMacro Include="PangoIntrospectBuiltFiles">
+      <Value>$(PangoIntrospectBuiltFiles)</Value>
+    </BuildMacro>
   </ItemGroup>
 </Project>
diff --git a/win32/vs10/pango-install.propsin b/win32/vs10/pango-install.propsin
index 5fbe5da..998d98c 100644
--- a/win32/vs10/pango-install.propsin
+++ b/win32/vs10/pango-install.propsin
@@ -25,8 +25,8 @@ copy ..\..\pango\pangoft2.h $(CopyDir)\include\pango-$(ApiVersion)\pango
 if exist ..\pangoft2.pc copy ..\pangoft2.pc $(CopyDir)\lib\pkgconfig
 :END
 </PangoInstallHeadersData>
-    <GenPangoPC>if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)</GenPangoPC>
-    <GenPangoPCX64>if exist $(PythonPathX64)\python.exe $(PythonPathX64)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)</GenPangoPCX64>
+    <GenPangoPC>if exist $(PythonDir)\python.exe $(PythonDir)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)</GenPangoPC>
+    <GenPangoPCX64>if exist $(PythonDirX64)\python.exe $(PythonDirX64)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)</GenPangoPCX64>
     <PangoPCFiles>..\pango.pc;..\pangowin32.pc;..\pangocairo.pc</PangoPCFiles>
     <PangoFT2PCFiles>..\pangoft2.pc</PangoFT2PCFiles>
   </PropertyGroup>
diff --git a/win32/vs10/pango-introspect.vcxproj b/win32/vs10/pango-introspect.vcxproj
new file mode 100644
index 0000000..6bab31e
--- /dev/null
+++ b/win32/vs10/pango-introspect.vcxproj
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{2FE2F832-D857-450E-99AF-549AC88422F2}</ProjectGuid>
+    <RootNamespace>pangointrospect</RootNamespace>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v100</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v100</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="pango-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="pango-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="pango-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="pango-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <NMakeBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) 
install-introspection</NMakeBuildCommandLine>
+    <NMakeReBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean 
install-introspection</NMakeReBuildCommandLine>
+    <NMakeCleanCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean</NMakeCleanCommandLine>
+    <NMakeOutput>$(PangoIntrospectBuiltFiles)</NMakeOutput>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <NMakeBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) 
install-introspection</NMakeBuildCommandLine>
+    <NMakeReBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean 
install-introspection</NMakeReBuildCommandLine>
+    <NMakeCleanCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean</NMakeCleanCommandLine>
+    <NMakeOutput>$(PangoIntrospectBuiltFiles)</NMakeOutput>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <NMakeBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
install-introspection</NMakeBuildCommandLine>
+    <NMakeReBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) clean 
install-introspection</NMakeReBuildCommandLine>
+    <NMakeCleanCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
clean</NMakeCleanCommandLine>
+    <NMakeOutput>$(PangoIntrospectBuiltFiles)</NMakeOutput>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <NMakeBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
install-introspection</NMakeBuildCommandLine>
+    <NMakeReBuildCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) clean 
install-introspection</NMakeReBuildCommandLine>
+    <NMakeCleanCommandLine>$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
clean</NMakeCleanCommandLine>
+    <NMakeOutput>$(PangoIntrospectBuiltFiles)</NMakeOutput>
+  </PropertyGroup>
+  <ItemGroup>
+    <ProjectReference Include="pango-install.vcxproj">
+      <Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073fb}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/win32/vs10/pango-version-paths.props.in b/win32/vs10/pango-version-paths.props.in
index 6ba33a1..af921aa 100644
--- a/win32/vs10/pango-version-paths.props.in
+++ b/win32/vs10/pango-version-paths.props.in
@@ -14,8 +14,14 @@
     <PangoSeparateVSDllSuffix>-1-vs$(VSVer)</PangoSeparateVSDllSuffix>
     <PangoDllPrefix>$(PangoSeparateVSDllPrefix)</PangoDllPrefix>
     <PangoDllSuffix>$(PangoSeparateVSDllSuffix)</PangoDllSuffix>
-    <PythonPath>c:\python34</PythonPath>
-    <PythonPathX64>$(PythonPath).x64</PythonPathX64>
+    <PythonDir Condition="'$(VisualStudioVersion)' == '10.0'">c:\python34</PythonDir>
+    <PythonDir Condition="'$(VisualStudioVersion)' == '11.0'">c:\python34</PythonDir>
+    <PythonDir Condition="'$(VisualStudioVersion)' == '12.0'">c:\python34</PythonDir>
+    <PythonDir Condition="'$(VisualStudioVersion)' == '14.0'">c:\python36</PythonDir>
+    <PythonDir Condition="'$(VisualStudioVersion)' == '15.0'">c:\python36</PythonDir>
+    <PythonDirX64>$(PythonDir).x64</PythonDirX64>
+    <IntrospectPythonParam>PYTHON=$(PythonDir)\python.exe</IntrospectPythonParam>
+    <IntrospectPythonParamX64>PYTHON=$(PythonDirX64)\python.exe</IntrospectPythonParamX64>
   </PropertyGroup>
   <PropertyGroup>
     <_PropertySheetDisplayName>pangoversionpathsprops</_PropertySheetDisplayName>
@@ -60,11 +66,17 @@
     <BuildMacro Include="PangoDllSuffix">
       <Value>$(PangoDllSuffix)</Value>
     </BuildMacro>
-    <BuildMacro Include="PythonPath">
-      <Value>$(PythonPath)</Value>
+    <BuildMacro Include="PythonDir">
+      <Value>$(PythonDir)</Value>
     </BuildMacro>
-    <BuildMacro Include="PythonPathX64">
-      <Value>$(PythonPathX64)</Value>
+    <BuildMacro Include="PythonDirX64">
+      <Value>$(PythonDirX64)</Value>
+    </BuildMacro>
+    <BuildMacro Include="IntrospectPythonParamX64">
+      <Value>$(IntrospectPythonParamX64)</Value>
+    </BuildMacro>
+    <BuildMacro Include="IntrospectPythonParam">
+      <Value>$(IntrospectPythonParam)</Value>
     </BuildMacro>
   </ItemGroup>
 </Project>
diff --git a/win32/vs10/pango.sln b/win32/vs10/pango.sln
index e80e3fc..8e144d2 100644
--- a/win32/vs10/pango.sln
+++ b/win32/vs10/pango.sln
@@ -10,6 +10,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pangocairo", "pangocairo.vc
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pango-install", "pango-install.vcxproj", 
"{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pango-introspect", "pango-introspect.vcxproj", 
"{2FE2F832-D857-450E-99AF-549AC88422F2}"
+EndProject
 Global
        GlobalSection(SolutionConfigurationPlatforms) = preSolution
                Debug_FC|Win32 = Debug_FC|Win32
@@ -98,6 +100,10 @@ Global
                {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release_FC|Win32.Build.0 = Release_FC|Win32
                {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release_FC|x64.ActiveCfg = Release_FC|x64
                {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release_FC|x64.Build.0 = Release_FC|x64
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Debug|Win32.ActiveCfg = Debug|Win32
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Release|Win32.ActiveCfg = Release|Win32
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Debug|x64.ActiveCfg = Debug|x64
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Release|x64.ActiveCfg = Release|x64
        EndGlobalSection
        GlobalSection(SolutionProperties) = preSolution
                HideSolutionNode = FALSE
diff --git a/win32/vs11/Makefile.am b/win32/vs11/Makefile.am
index e68e3ff..2fcbacc 100644
--- a/win32/vs11/Makefile.am
+++ b/win32/vs11/Makefile.am
@@ -16,6 +16,7 @@ EXTRA_DIST =  \
        pangocairo.vcxproj.filters              \
        pango-install.vcxproj                   \
        pango-install.vcxproj.filters           \
+       pango-introspect.vcxproj                \
        README.txt
 
 DISTCLEANFILES = $(EXTRA_DIST)
diff --git a/win32/vs12/Makefile.am b/win32/vs12/Makefile.am
index 8b0a752..532972b 100644
--- a/win32/vs12/Makefile.am
+++ b/win32/vs12/Makefile.am
@@ -16,6 +16,7 @@ EXTRA_DIST =  \
        pangocairo.vcxproj.filters              \
        pango-install.vcxproj                   \
        pango-install.vcxproj.filters           \
+       pango-introspect.vcxproj                \
        README.txt
 
 DISTCLEANFILES = $(EXTRA_DIST)
diff --git a/win32/vs14/Makefile.am b/win32/vs14/Makefile.am
index fd693f2..7596659 100644
--- a/win32/vs14/Makefile.am
+++ b/win32/vs14/Makefile.am
@@ -16,6 +16,7 @@ EXTRA_DIST =  \
        pangocairo.vcxproj.filters              \
        pango-install.vcxproj                   \
        pango-install.vcxproj.filters           \
+       pango-introspect.vcxproj                \
        README.txt
 
 DISTCLEANFILES = $(EXTRA_DIST)
diff --git a/win32/vs15/Makefile.am b/win32/vs15/Makefile.am
index 85afd02..3c7486a 100644
--- a/win32/vs15/Makefile.am
+++ b/win32/vs15/Makefile.am
@@ -16,6 +16,7 @@ EXTRA_DIST =  \
        pangocairo.vcxproj.filters              \
        pango-install.vcxproj                   \
        pango-install.vcxproj.filters           \
+       pango-introspect.vcxproj                \
        README.txt
 
 DISTCLEANFILES = $(EXTRA_DIST)
diff --git a/win32/vs9/Makefile.am b/win32/vs9/Makefile.am
index 2495d59..ecf9bb0 100644
--- a/win32/vs9/Makefile.am
+++ b/win32/vs9/Makefile.am
@@ -18,6 +18,7 @@ EXTRA_DIST =  \
        pangocairo.vcprojin             \
        pangowin32.vcprojin             \
        pango-install.vcproj            \
+       pango-introspect.vcproj         \
        stdint.h                        \
        README.txt                      \
        $(GENERATED_ITEMS)
diff --git a/win32/vs9/pango-build-defines.vsprops b/win32/vs9/pango-build-defines.vsprops
index 8a3cbd5..7997fa5 100644
--- a/win32/vs9/pango-build-defines.vsprops
+++ b/win32/vs9/pango-build-defines.vsprops
@@ -51,4 +51,12 @@
                Name="PangoCairoIncs"
                Value="$(GlibEtcInstallRoot)\include\cairo"
        />
+       <UserMacro
+               Name="PangoIntrospectNMakeCmd"
+               Value="cd ..&#x0D;&#x0A;set VCInstallDir=$(VCInstallDir)&#x0D;&#x0A;nmake -f 
pango-introspection-msvc.mak CFG=$(ConfigurationName) PREFIX=$(GlibEtcInstallRoot)"
+       />
+       <UserMacro
+               Name="PangoIntrospectBuiltFiles"
+               
Value="$(SolutionDir)\..\PangoCairo-1.0.gir;$(SolutionDir)\..\PangoCairo-1.0.typelib;$(SolutionDir)\..\Pango-1.0.gir;$(SolutionDir)\..\Pango-1.0.typelib"
+       />
 </VisualStudioPropertySheet>
diff --git a/win32/vs9/pango-install.vspropsin b/win32/vs9/pango-install.vspropsin
index 81bc7ec..e28a91a 100644
--- a/win32/vs9/pango-install.vspropsin
+++ b/win32/vs9/pango-install.vspropsin
@@ -31,10 +31,10 @@ if exist ..\pangoft2.pc copy ..\pangoft2.pc $(CopyDir)\lib\pkgconfig&#x0D;&#x0A;
        />
        <UserMacro
                Name="GenPangoPC"
-               Value="if exist $(PythonPath)\python.exe $(PythonPath)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)"
+               Value="if exist $(PythonDir)\python.exe $(PythonDir)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)"
        />
        <UserMacro
                Name="GenPangoPCX64"
-               Value="if exist $(PythonPathX64)\python.exe $(PythonPathX64)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)"
+               Value="if exist $(PythonDirX64)\python.exe $(PythonDirX64)\python.exe ..\pangopc.py 
--version=$(PangoMajorVersion).$(PangoMinorVersion).$(PangoMicroVersion) --prefix=$(CopyDir)"
        />
 </VisualStudioPropertySheet>
diff --git a/win32/vs9/pango-introspect.vcproj b/win32/vs9/pango-introspect.vcproj
new file mode 100644
index 0000000..f0b930c
--- /dev/null
+++ b/win32/vs9/pango-introspect.vcproj
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="9.00"
+       Name="pango-introspect"
+       ProjectGUID="{2FE2F832-D857-450E-99AF-549AC88422F2}"
+       Keyword="MakeFileProj"
+       TargetFrameworkVersion="196613"
+       >
+       <Platforms>
+               <Platform
+                       Name="Win32"
+               />
+               <Platform
+                       Name="x64"
+               />
+       </Platforms>
+       <ToolFiles>
+       </ToolFiles>
+       <Configurations>
+               <Configuration
+                       Name="Debug|Win32"
+                       ConfigurationType="0"
+                       InheritedPropertySheets=".\pango-build-defines.vsprops"
+                       >
+                       <Tool
+                               Name="VCNMakeTool"
+                               BuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) 
install-introspection"
+                               ReBuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean 
install-introspection"
+                               CleanCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean"
+                               Output="$(PangoIntrospectBuiltFiles)"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Debug|x64"
+                       ConfigurationType="0"
+                       InheritedPropertySheets=".\pango-build-defines.vsprops"
+                       >
+                       <Tool
+                               Name="VCNMakeTool"
+                               BuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
install-introspection"
+                               ReBuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
clean install-introspection"
+                               CleanCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
clean"
+                               Output="$(PangoIntrospectBuiltFiles)"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Release|Win32"
+                       ConfigurationType="0"
+                       InheritedPropertySheets=".\pango-build-defines.vsprops"
+                       CharacterSet="2"
+                       DeleteExtensionsOnClean=""
+                       >
+                       <Tool
+                               Name="VCNMakeTool"
+                               BuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) 
install-introspection"
+                               ReBuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean 
install-introspection"
+                               CleanCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParam) clean"
+                               Output="$(PangoIntrospectBuiltFiles)"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Release|x64"
+                       ConfigurationType="0"
+                       InheritedPropertySheets=".\pango-build-defines.vsprops"
+                       >
+                       <Tool
+                               Name="VCNMakeTool"
+                               BuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
install-introspection"
+                               ReBuildCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
clean install-introspection"
+                               CleanCommandLine="$(PangoIntrospectNMakeCmd) $(IntrospectPythonParamX64) 
clean"
+                               Output="$(PangoIntrospectBuiltFiles)"
+                       />
+               </Configuration>
+       </Configurations>
+</VisualStudioProject>
diff --git a/win32/vs9/pango-version-paths.vsprops.in b/win32/vs9/pango-version-paths.vsprops.in
index fc3b9e3..f255ef7 100644
--- a/win32/vs9/pango-version-paths.vsprops.in
+++ b/win32/vs9/pango-version-paths.vsprops.in
@@ -59,11 +59,19 @@
                Value="$(PangoSeparateVSDllSuffix)"
        />
        <UserMacro
-               Name="PythonPath"
+               Name="PythonDir"
                Value="c:\python27"
        />
        <UserMacro
-               Name="PythonPathX64"
-               Value="$(PythonPath).x64"
+               Name="PythonDirX64"
+               Value="$(PythonDir).x64"
+       />
+       <UserMacro
+               Name="IntrospectPythonParam"
+               Value="PYTHON=$(PythonDir)\python.exe"
+       />
+       <UserMacro
+               Name="IntrospectPythonParamX64"
+               Value="PYTHON=$(PythonDirX64)\python.exe"
        />
 </VisualStudioPropertySheet>
diff --git a/win32/vs9/pango.sln b/win32/vs9/pango.sln
index 4c945bc..9131fa0 100644
--- a/win32/vs9/pango.sln
+++ b/win32/vs9/pango.sln
@@ -27,6 +27,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pango-install", "pango-inst
                {68CC80B9-7225-4FB5-B9AB-9C1DF50B6C76} = {68CC80B9-7225-4FB5-B9AB-9C1DF50B6C76}
        EndProjectSection
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pango-introspect", "pango-introspect.vcproj", 
"{2FE2F832-D857-450E-99AF-549AC88422F2}"
+       ProjectSection(ProjectDependencies) = postProject
+               {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}
+       EndProjectSection
+EndProject
 Global
        GlobalSection(SolutionConfigurationPlatforms) = preSolution
                Debug|Win32 = Debug|Win32
@@ -115,6 +120,10 @@ Global
                {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release_FC|Win32.Build.0 = Release_FC|Win32
                {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release_FC|x64.ActiveCfg = Release_FC|x64
                {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release_FC|x64.Build.0 = Release_FC|x64
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Debug|Win32.ActiveCfg = Debug|Win32
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Release|Win32.ActiveCfg = Release|Win32
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Debug|x64.ActiveCfg = Debug|x64
+               {2FE2F832-D857-450E-99AF-549AC88422F2}.Release|x64.ActiveCfg = Release|x64
        EndGlobalSection
        GlobalSection(SolutionProperties) = preSolution
                HideSolutionNode = FALSE


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