summaryrefslogtreecommitdiffstats
path: root/windows/INSTALL-MSVC.txt
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--windows/INSTALL-MSVC.txt44
1 files changed, 18 insertions, 26 deletions
diff --git a/windows/INSTALL-MSVC.txt b/windows/INSTALL-MSVC.txt
index 2fdd1e7..ba483fb 100644
--- a/windows/INSTALL-MSVC.txt
+++ b/windows/INSTALL-MSVC.txt
@@ -5,41 +5,33 @@ Building XZ Utils with Microsoft Visual Studio
Introduction
------------
+ liblzma got MSVC support in XZ Utils 5.2.0, and the xz, xzdec,
+ lzmadec, and lzmainfo command line tools in XZ Utils 5.6.0.
+
+ NOTE: The *.exe files are linked against GNU getopt_long from
+ the "lib" directory. That code is under the GNU LGPLv2.1
+ and thus the matching source code must be provided when
+ distributing the *.exe files. The simplest way to comply with
+ the license requirements is to distribute the matching XZ Utils
+ source package alongside the *.exe files.
+
MSVC 2013 update 2 and later have enough C99 support to build
liblzma from XZ Utils 5.2.0 and later without modifications.
- Older MSVC versions would require a large number of changes to
- the XZ Utils code and thus the old MSVC versions aren't supported.
- As of 2015-06-19, some work has been done to get xz.exe and other
- command line tools built with MSVC, but it's not complete enough
- to be included in XZ Utils.
+ Visual Studio 2015 or later is required to build the command line
+ tools.
Building
--------
- It is recommended to use CMake to generate build files for MSVC.
- The project files in vs201x directories will be removed in the
- future (5.4.x releases will include them still).
-
- Descriptions of the files in the vs201x directories:
-
- config.h liblzma configuration #defines for MSVC.
- liblzma.vcxproj This builds static liblzma.
- liblzma_dll.vcxproj This builds liblzma.dll.
- xz_win.sln Solution using the above project files.
-
- The projects have x86 and x86-64 platform configurations, as well
- as a Debug, Release, and ReleaseMT configuration -- MT is the
- compiler switch to link to the CRT statically, so it will not
- have any other DLL dependencies.
-
- The VS2017 project files don't set <WindowsTargetPlatformVersion>.
- This means that you may need to either install Windows SDK 8.1 or
- you may need to set the target platform version before building.
+ Use CMake to generate build files for MSVC. Visual Studio project
+ files are no longer provided (XZ Utils 5.4.x were the last versions
+ to include the project files).
- Currently no test programs are built or run under MSVC from the
- project files. CMake-based builds include tests too.
+ NOTE: GCC and Clang compatible inline assembly isn't supported by
+ the MSVC compiler. Using clang-cl under MSVC should make inline
+ assembly work (untested).
Notes