[pangomm] Visual Studio builds: Require Visual Studio 2017



commit ffa16cf8de852175fc921e281958b8871600684c
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Wed Mar 15 15:39:43 2017 +0800

    Visual Studio builds: Require Visual Studio 2017
    
    pangomm now requires C++-14 features that are only adequately supported
    with Visual Studio 2017 (and later), so update the projects and related
    items accordingly.  This also updates the DLL version naming to be in
    line with what is in the autotools builds.
    
    Let people know that this is the case in README.win32.

 {MSVC_Net2013 => MSVC_Net2017}/filelist.am         |    2 +-
 {MSVC_Net2013 => MSVC_Net2017}/gendef.vcxproj      |    8 +++---
 .../gendef.vcxproj.filters                         |    0
 {MSVC_Net2013 => MSVC_Net2017}/gendef/gendef.cc    |    0
 {MSVC_Net2013 => MSVC_Net2017}/install.vcxproj     |    8 +++---
 .../pangomm-build-defines.props                    |    6 ++--
 .../pangomm-install.props                          |    0
 .../pangomm-version-paths.props                    |   26 +++++++++++++++++--
 {MSVC_Net2013 => MSVC_Net2017}/pangomm.sln         |    2 +-
 {MSVC_Net2013 => MSVC_Net2017}/pangomm.vcxproj     |    8 +++---
 .../pangomm.vcxproj.filters                        |    0
 .../pangomm/pangomm.rc.in                          |    0
 Makefile.am                                        |    6 ++--
 README.win32                                       |    8 +++---
 configure.ac                                       |    6 ++--
 15 files changed, 50 insertions(+), 30 deletions(-)
---
diff --git a/MSVC_Net2013/filelist.am b/MSVC_Net2017/filelist.am
similarity index 93%
rename from MSVC_Net2013/filelist.am
rename to MSVC_Net2017/filelist.am
index 35233bc..d005a7d 100644
--- a/MSVC_Net2013/filelist.am
+++ b/MSVC_Net2017/filelist.am
@@ -1,6 +1,6 @@
 ## This file is part of pangomm.
 
-msvc_net2013_data =                            \
+msvc_net2017_data =                            \
        pangomm.sln                             \
        pangomm-build-defines.props             \
        pangomm-version-paths.props             \
diff --git a/MSVC_Net2013/gendef.vcxproj b/MSVC_Net2017/gendef.vcxproj
similarity index 97%
rename from MSVC_Net2013/gendef.vcxproj
rename to MSVC_Net2017/gendef.vcxproj
index ceca956..0d6bbb7 100644
--- a/MSVC_Net2013/gendef.vcxproj
+++ b/MSVC_Net2017/gendef.vcxproj
@@ -26,22 +26,22 @@
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
diff --git a/MSVC_Net2013/gendef.vcxproj.filters b/MSVC_Net2017/gendef.vcxproj.filters
similarity index 100%
rename from MSVC_Net2013/gendef.vcxproj.filters
rename to MSVC_Net2017/gendef.vcxproj.filters
diff --git a/MSVC_Net2013/gendef/gendef.cc b/MSVC_Net2017/gendef/gendef.cc
similarity index 100%
rename from MSVC_Net2013/gendef/gendef.cc
rename to MSVC_Net2017/gendef/gendef.cc
diff --git a/MSVC_Net2013/install.vcxproj b/MSVC_Net2017/install.vcxproj
similarity index 97%
rename from MSVC_Net2013/install.vcxproj
rename to MSVC_Net2017/install.vcxproj
index fecde32..ebb12ef 100644
--- a/MSVC_Net2013/install.vcxproj
+++ b/MSVC_Net2017/install.vcxproj
@@ -28,23 +28,23 @@
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
diff --git a/MSVC_Net2013/pangomm-build-defines.props b/MSVC_Net2017/pangomm-build-defines.props
similarity index 59%
rename from MSVC_Net2013/pangomm-build-defines.props
rename to MSVC_Net2017/pangomm-build-defines.props
index 3c3108d..50e4500 100644
--- a/MSVC_Net2013/pangomm-build-defines.props
+++ b/MSVC_Net2017/pangomm-build-defines.props
@@ -5,8 +5,8 @@
   </ImportGroup>
   <PropertyGroup Label="UserMacros">
     <PangoMMBuildDefs>PANGOMM_BUILD</PangoMMBuildDefs>
-    
<CPPDepLibsRelease>glibmm-vc$(VSVer)0-2_4.lib;cairomm-vc$(VSVer)0-1_0.lib;sigc-vc$(VSVer)0-2_0.lib</CPPDepLibsRelease>
-    
<CPPDepLibsDebug>glibmm-vc$(VSVer)0-d-2_4.lib;cairomm-vc$(VSVer)0-d-1_0.lib;sigc-vc$(VSVer)0-d-2_0.lib</CPPDepLibsDebug>
+    
<CPPDepLibsRelease>glibmm-vc$(VSVer)0-$(GLibMMMajorVersion)_$(GLibMMMinorVersion).lib;cairomm-vc$(VSVer)0-$(CairoMMMajorVersion)_$(CairoMMMinorVersion).lib;sigc-vc$(VSVer)0-$(SigCMajorVersion)_0.lib</CPPDepLibsRelease>
+    
<CPPDepLibsDebug>glibmm-vc$(VSVer)0-d-$(GLibMMMajorVersion)_$(GLibMMMinorVersion).lib;cairomm-vc$(VSVer)0-d-$(CairoMMMajorVersion)_$(CairoMMMinorVersion).lib;sigc-vc$(VSVer)0-d-$(SigCMajorVersion)_0.lib</CPPDepLibsDebug>
   </PropertyGroup>
   <PropertyGroup>
     <_PropertySheetDisplayName>panogmmbuilddefinesprops</_PropertySheetDisplayName>
@@ -15,7 +15,7 @@
   </PropertyGroup>
   <ItemDefinitionGroup>
     <ClCompile>
-      
<AdditionalIncludeDirectories>.\pangomm;..\pango;$(GlibEtcInstallRoot)\include\glibmm-2.4;$(GlibEtcInstallRoot)\lib\glibmm-2.4\include;$(GlibEtcInstallRoot)\include\cairomm-1.0;$(GlibEtcInstallRoot)\lib\cairomm-1.0\include;$(GlibEtcInstallRoot)\include\sigc++-2.0;$(GlibEtcInstallRoot)\lib\sigc++-2.0\include;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      
<AdditionalIncludeDirectories>.\pangomm;..\pango;$(GlibEtcInstallRoot)\include\glibmm-$(GLibMMMajorVersion).$(GLibMMMinorVersion);$(GlibEtcInstallRoot)\lib\glibmm-$(GLibMMMajorVersion).$(GLibMMMinorVersion)\include;$(GlibEtcInstallRoot)\include\cairomm-$(CairoMMMajorVersion).$(CairoMMMinorVersion);$(GlibEtcInstallRoot)\lib\cairomm-$(CairoMMMajorVersion).$(CairoMMMinorVersion)\include;$(GlibEtcInstallRoot)\include\sigc++-$(SigCMajorVersion).0;$(GlibEtcInstallRoot)\lib\sigc++-$(SigCMajorVersion).0\include;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <ForcedIncludeFiles>msvc_recommended_pragmas.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <AdditionalOptions>/d2Zi+ %(AdditionalOptions)</AdditionalOptions>
diff --git a/MSVC_Net2013/pangomm-install.props b/MSVC_Net2017/pangomm-install.props
similarity index 100%
rename from MSVC_Net2013/pangomm-install.props
rename to MSVC_Net2017/pangomm-install.props
diff --git a/MSVC_Net2013/pangomm-version-paths.props b/MSVC_Net2017/pangomm-version-paths.props
similarity index 63%
rename from MSVC_Net2013/pangomm-version-paths.props
rename to MSVC_Net2017/pangomm-version-paths.props
index b287629..51a75c8 100644
--- a/MSVC_Net2013/pangomm-version-paths.props
+++ b/MSVC_Net2017/pangomm-version-paths.props
@@ -1,14 +1,19 @@
 <?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>12</VSVer>
+    <VSVer>15</VSVer>
     <GlibEtcInstallRoot>$(SolutionDir)\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
     <CopyDir>$(GlibEtcInstallRoot)</CopyDir>
     <DefDir>$(SolutionDir)$(Configuration)\$(Platform)\obj\$(ProjectName)\</DefDir>
-    <ApiMajorVersion>1</ApiMajorVersion>
-    <ApiMinorVersion>4</ApiMinorVersion>
+    <ApiMajorVersion>2</ApiMajorVersion>
+    <ApiMinorVersion>42</ApiMinorVersion>
     <ReleaseDllSuffix>-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion)</ReleaseDllSuffix>
     <DebugDllSuffix>-vc$(VSVer)0-d-$(ApiMajorVersion)_$(ApiMinorVersion)</DebugDllSuffix>
+    <SigCMajorVersion>3</SigCMajorVersion>
+    <GLibMMMajorVersion>2</GLibMMMajorVersion>
+    <GLibMMMinorVersion>52</GLibMMMinorVersion>
+    <CairoMMMajorVersion>1</CairoMMMajorVersion>
+    <CairoMMMinorVersion>16</CairoMMMinorVersion>
   </PropertyGroup>
   <PropertyGroup>
     <_PropertySheetDisplayName>pangommversionpathsprops</_PropertySheetDisplayName>
@@ -38,5 +43,20 @@
     <BuildMacro Include="DebugDllSuffix">
       <Value>$(DebugDllSuffix)</Value>
     </BuildMacro>
+    <BuildMacro Include="SigCMajorVersion">
+      <Value>$(SigCMajorVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GLibMMMajorVersion">
+      <Value>$(GLibMMMajorVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GLibMMMinorVersion">
+      <Value>$(GLibMMMinorVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="CairoMMMajorVersion">
+      <Value>$(CairoMMMajorVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="CairoMMMinorVersion">
+      <Value>$(CairoMMMinorVersion)</Value>
+    </BuildMacro>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/MSVC_Net2013/pangomm.sln b/MSVC_Net2017/pangomm.sln
similarity index 97%
rename from MSVC_Net2013/pangomm.sln
rename to MSVC_Net2017/pangomm.sln
index c8fad19..8f8af5a 100644
--- a/MSVC_Net2013/pangomm.sln
+++ b/MSVC_Net2017/pangomm.sln
@@ -1,5 +1,5 @@
 Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
+# Visual Studio 15
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gendef", "gendef.vcxproj", 
"{07324745-C9BE-4D65-B08A-9C88188C0C28}"
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pangomm", "pangomm.vcxproj", 
"{A93D607A-5C37-4AEC-BA08-6A655F6DC834}"
diff --git a/MSVC_Net2013/pangomm.vcxproj b/MSVC_Net2017/pangomm.vcxproj
similarity index 98%
rename from MSVC_Net2013/pangomm.vcxproj
rename to MSVC_Net2017/pangomm.vcxproj
index aa03fad..4ed21c6 100644
--- a/MSVC_Net2013/pangomm.vcxproj
+++ b/MSVC_Net2017/pangomm.vcxproj
@@ -28,22 +28,22 @@
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
+    <PlatformToolset>v141</PlatformToolset>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
diff --git a/MSVC_Net2013/pangomm.vcxproj.filters b/MSVC_Net2017/pangomm.vcxproj.filters
similarity index 100%
rename from MSVC_Net2013/pangomm.vcxproj.filters
rename to MSVC_Net2017/pangomm.vcxproj.filters
diff --git a/MSVC_Net2013/pangomm/pangomm.rc.in b/MSVC_Net2017/pangomm/pangomm.rc.in
similarity index 100%
rename from MSVC_Net2013/pangomm/pangomm.rc.in
rename to MSVC_Net2017/pangomm/pangomm.rc.in
diff --git a/Makefile.am b/Makefile.am
index 05ac135..44c8853 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -38,15 +38,15 @@ nodist_pangomm_libinclude_HEADERS = pango/pangommconfig.h
 pkgconfigdir = $(libdir)/pkgconfig
 nodist_pkgconfig_DATA = pango/$(PANGOMM_MODULE_NAME).pc
 
-include $(srcdir)/MSVC_Net2013/filelist.am
+include $(srcdir)/MSVC_Net2017/filelist.am
 
 text_files = COPYING.tools README.SUN README.win32
-msvc_files = $(addprefix MSVC_Net2013/,$(msvc_net2013_data))
+msvc_files = $(addprefix MSVC_Net2017/,$(msvc_net2017_data))
 
 dist_noinst_DATA = $(text_files) $(msvc_files)
 dist_noinst_SCRIPTS = autogen.sh
 
-DISTCLEANFILES = MSVC_Net2013/pangomm/pangommconfig.h
+DISTCLEANFILES = MSVC_Net2017/pangomm/pangommconfig.h
 
 # Optional: auto-generate the ChangeLog file from the git log on make dist
 include $(top_srcdir)/build/dist-changelog.am
diff --git a/README.win32 b/README.win32
index 9470ab5..3fe1c79 100644
--- a/README.win32
+++ b/README.win32
@@ -2,7 +2,7 @@ Building gtkmm on Win32
 ===========================
 
 Currently, both the mingw (native win32) gcc compiler and MS Visual
-Studio 2013 are supported. gtkmm can be built with mingw32-gcc using
+Studio 2017 are supported. gtkmm can be built with mingw32-gcc using
 the gnu autotools (automake, autoconf, libtool). As explicitly
 stated in the gtk+ for win32 distribution (http://www.gimp.org/win32/),
 the gcc compiler provided by the cygwin distribution should not be
@@ -44,13 +44,13 @@ make
 make check
 make install
 
-2. MS Visual Studio 2013
+2. MS Visual Studio 2017
 
-Open the pangomm.sln solution file in the MSVC_Net2013 directory. In
+Open the pangomm.sln solution file in the MSVC_Net2017 directory. In
 the Tools/Options panel, add the appropriate GTK+ and glibmm include
 and lib directories to the Projects and Solutions/VC++ directories,
 if they are not in the locations specified by the property sheets,
-i.e. $(srcroot)\..\vs12\$(Platform). Build the solution.  The option
+i.e. $(srcroot)\..\vs15\$(Platform). Build the solution.  The option
 /vd2 should not be used in these builds, unlike previous builds, as
 that would cause broken binaries to be built, causing crashes.
 
diff --git a/configure.ac b/configure.ac
index 1c57ece..f6a9009 100644
--- a/configure.ac
+++ b/configure.ac
@@ -76,9 +76,9 @@ AC_CONFIG_FILES([Makefile
                  pango/pangomm/Makefile
                  docs/Makefile
                  docs/reference/Doxyfile
-                 MSVC_Net2013/pangomm/pangomm.rc])
+                 MSVC_Net2017/pangomm/pangomm.rc])
 
 # Copy the generated configuration headers into the MSVC project directories.
-AC_CONFIG_COMMANDS([MSVC_Net2013/pangomm/pangommconfig.h],
-                   [cp -f pango/pangommconfig.h MSVC_Net2013/pangomm/pangommconfig.h])
+AC_CONFIG_COMMANDS([MSVC_Net2017/pangomm/pangommconfig.h],
+                   [cp -f pango/pangommconfig.h MSVC_Net2017/pangomm/pangommconfig.h])
 AC_OUTPUT


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