Get skiaserve working on Windows.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1903203003

Review URL: https://codereview.chromium.org/1903203003
diff --git a/gyp/microhttpd.gyp b/gyp/microhttpd.gyp
index 4e990cd..378d9a0 100644
--- a/gyp/microhttpd.gyp
+++ b/gyp/microhttpd.gyp
@@ -180,6 +180,67 @@
             '_MHD_EXTERN=__attribute__((visibility("default"))) extern',
         ],
       }],
+      ['skia_os == "win"', {
+        'sources': [
+            '../third_party/externals/microhttpd/src/platform/w32functions.c',
+        ],
+        'msvs_disabled_warnings': [4244, 4996],
+        'all_dependent_settings': {
+          'msvs_settings': {
+            'VCLinkerTool': {
+              'AdditionalDependencies': [ 'ws2_32.lib' ],
+            },
+          },
+        },
+        'defines=': [             # equals sign throws away most Skia defines (just noise)
+            "_GNU_SOURCE=1",
+            "BAUTH_SUPPORT=1",
+            "DAUTH_SUPPORT=1",
+            "EPOLL_SUPPORT=0",
+            "HAVE_DECL_SOCK_NONBLOCK=0",
+            "HAVE_DECL_TCP_CORK=0",
+            "HAVE_DECL_TCP_NOPUSH=0",
+            "HAVE_ERRNO_H=1",
+            "HAVE_FCNTL_H=1",
+            "HAVE_INET6=1",
+            "HAVE_INTTYPES_H=1",
+            "HAVE_LIMITS_H=1",
+            "HAVE_LOCALE_H=1",
+            "HAVE_MATH_H=1",
+            "HAVE_MEMORY_H=1",
+            "HAVE_MESSAGES=1",
+#            "HAVE_POLL=0",
+            "HAVE_POSTPROCESSOR=1",
+            "HAVE_PTHREAD_H=0",
+            "HAVE_STDINT_H=1",
+            "HAVE_STDIO_H=1",
+            "HAVE_STDLIB_H=1",
+            "HAVE_STRINGS_H=1",
+            "HAVE_STRING_H=1",
+            "HAVE_SYS_STAT_H=1",
+            "HAVE_SYS_TYPES_H=1",
+            "HAVE_TIME_H=1",
+            "HAVE_WINSOCK2_H=1",
+            "HAVE_WS2TCPIP_H=1",
+            "HTTPS_SUPPORT=0",
+            "MSVC=1",
+            "WINDOWS=1",
+            'LT_OBJDIR=".libs/"',
+            "MHD_DONT_USE_PIPES=1",
+            "MHD_USE_W32_THREADS=1",
+            'PACKAGE="libmicrohttpd"',
+            'PACKAGE_BUGREPORT="libmicrohttpd@gnu.org"',
+            'PACKAGE_NAME="libmicrohttp"',
+            'PACKAGE_STRING="libmicrohttpd 0.9.42"',
+            'PACKAGE_TARNAME="libmicrohttpd"',
+            'PACKAGE_URL=""',
+            'PACKAGE_VERSION="0.9.42"',
+            "SPDY_SUPPORT=0",
+            "STDC_HEADERS=1",
+            'VERSION="0.9.42"',
+            '_MHD_EXTERN=extern',
+        ],
+      }],
     ]
   }]
 }