summaryrefslogtreecommitdiff
path: root/win32/README.txt
diff options
context:
space:
mode:
authorHaibo Huang <hhb@google.com>2019-10-11 11:13:39 -0700
committerElliott Hughes <enh@google.com>2019-11-13 10:28:10 -0800
commit40a7191d8057597978b149621d2882ca507d8cb5 (patch)
treee8d918e4285a965f916def290385a0614313bde1 /win32/README.txt
parent4c60b0d92a62545fa2ff75f7cac070df04a59bdf (diff)
downloadexpat-40a7191d8057597978b149621d2882ca507d8cb5.tar.gz
Upgrade expat to R_2_2_9
Manual changes to Android.bp and expat_config.h. Test: treehugger Change-Id: Iba9d1ed11fadaf15b95a9e94cbc128e77f3aea6d
Diffstat (limited to 'win32/README.txt')
-rw-r--r--win32/README.txt43
1 files changed, 14 insertions, 29 deletions
diff --git a/win32/README.txt b/win32/README.txt
index 462c49b7..1d725f38 100644
--- a/win32/README.txt
+++ b/win32/README.txt
@@ -6,16 +6,17 @@ Expat can be built on Windows in two ways:
This follows the Unix build procedures.
* MS Visual Studio 2013, 2015 and 2017:
- A solution file for Visual Studio 2013 is provided: expat.sln.
- The associated project files (*.vcxproj) reside in the appropriate
- project directories. This solution file can be opened in VS 2015 or VS 2017
- and should be upgraded automatically if VS 2013 is not also installed.
- Note: Tests have their own solution files.
+ Use CMake to generate a solution file for Visual Studio, then use msbuild
+ to compile. For example:
+
+ md build
+ cd build
+ cmake -G"Visual Studio 15 2017" -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
+ msbuild /m expat.sln
* All MS C/C++ compilers:
- The output for all projects will be generated in the win32\bin
- directory, intermediate files will be located in project-specific
- subdirectories of win32\tmp.
+ The output for all projects will be generated in the <CMAKE_BUILD_TYPE>\
+ and xmlwf\<CMAKE_BUILD_TYPE>\ directories.
* Creating MinGW dynamic libraries from MS VC++ DLLs:
@@ -37,39 +38,23 @@ Expat can be built on Windows in two ways:
Dynamic Linking:
- By default the Expat Dlls are built to link statically
+ By default the Expat Dlls are built to link dynamically
with the multi-threaded run-time library.
The libraries are named
- libexpat(w).dll
- libexpat(w).lib (import library)
The "w" indicates the UTF-16 version of the library.
- One rarely uses other versions of the Dll, but they can
- be built easily by specifying a different RTL linkage in
- the IDE on the C/C++ tab under the category Code Generation.
+ Versions that are statically linking with the multi-threaded run-time library
+ can be built with -DEXPAT_MSVC_STATIC_CRT=ON.
- Static Linking:
+ Static Linking: (through -DEXPAT_SHARED_LIBS=OFF)
The libraries should be named like this:
- Single-theaded: libexpat(w)ML.lib
Multi-threaded: libexpat(w)MT.lib
Multi-threaded Dll: libexpat(w)MD.lib
The suffixes conform to the compiler switch settings
- /ML, /MT and /MD for MS VC++.
-
- Note: In Visual Studio 2005 (Visual C++ 8.0) and later, the
- single-threaded runtime library is not supported anymore.
-
- By default, the expat-static and expatw-static projects are set up
- to link statically against the multithreaded run-time library,
- so they will build libexpatMT.lib or libexpatwMT.lib files.
-
- To build the other versions of the static library,
- go to Project - Settings:
- - specify a different RTL linkage on the C/C++ tab
- under the category Code Generation.
- - then, on the Library tab, change the output file name
- accordingly, as described above
+ /MT and /MD for MS VC++.
An application linking to the static libraries must
have the global macro XML_STATIC defined.