# Copyright 2016 Google Inc.
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

declare_args() {
}

import("../third_party.gni")

third_party("libmicrohttpd") {
  public_include_dirs = [ "../externals/microhttpd/src/include" ]

  include_dirs = [ "." ]
  sources = [
    "../externals/microhttpd/src/microhttpd/base64.c",
    "../externals/microhttpd/src/microhttpd/connection.c",
    "../externals/microhttpd/src/microhttpd/daemon.c",
    "../externals/microhttpd/src/microhttpd/internal.c",
    "../externals/microhttpd/src/microhttpd/memorypool.c",
    "../externals/microhttpd/src/microhttpd/postprocessor.c",
    "../externals/microhttpd/src/microhttpd/reason_phrase.c",
    "../externals/microhttpd/src/microhttpd/response.c",
    "../externals/microhttpd/src/microhttpd/tsearch.c",
  ]

  defines = [ "DAUTH_SUPPORT=1" ]
  libs = []

  if (is_win) {
    sources += [ "../externals/microhttpd/src/platform/w32functions.c" ]
    defines += [
      "HAVE_SYS_TYPES_H=1",
      "HAVE_TIME_H=1",
      "MHD_USE_W32_THREADS=1",
      "WINDOWS",
    ]
    libs += [ "Ws2_32.lib" ]
  } else {
    defines += [
      "HAVE_NETINET_IN_H=1",
      "HAVE_PTHREAD_H=1",
      "HAVE_SYS_SOCKET_H=1",
      "MHD_USE_POSIX_THREADS=1",
    ]
  }
}