diff mupdf-source/thirdparty/curl/winbuild/BUILD.WINDOWS.txt @ 2:b50eed0cc0ef upstream

ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4. The directory name has changed: no version number in the expanded directory now.
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Sep 2025 11:43:07 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mupdf-source/thirdparty/curl/winbuild/BUILD.WINDOWS.txt	Mon Sep 15 11:43:07 2025 +0200
@@ -0,0 +1,124 @@
+Building with Visual C++, prerequisites
+=======================================
+
+   This document describes how to compile, build and install curl and libcurl
+   from sources using the Visual C++ build tool. To build with VC++, you will
+   of course have to first install VC++. The minimum required version of
+   VC is 6 (part of Visual Studio 6). However using a more recent version is
+   strongly recommended.
+
+   VC++ is also part of the Windows Platform SDK. You do not have to install
+   the full Visual Studio or Visual C++ if all you want is to build curl.
+
+   The latest Platform SDK can be downloaded freely from:
+
+    https://developer.microsoft.com/en-us/windows/downloads/sdk-archive
+
+   If you are building with VC6 then you will also need the February 2003
+   Edition of the Platform SDK which can be downloaded from:
+
+    https://www.microsoft.com/en-us/download/details.aspx?id=12261
+
+   If you wish to support zlib, openssl, c-ares, ssh2, you will have to download
+   them separately and copy them to the deps directory as shown below:
+
+   somedirectory\
+    |_curl-src
+    | |_winbuild
+    |
+    |_deps
+      |_ lib
+      |_ include
+      |_ bin
+
+   It is also possible to create the deps directory in some other random
+   places and tell the Makefile its location using the WITH_DEVEL option.
+
+Building straight from git
+==========================
+
+ When you check out code git and build it, as opposed from a released source
+ code archive, you need to first run the "buildconf.bat" batch file (present
+ in the source code root directory) to set things up.
+
+Building with Visual C++
+========================
+
+Open a Visual Studio Command prompt:
+
+     Using the 'Developer Command Prompt for VS <version>' menu entry:
+       where version is the Visual Studio version. The developer prompt at default
+       uses the x86 mode. It is required to call Vcvarsall.bat to setup the prompt
+       for the machine type you want, using Vcvarsall.bat.
+       This type of command prompt may not exist in all Visual Studio versions.
+
+       For more information, check:
+         https://docs.microsoft.com/en-us/dotnet/framework/tools/developer-command-prompt-for-vs
+         https://docs.microsoft.com/en-us/cpp/build/how-to-enable-a-64-bit-visual-cpp-toolset-on-the-command-line
+
+     Using the 'VS <version> <platform> <type> Command Prompt' menu entry:
+       where version is the Visual Studio version, platform is e.g. x64
+       and type Native of Cross platform build.  This type of command prompt
+       may not exist in all Visual Studio versions.
+
+       See also:
+         https://msdn.microsoft.com/en-us/library/f2ccy3wt.aspx
+
+Once you are in the console, go to the winbuild directory in the Curl
+sources:
+    cd curl-src\winbuild
+
+Then you can call nmake /f Makefile.vc with the desired options (see below).
+The builds will be in the top src directory, builds\ directory, in
+a directory named using the options given to the nmake call.
+
+nmake /f Makefile.vc mode=<static or dll> <options>
+
+where <options> is one or many of:
+  VC=<6,7,8,9,10,11,12,14,15>    - VC versions
+  WITH_DEVEL=<path>              - Paths for the development files (SSL, zlib, etc.)
+                                   Defaults to sibbling directory deps: ../deps
+                                   Libraries can be fetched at https://windows.php.net/downloads/php-sdk/deps/
+                                   Uncompress them into the deps folder.
+  WITH_SSL=<dll or static>       - Enable OpenSSL support, DLL or static
+  WITH_NGHTTP2=<dll or static>   - Enable HTTP/2 support, DLL or static
+  WITH_MBEDTLS=<dll or static>   - Enable mbedTLS support, DLL or static
+  WITH_CARES=<dll or static>     - Enable c-ares support, DLL or static
+  WITH_ZLIB=<dll or static>      - Enable zlib support, DLL or static
+  WITH_SSH2=<dll or static>      - Enable libSSH2 support, DLL or static
+  WITH_PREFIX=<dir>              - Where to install the build
+  ENABLE_SSPI=<yes or no>        - Enable SSPI support, defaults to yes
+  ENABLE_IPV6=<yes or no>        - Enable IPv6, defaults to yes
+  ENABLE_IDN=<yes or no>         - Enable use of Windows IDN APIs, defaults to yes
+                                   Requires Windows Vista or later
+  ENABLE_WINSSL=<yes or no>      - Enable native Windows SSL support, defaults to yes
+  GEN_PDB=<yes or no>            - Generate Program Database (debug symbols for release build)
+  DEBUG=<yes or no>              - Debug builds
+  MACHINE=<x86 or x64>           - Target architecture (default is x86)
+  CARES_PATH=<path to cares>     - Custom path for c-ares
+  MBEDTLS_PATH=<path to mbedTLS> - Custom path for mbedTLS
+  NGHTTP2_PATH=<path to HTTP/2>  - Custom path for nghttp2
+  SSH2_PATH=<path to libSSH2>    - Custom path for libSSH2
+  SSL_PATH=<path to OpenSSL>     - Custom path for OpenSSL
+  ZLIB_PATH=<path to zlib>       - Custom path for zlib
+
+
+Static linking of Microsoft's C RunTime (CRT):
+==============================================
+If you are using mode=static nmake will create and link to the static build of
+libcurl but *not* the static CRT. If you must you can force nmake to link in
+the static CRT by passing RTLIBCFG=static. Typically you shouldn't use that
+option, and nmake will default to the DLL CRT. RTLIBCFG is rarely used and
+therefore rarely tested. When passing RTLIBCFG for a configuration that was
+already built but not with that option, or if the option was specified
+differently, you must destroy the build directory containing the configuration
+so that nmake can build it from scratch.
+
+Legacy Windows and SSL
+======================
+When you build curl using the build files in this directory the default SSL
+backend will be WinSSL (Windows SSPI, more specifically Schannel), the native
+SSL library that comes with the Windows OS. WinSSL in Windows <= XP is not able
+to connect to servers that no longer support the legacy handshakes and
+algorithms used by those versions. If you will be using curl in one of those
+earlier versions of Windows you should choose another SSL backend like OpenSSL.