pugixml/msvc
2015-11-13 17:18:44 +03:00
..
props Msvc14: IntDir and OutDir changed a little 2015-11-13 14:20:40 +03:00
.gitignore Added .gitignore to msvc directory 2015-11-12 14:53:06 +03:00
pugixml_vs2010_static.vcxproj Msvc10: cosmetic changes. Remove unnecessary empty tags 2015-11-13 11:24:55 +03:00
pugixml_vs2010.sln Updated Msvc10 solution 2015-11-13 15:20:22 +03:00
pugixml_vs2010.vcxproj Msvc10: cosmetic changes. Remove unnecessary empty tags 2015-11-13 11:24:55 +03:00
pugixml_vs2012_static.vcxproj Added msvc11 solution and projects: converted from Msvc10 2015-11-13 15:49:37 +03:00
pugixml_vs2012.sln Added msvc11 solution and projects: converted from Msvc10 2015-11-13 15:49:37 +03:00
pugixml_vs2012.vcxproj Added msvc11 solution and projects: converted from Msvc10 2015-11-13 15:49:37 +03:00
pugixml_vs2013_static.vcxproj Added msvc12 solution and projects: converted from Msvc10 2015-11-13 15:49:59 +03:00
pugixml_vs2013.sln Added msvc12 solution and projects: converted from Msvc10 2015-11-13 15:49:59 +03:00
pugixml_vs2013.vcxproj Added msvc12 solution and projects: converted from Msvc10 2015-11-13 15:49:59 +03:00
pugixml_vs2015_static.vcxproj msvc14: import pugixml.s.props to static project 2015-11-13 14:12:08 +03:00
pugixml_vs2015.sln added msvc2015_static.vcxproj (just by copying from msvc2015.vcxproj) 2015-11-13 14:05:58 +03:00
pugixml_vs2015.vcxproj msvc14: Cosmetic changes, removed empty tags 2015-11-13 14:01:41 +03:00
pugixml.props pugixml.props: support custom user property sheet 2015-11-13 14:02:18 +03:00
pugixml.s.props Support props for static /dynamic RTL 2015-11-12 18:54:11 +03:00
readme.txt Added readme.txt 2015-11-13 17:18:44 +03:00

A new approach to MSVC build system, using PropertySheets.
This approach is based on MsBuild ver 4, so it concerns only latest MSVS versions (starting from Msvs2010).
New projects, solutions and props files are located in msvc directory.  

All properties and item metadata, such as compiler and linker settings are declared in PropertySheets (*.props files).

There are dozen props *.files in msvc/props directory. Each *.props file contain settings for some build configuration. The most part of *.props files are suitable for all VisualStudio versions.

Each project file should import pugixml.props file (located in msvc directory). Projects for static RTL should also import pugixml.s.props (before pugixml.props).

Advantages of this approach:
 * Each parameter stores in only one plase. So it is easier to explore the structure of projects. It's easier to change some setting.
 * Project files became smaller and easier to read.
 * It's easier to create new vcxproj files based on existing project. For example, projects for Msvc11 and Msvc12 was created using Msvc10 project.

Visual studio has a nice instrument for exploring and editing property sheets: Property Manager. If it not visible, turn it on by using menu View/OtherWindows/PropertyManager.

And yet another new feachure. User can customize building process by inserting his own property sheet into project structure (without modifying any file from pugixml directory).

For example:
  MsBuild.exe /p:PUGI_Props_External=d:\MyProps.props pugixml_vs2010.vcxproj

Best regards,
Taymanov Sergey,
Moscow.