From 5c8849cede5577b8b23c3b1d75c03923ce034061 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 19 Nov 2020 23:20:18 +0100 Subject: winbuild: remove docs from Makefiles and refer to README.md Reduce risk for conflicting docs and makes it to a single place to fix and polish. add these missing options to the readme: ENABLE_OPENSSL_AUTO_LOAD_CONFIG and ENABLE_UNICODE clarify ENABLE_SCHANNEL default varies Fixes #6216 Closes #6227 Co-Authored-by: Jay Satiro --- winbuild/Makefile.vc | 35 +---------------------------------- winbuild/MakefileBuild.vc | 27 ++++++--------------------- winbuild/README.md | 7 ++++++- 3 files changed, 13 insertions(+), 56 deletions(-) diff --git a/winbuild/Makefile.vc b/winbuild/Makefile.vc index 45bb81aa8..098561333 100644 --- a/winbuild/Makefile.vc +++ b/winbuild/Makefile.vc @@ -35,40 +35,7 @@ CFGSET=true # Usage # -!MESSAGE Usage: nmake /f Makefile.vc mode= -!MESSAGE where is one or many of: -!MESSAGE VC=<6,7,8,9,10,11,12,14,15> - VC versions -!MESSAGE WITH_DEVEL= - Paths for the development files (SSL, zlib, etc.) -!MESSAGE Defaults to curl's sibling directory deps: ../deps -!MESSAGE Libraries can be fetched at https://windows.php.net/downloads/php-sdk/deps/ -!MESSAGE Uncompress them into the deps folder. -!MESSAGE WITH_PREFIX= - Installation directory path -!MESSAGE Defaults to a configuration dependent (SSL, zlib, etc.) -!MESSAGE directory inside curl's subdirectory builds: ./builds -!MESSAGE Use backslashes as path separator -!MESSAGE WITH_SSL= - Enable OpenSSL support, DLL or static -!MESSAGE WITH_NGHTTP2= - Enable HTTP/2 support, DLL or static -!MESSAGE WITH_CARES= - Enable c-ares support, DLL or static -!MESSAGE WITH_ZLIB= - Enable zlib support, DLL or static -!MESSAGE WITH_SSH2= - Enable libSSH2 support, DLL or static -!MESSAGE WITH_MBEDTLS= - Enable mbedTLS support, DLL or static -!MESSAGE ENABLE_IDN= - Enable use of Windows IDN APIs, defaults to yes -!MESSAGE Requires Windows Vista or later -!MESSAGE ENABLE_IPV6= - Enable IPv6, defaults to yes -!MESSAGE ENABLE_SSPI= - Enable SSPI support, defaults to yes -!MESSAGE ENABLE_SCHANNEL= - Enable native Windows SSL support, defaults to yes -!MESSAGE ENABLE_OPENSSL_AUTO_LOAD_CONFIG= -!MESSAGE - Whether the OpenSSL configuration will be loaded automatically, defaults to yes -!MESSAGE ENABLE_UNICODE= - Enable UNICODE support, defaults to no -!MESSAGE GEN_PDB= - Generate Program Database (debug symbols for release build) -!MESSAGE DEBUG= - Debug builds -!MESSAGE MACHINE= - Target architecture (default x64 on AMD64, x86 on others) -!MESSAGE CARES_PATH= - Custom path for c-ares -!MESSAGE MBEDTLS_PATH= - Custom path for mbedTLS -!MESSAGE NGHTTP2_PATH= - Custom path for nghttp2 -!MESSAGE SSH2_PATH= - Custom path for libSSH2 -!MESSAGE SSL_PATH= - Custom path for OpenSSL -!MESSAGE ZLIB_PATH= - Custom path for zlib +!MESSAGE See winbuild/README.md for usage !ERROR please choose a valid mode !ENDIF diff --git a/winbuild/MakefileBuild.vc b/winbuild/MakefileBuild.vc index 2bc650064..4112b8fca 100644 --- a/winbuild/MakefileBuild.vc +++ b/winbuild/MakefileBuild.vc @@ -22,24 +22,9 @@ ########################################################################### # -# Makefile for building libcurl with MSVC 6 through to 15 +# Makefile for building libcurl with MSVC # -# Usage: see usage message below -# Should be invoked from winbuild directory -# Edit the paths and desired library name -# SSL path is only required if you intend compiling -# with SSL. -# -# This make file leaves the result either a .lib or .dll file -# in the \lib directory. It should be called from the \lib -# directory. -# -# An option would have been to allow the source directory to -# be specified, but I saw no requirement. -# -# Another option would have been to leave the .lib and .dll -# files in the "cfg" directory, but then the make file -# in \src would need to be changed. +# Usage: see README.md # ############################################################## @@ -72,7 +57,7 @@ LFLAGS = /nologo /machine:$(MACHINE) LNKDLL = link.exe /DLL # Use lib.exe instead of link.exe as link.exe /lib has the following bad habits: # - optimizing options like /opt:ref raises warnings (at least in Visual Studio 2015) -# - all (including Windows) dependencies are aggregated (as static parts) +# - all (including Windows) dependencies are aggregated (as static parts) # - link.exe /lib is not documented (anymore) at MSDN # Instead of id: just create an archive, that contains all objects LNKLIB = lib.exe @@ -237,8 +222,8 @@ ZLIB_INC_DIR = $(DEVEL_INCLUDE) ZLIB_LIB_DIR = $(DEVEL_LIB) !ENDIF -# Depending on how zlib is built the libraries have different names, we -# try to handle them all. +# Depending on how zlib is built the libraries have different names, we +# try to handle them all. !IF "$(WITH_ZLIB)"=="dll" !IF EXISTS("$(ZLIB_LIB_DIR)\zlibwapi.lib") ZLIB_LIBS = zlibwapi.lib @@ -622,7 +607,7 @@ CURL_FROM_LIBCURL=$(CURL_DIROBJ)\tool_hugehelp.obj \ $(CURL_DIROBJ)\curl_multibyte.obj \ $(CURL_DIROBJ)\version_win32.obj \ $(CURL_DIROBJ)\dynbuf.obj - + $(PROGRAM_NAME): $(CURL_DIROBJ) $(CURL_FROM_LIBCURL) $(EXE_OBJS) $(CURL_LINK) $(CURL_LFLAGS) $(CURL_LIBCURL_LIBNAME) $(WIN_LIBS) $(CURL_FROM_LIBCURL) $(EXE_OBJS) $(MANIFESTTOOL) diff --git a/winbuild/README.md b/winbuild/README.md index 49b0b6ccf..2475c9885 100644 --- a/winbuild/README.md +++ b/winbuild/README.md @@ -89,7 +89,12 @@ where `` is one or many of: - `ENABLE_IPV6=` - Enable IPv6, defaults to yes - `ENABLE_IDN=` - Enable use of Windows IDN APIs, defaults to yes Requires Windows Vista or later - - `ENABLE_SCHANNEL=` - Enable native Windows SSL support, defaults to yes + - `ENABLE_SCHANNEL=` - Enable native Windows SSL support, defaults + to yes if SSPI and no other SSL library + - `ENABLE_OPENSSL_AUTO_LOAD_CONFIG=` + - Enable loading OpenSSL configuration + automatically, defaults to yes + - `ENABLE_UNICODE=` - Enable UNICODE support, defaults to no - `GEN_PDB=` - Generate Program Database (debug symbols for release build) - `DEBUG=` - Debug builds - `MACHINE=` - Target architecture (default is x86) -- cgit v1.2.1