To build tcpdump under Windows, you need:
-- version 6 (or higher) of Microsoft Visual Studio or the Cygnus gnu
-C compiler.
-- The November 2001 (or later) edition of Microsoft Platform
-Software Development Kit (SDK), that contains some necessary includes
-for IPv6 support. You can download it from http://www.microsoft.com/sdk
-- the WinPcap source code, that includes libpcap for win32. Download it
-from http://winpcap.polito.it or download libpcap sources from
-https://www.tcpdump.org and follow the instructions in the README.Win32
-file.
-
-First, extract tcpdump and WinPcap in the same folder, and build WinPcap.
-
-The Visual Studio project and the cygwin makefile are in the Win32\prj
-folder.
-
-From Visual Studio, open windump.dsw and build the program. The release
-version of the WinDump.exe executable file will be created in the
-windump\win32\prj\release directory . The debug version will be generated
-in windump\win32\prj\debug.
-
-From cygnus, go to windump\win32\prj\ and type "make". WinDump.exe will be
-created in the same directory.
+- Microsoft Visual Studio 2015 or later
+- the WinPcap or Npcap SDK, which includes libpcap for win32. The
+ WinPcap SDK can be doneloaded from
+
+ https://www.winpcap.org/devel.htm
+
+ and the Npcap SDK can be downloaded from
+
+ http://www.npcap.org
+- CMake, which can be downloadd from
+
+ https://cmake.org
+
+First, make a build directory, either as a subdirectory of the tcpdump
+source directory or as a separate directory.
+
+Second, change to the build directory, and run CMake with the following
+arguments:
+
+ -DCMAKE_PREFIX_PATH={pathname of the WinPcap/Npcap SDK}
+
+ -G {generator}
+
+ the pathname of the tcpdump source directory relative to the build
+ directory (".." if the build directory is a subdirectory of the
+ tcpdump source directory).
+
+"{generator}" would be the string "Visual Studio N YYYY", where "N" is
+the version of Visual Studio and "YYYY" is the year number for that
+version; if you are building a 64-bit version of tcpdump, YYYY must be
+followed by a space and "Win64". For example, to build a 32-bit version
+of tcpdump with Visual Studio 2015, "{generator}" would be "Visual
+Studio 14 2015" and to build a 64-bit version of tcpdump with Visual
+Studio 2017, "{generator}" would be "Visual Studio 15 2017 Win64".
+
+Third, from the build directory, run the command
+
+ msbuild /m /nologo /p:Configuration={configuration} tcpdump.sln
+
+where {configuration} can be "Release", "Debug", or "RelWithDebInfo", or
+build tcpdump from the Visual Studio application using the solution file
+in question.
+
+(XXX - rules for building with MinGW should be added.)