OSDN Git Service

Remove out-dated compiling readme
authorTim Gerundt <tim@gerundt.de>
Fri, 12 Apr 2019 20:47:47 +0000 (22:47 +0200)
committerTim Gerundt <tim@gerundt.de>
Fri, 12 Apr 2019 20:47:47 +0000 (22:47 +0200)
Docs/Developers/Compiling.html [deleted file]
Docs/Developers/index.html
Docs/index.html
README.md
Tools/Scripts/UpgradeProjects.py [deleted file]

diff --git a/Docs/Developers/Compiling.html b/Docs/Developers/Compiling.html
deleted file mode 100644 (file)
index bb508f9..0000000
+++ /dev/null
@@ -1,279 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-  "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-  <title>Compiling.html</title>
-  <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
-  <style type="text/css">
-  <!--
-    body {
-      font-family: Verdana,Helvetica,Arial,sans-serif;
-      font-size: small;
-    }
-    code,pre {
-      font-family: "Courier New",Courier,monospace;
-      font-size: 1em;
-    }
-    h3 {
-      padding: 2px;
-      border-left: 4px solid #FFCC00;
-      border-bottom: 1px solid #FFCC00;
-    }
-    h4 {
-      padding: 2px;
-      border-left: 8px solid #FF9933;
-      border-bottom: 1px solid #FF9933;
-    }
-    h5 {
-      font-size: small;
-    }
-    pre {
-      margin-left: 25px;
-      margin-right: 25px;
-      padding: 5px;
-      background-color: #EEEEEE;
-      border-left: 10px solid #CCCCCC;
-    }
-    p.note {
-      padding: 5px;
-      background-color: #DDDDFF;
-      border: 1px solid #6666FF;
-    }
-    acronym {
-      cursor: help;
-      border-bottom: 1px dotted black;
-    }
-  -->
-  </style>
-</head>
-<body>
-<h2>Compiling WinMerge</h2>
-
-<p>Compiling sources is usually the first thing you want to do. Source packages
-for different versions are available from SourceForge.net downloads or from
-Subversion repository. See <a href="readme-Subversion.html">readme-Subversion.html
-</a> for more information about Subversion repository and using it.</p>
-
-<h3>Table of Contents</h3>
-<ol>
-  <li><a href="#Environment">Environment</a></li>
-  <li><a href="#ProjectFiles">Project Files</a></li>
-  <li><a href="#Compiling_expat">Compiling expat</a></li>
-  <li><a href="#Compiling_scew">Compiling SCEW</a></li>
-  <li><a href="#Compiling_pcre">Compiling PCRE</a></li>
-  <li><a href="#Compiling_core">Compiling WinMerge executables</a></li>
-  <li><a href="#ShellExt64">Shell Extension (64-bit)</a></li>
-  <li><a href="#VS2005">Visual Studio 2005 & 2008 Manifest File</a></li>
-  <li><a href="#64bit">Building 64-bit version</a></li>
-</ol>
-
-
-<h3><a name="Environment">Environment</a></h3>
-<h4>Supported Compilers</h4>
-
-<p>Compiling WinMerge requires commercial edition of the Visual Studio. Free
-Express Editions cannot be used since they don't include MFC. WinMerge uses
-MFC for the GUI.</p>
-
-<ul>
-  <li>Visual Studio 2003.Net + Service Pack 1</li>
-  <li>Visual Studio 2005 (occasional checks for compiling) (Service Pack 1
-    recommended)</li>
-  <li>Visual Studio 2008 (Service Pack 1 recommended)  [<i>used for releases</i>]</li>
-  <li>Visual Studio 2010</li>
-</ul>
-
-<h4>Libraries</h4>
-<p>WinMerge executable depends on Expat XML parser, SCEW and PCRE libraries.
-All are in the source tree (in <code>/Externals</code> -folder), and need to be
-compiled before compiling WinMerge executable.</p>
-
-<p class="note"><b>Visual Studio 2008 and later:</b> You'll need to convert
-library workspace and project files to new format before compiling.</p>
-
-<p> To convert workspace/project files, just open them into Visual Studio and
-let the Visual Studio to convert. Files are:
-<ul>
-  <li><code>WinMerge.sln</code></li>
-  <li><code>Externals\expat\expat.sln</code></li>
-  <li><code>Externals\scew\win32\scew.vcproj</code></li>
-  <li><code>Externals\pcre\pcre.sln</code></li>
-</ul>
-There is a Python script <code>/Tools/Scripts/UpgradeProjects.py</code> which
-updates most solution/project files.</p>
-
-<h4>Additional requirements (out of source tree)</h4>
-<ul>
-  <li>HTML Help Workshop (either stand-alone or from Platform SDK)<br>
-    Download it from :<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html/hwMicrosoftHTMLHelpDownloads.asp">
-    HTMLHelp download</a>.</li>
-  <li>Platform SDK or Windows SDK:
-    <ul>
-      <li>Platform SDK Windows 2003 SP1 -
-       <a href="http://www.microsoft.com/downloads/details.aspx?familyid=0BAF2B35-C656-4969-ACE8-E4C0C0716ADB">
-       Download and install</a></li>
-      <li>Windows SDK -
-       <a href="http://msdn.microsoft.com/en-us/windowsserver/bb980924.aspx">
-       Download and install</a></li>
-    </ul>
-    Visual Studio 2003.Net and later come with Platform SDK but you may still want more recent version...</li>
-  <li>Installer needs own tools, documented in <a href="readme-InnoSetup.html">readme-InnoSetup.html</a></li>
-  <li>Manual needs Docbook tools, documented in <a href="readme-manual.html">readme-manual.html</a></li>
-</ul>
-
-<h5>Platform SDK components</h5>
-<p>Needed Platform SDK components:</p>
-<ul>
-  <li>Microsoft Windows Core SDK - obviously..</li>
-  <li>Microsoft Data Access Services (MDAC) SDK - for some ODBC etc headers needed by other PSDK headers..</li>
-  <li>Microsoft Web Workshop (IE) SDK - for IE/Shell headers</li>
-</ul>
-<p class="note">If you installed PSDK separately, don't forget to add the PSDK paths to Visual
-Studio's <em>Include</em> and <em>Library</em> directories. The easiest way is to use the
-"<em>Visual Studio Registration\Register PSDK directories with Visual Studio</em>" item from
-the "<em>Platform SDK</em>" start menu folder.</p>
-
-<h3><a name="ProjectFiles">Project files</a></h3>
-<p>Project file for WinMerge executable (in <code>/Src</code>) and other projects like
-ShellExtension (in <code>/ShellExtension</code>) have their own project files. There is no one
-single project/workspace file to compile all projects.<p>
-
-<p>The Visual Studio project and solution files for VS2005 come with the
-WinMerge sources. Newer versions of Visual Studio can open that file too, they
-just ask if one wants to convert to the new version. The reason we don't ship
-project files for all Visual Studio versions is we have no resources
-to keep all versions up to date. People can't test all versions themselves, and easily forget
-to update at least one file. So we easily end up in a situation where there is no properly
-working project file at all...</p>
-
-<p>After opening the project file you need to add the HTML Help Workshop path as additional include-
-and library-path.</p>
-
-<p class="note"><b>NOTE:</b> There might be problems compiling/debugging with Visual Studio 2003 when using
-HTML Help WorkShop from the Platform SDK in Visual Studio directory. Download and
-install HTML Workshop as stand-alone and include headers and libraries from standalone
-directory. The probable cause is that including files from Platform SDK directories breaks
-things.</p>
-
-<h3><a name="Compiling_expat">Compiling expat</a></h3>
-<p>expat is in <code>/Externals/expat</code> folder in source tree. To compile expat:</p>
-<ul>
-  <li>Open Visual Studio solution <code>/Externals/expat/expat.sln</code>. If you are
-    using Visual Studio 2008 or later you need to convert the file to the new format when
-    Visual Studio opens the file.</li>
-  <li>Select from Visual Studio menu Build / Batch Build</li>
-  <li>Select either debug or release targets.</li>
-  <li>Select Rebuild All</li>
- </ul>
-
-<p>After build finishes, selected (debug or release) lib and dll files are in
-<code>/Build/expat</code>. WinMerge executable's project file picks them from there.</p>
-
-<h3><a name="Compiling_scew">Compiling scew</a></h3>
-<p>scew is in <code>/Externals/scew</code> folder in source tree. To compile scew:</p>
-<ul>
-  <li>Open Visual Studio project file <code>/Externals/scew/win32/scew.vcproj</code> If you are
-    using Visual Studio 2008 or later you need to convert the file to the new format when
-    Visual Studio opens the file.</li>
-  <li>Select from Visual Studio menu Build / Batch Build</li>
-  <li>Make sure all targets are selected</li>
-  <li>Select Rebuild All</li>
-</ul>
-
-<h3><a name="Compiling_pcre">Compiling PCRE</a></h3>
-<p>PCRE is in <code>/Externals/pcre</code> folder in source tree. PCRE uses
-CMake (<a href="http://www.cmake.org/">http://www.cmake.org/</a>) to create
-project- and solution-files. There are ready-made files in our source tree.</p>
-
-<p>To compile PCRE:</p>
-<ul>
-  <li>Open Visual Studio solution file <code>/Externals/pcre/Win32/pcre.sln</code> If you are
-    using Visual Studio 2008 or later you need to convert the file to the new format when
-    Visual Studio opens the file.</li>
-  <li>Select the <code>MinSizeRel</code>-target.</li>
-  <li>Build the <code>pcre</code>-project
-</ul>
-
-<p>After build finishes, lib and dll files are in <code>/Build/pcre</code>. WinMerge
-executable's project file picks them from there.</p>
-
-<p>If you want to re-build PCRE from the scratch, including project files, see
-file <code>Externals/pcre/NON-UNIX-USE</code>. There are instructions for
-running CMake and using it to configure PCRE.</p>
-
-<p>When configuring PCRE, remember to set these two options:
-<ul>
-  <li>Build shared libraries (to create DLL files, not static libraries)</li>
-  <li>Enable using <code>ANYCRLF</code> or <code>ANY</code> as linefeed style.
-    Current build uses <code>ANY</code>.</li>
-  <li>Enable using UTF-8</li>
-</ul></p>
-
-<p>After CMake finishes, there are project files in the folder you selected as
-a build folder. However all paths in the files are absolute, not relative. If
-you want to make these files useful for other users you'll need to convert all
-paths to relative paths. In addition you need to remove custom build rules for
-building <code>CMakeLists.txt</code>. That rule tries to run CMake to re-generate
-some files.
-
-<h3><a name="Compiling_core">Compiling WinMerge executable targets</a></h3>
-<p>There are several targets available for compiling different projects. Targets used
-for compiling releases are:<br>
-<ul>
-  <li><code>WinMergeU.exe</code> : UnicodeRelease</li>
-  <li><code>ShellExtensionU.dll</code> : Unicode Release MinDependency</li>
-  <li>Plugin dlls : Unicode Release MinDependency</li>
-</ul>
-
-<h3><a name="ShellExt64">Shell Extension (64-bit)</a></h3>
-<p>Visual Studio 2005 and later come with 64-bit compiler. To compile 64-bit
-ShellExtension, open the <code>ShellExtension.vcproj</code> -project file
-and select X64 Debug or X64 Release -target. Then compile as usual.</p>
-
-<p>If you are compiling in 32-bit Windows you get error about registering
-but that is expected to happen.</p>
-
-<p>64-bit ShellExtension is registered to 64-bit Windows just like counterparts in 32-bit world:<br>
-<code>regsvr ShellExtensionX64.dll</code></p>
-
-<h3><a name="VS2005">Visual Studio 2005 & 2008 Manifest File</a></h3>
-<p>When the VC6 project file (.dsp) is converted to a Visual Studio 2005 or
-2008 project, the visual styles do not get enabled. The problem is Visual Studio
-2005 and 2008 automatically generates and embeds a manifest file for the
-executable, but that generated manifest does not include all needed properties
-to enable visual styles. The solution is to add WinMerge's manifest file as
-additional manifest.</p>
-
-<p>From project properties, set<br>
-  <code>Manifest Tool / Input and Output / Additional Manifest Files</code> -property value to:<br>
-  <code>$(InputDir)\res\$(TargetFileName).manifest</code>
-</p>
-
-<p>There is a Python script <code>Tools/Scripts/fix_manifest.py</code> which
-does the conversion. Note that the script re-formats the project file XML
-structure when saving so do not generate patches without first opening and
-saving the project file with Visual Studio.</p>
-
-<p>See also <a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=143306&SiteID=1">
-Manifests in VS2005-- What are they?</a> -thread in Microsoft forum.
-</p>
-
-<h3><a name="64bit">Building 64-bit version</a></h3>
-<p><b>64-bit versions are not supported.</b> We provide project
-files for building 64-bit version of WinMerge so people can start testing and
-experimenting it. But it is still a long way to make actual releases of 64-bit
-versions.
-</p>
-
-<p>Project files for 64-bit versions (at the moment) work only with VS2008.
-There might be later project files compatible with VS2005, but don't count on
-it. The project files are named as <code><i>[projectname]</i>X64.vcproj</code>.
-</p>
-
-<h4>Bugs and patches</h4>
-<p>Submit bugs about 64-bit builds to our bug tracker as usual. But also expect
-they are given low priority. Likewise patches can be submitted to our patch
-tracker.</p>
-
-</body>
-</html>
\ No newline at end of file
index aa6877f..3371381 100644 (file)
@@ -59,8 +59,6 @@ WinMerge development.
 
 <p><b>Important files:</b>
 <ul>
 
 <p><b>Important files:</b>
 <ul>
-  <li><a href="Compiling.html">WinMerge compiling</a> contains instructions
-    for setting up development environment and compiling WinMerge.</li>
   <li><a href="readme-developers.html">ReadMe for developers</a> is old "main"
     document. Contains still lots and lots of useful information.</li>
   <li><a href="Translations.html">Translation instructions</a></li>
   <li><a href="readme-developers.html">ReadMe for developers</a> is old "main"
     document. Contains still lots and lots of useful information.</li>
   <li><a href="Translations.html">Translation instructions</a></li>
index 2aeaea0..596494a 100644 (file)
@@ -52,7 +52,7 @@
 <p>This folder contains WinMerge's user- and developer-documentation.</p>
 
 <h3>User Documentation</h3>
 <p>This folder contains WinMerge's user- and developer-documentation.</p>
 
 <h3>User Documentation</h3>
-<p>User documentation is in <code><a href="Users/index.html">Users</a>-subfolder</code>.
+<p>User documentation is in <code><a href="Users/index.html">Users</a></code>-subfolder.
 </p>
 
 <p><b>Important files in user documentation:</b>
 </p>
 
 <p><b>Important files in user documentation:</b>
 </ul></p>
 
 <h3>Developer Documentation</h3>
 </ul></p>
 
 <h3>Developer Documentation</h3>
-<p>Developer documentation is in <code><a href="Developers/index.html">Developers</a>-subfolder</code>.
+<p>Developer documentation is in <code><a href="Developers/index.html">Developers</a></code>-subfolder.
 </p>
 
 <p><b>Important files in developer documentation:</b>
 <ul>
 </p>
 
 <p><b>Important files in developer documentation:</b>
 <ul>
-  <li><a href="Developers/Compiling.html">WinMerge compiling</a> contains instructions
-    for setting up development environment and compiling WinMerge.</li>
    <li><a href="Developers/readme-developers.html">ReadMe for developers</a>
     contains lots of development-related information.</li>
    <li><a href="Developers/readme-developers.html">ReadMe for developers</a>
     contains lots of development-related information.</li>
-  <li><a href="Developers/readme-Subversion.html">Subversion info</a></li>
   <li><a href="Developers/Translations.html">Translation instructions</a></li>
   <li><a href="Developers/readme-manual.html">User manual information</a></li>
 </ul></p>
   <li><a href="Developers/Translations.html">Translation instructions</a></li>
   <li><a href="Developers/readme-manual.html">User manual information</a></li>
 </ul></p>
index a36f8cb..768664b 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,5 +1,28 @@
 # WinMerge Source Code
 
 # WinMerge Source Code
 
+[WinMerge](http://winmerge.org/) is an Open Source differencing and merging tool
+for Windows. WinMerge can compare both folders and files, presenting differences
+in a visual text format that is easy to understand and handle.
+
+## Requirements
+
+### Visual Studio 2017
+
+ * *Community*, *Professional* or *Enterprise* Edition
+ * VC++ 2017 v141 toolset
+ * Windows XP support for C++
+ * MFC and ATL support
+ * Windows 10 SDK
+
+### Visual Studio 2019
+
+ * *Community*, *Professional* or *Enterprise* Edition
+ * MSVC v142 Buildtools
+ * C++ MFC for v142 Buildtools
+ * Windows 10 SDK
+
+## Folder Structure
+
 Source code for the WinMerge program, its plugins, filters, setup program,
 and various utilities are all kept in various subfolders listed below.
 
 Source code for the WinMerge program, its plugins, filters, setup program,
 and various utilities are all kept in various subfolders listed below.
 
diff --git a/Tools/Scripts/UpgradeProjects.py b/Tools/Scripts/UpgradeProjects.py
deleted file mode 100644 (file)
index 10ac9b3..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-#############################################################################
-##    License (GPLv2+):
-##    This program is free software; you can redistribute it and/or modify
-##    it under the terms of the GNU General Public License as published by
-##    the Free Software Foundation; either version 2 of the License, or
-##    (at your option) any later version.
-##
-##    This program is distributed in the hope that it will be useful, but
-##    WITHOUT ANY WARRANTY; without even the implied warranty of
-##    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-##    General Public License for more details.
-##
-##    You should have received a copy of the GNU General Public License
-##    along with this program; if not, write to the Free Software
-##    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#############################################################################
-
-# Copyright (c) 2008-2010 Kimmo Varis <kimmov@winmerge.org>
-
-# $Id$
-
-# A script for upgrading VS solution- and project-files from VS2003 to newer
-# VS versions. This script calls VS binary to upgrade every file listed. If the
-# file is solution file, then all projects in the solution are also upgraded.
-#
-# For more info about using VS command line, see:
-# http://www.devsource.com/c/a/Using-VS/Working-at-the-Visual-Studio-Command-Line/1/
-
-import getopt
-import os
-import subprocess
-import sys
-
-import cleanup_backups
-import fix_manifest
-import ToolSettings
-
-# The version of the script
-script_version = 0.4
-
-# global settings class instance
-tools = ToolSettings.ToolSettings()
-
-solutions = [r'Externals\expat\expat.sln',
-    r'WinMerge.sln']
-
-projects = [r'Externals\scew\win32\scew.vcproj',
-    r'Externals\pcre\Win32\pcre.vcproj',
-    r'ShellExtension\ShellExtension.vcproj']
-
-# These projects need the manifest file fix
-manifest_projects = [r'Src\Merge.vcproj']
-
-def upgrade_projects(root_path):
-    vs_binary = os.path.join(tools.vs_path, 'Common7/IDE')
-    vs_binary = os.path.join(vs_binary, 'devenv.com')
-    
-    for solution in solutions:
-        sol_file = os.path.join(root_path, solution)
-        print 'Upgrading VS solution file: ' + sol_file
-        subprocess.call([vs_binary, sol_file, '/Upgrade'], shell = True)
-        cleanup(sol_file)
-
-    for project in projects:
-        proj_file = os.path.join(root_path, project)
-        print 'Upgrading project file: ' + proj_file
-        subprocess.call([vs_binary, proj_file, '/Upgrade'], shell = True)
-        cleanup(proj_file)
-
-def fix_proj_manifests(root_path):
-    for project in manifest_projects:
-        proj_file = os.path.join(root_path, project)
-        fix_manifest.process_project_file(proj_file)
-
-def cleanup(updatefile):
-    folder = os.path.dirname(updatefile)
-    cleanup_backups.cleanupfolder(folder)
-
-def usage():
-    '''Print script usage information.'''
-
-    print 'UpgradeProjects.py - version ' + str(script_version)
-    print 'Script to upgrade VS solution/project files.'
-    print 'Usage: UpgradeProjects.py [-h] [path]'
-    print 'Where:'
-    print '  -h, --help Print this help.'
-    print '  path Root path for WinMerge.'
-    print 'For example: UpgradeProjects.py ../..'
-    print '  which upgrades current project when run from Scripts folder.'
-
-def main(argv):
-    root_path = ''
-    if len(argv) > 0:
-        opts, args = getopt.getopt(argv, 'h', ['help'])
-
-        for opt, arg in opts:
-            if opt in ('-h', '--help'):
-                usage()
-                sys.exit()
-         
-        if len(args) == 1:
-            rel_path = args[0]
-            root_path = os.path.abspath(rel_path)
-
-    # If not root path given, use current folder as root path
-    if root_path == '':
-        root_path = os.getcwd()
-
-    if not os.path.exists(root_path):
-        print 'ERROR: Cannot find path: ' + root_path
-        sys.exit()
-
-    tools.read_ini('Tools.ini')
-
-    print 'Upgrading VS solution- and project-file in folder: ' + root_path
-    upgrade_projects(root_path)
-    fix_proj_manifests(root_path)
-
-# MAIN #
-if __name__ == "__main__":
-    main(sys.argv[1:])
-