# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//mojo/go/rules.gni")

if (is_android) {
  group("go") {
    deps = [
      ":go_echo_client",
      ":go_echo_server",
      ":go_http_handler",
      ":go_http_server",
    ]
  }

  go_mojo_application("go_echo_client") {
    sources = [
      "echo_client.go",
    ]
    deps = [
      "//examples/echo:bindings",
      "//mojo/go:application",
      "//mojo/go:platform_cgo",
      "//mojo/public/c/system",
      "//mojo/public/platform/native:system",
    ]
  }

  go_mojo_application("go_echo_server") {
    sources = [
      "echo_server.go",
    ]
    deps = [
      "//examples/echo:bindings",
      "//mojo/go:application",
      "//mojo/go:platform_cgo",
      "//mojo/public/c/system",
      "//mojo/public/platform/native:system",
    ]
  }

  go_mojo_application("go_http_handler") {
    sources = [
      "http_handler.go",
    ]
    deps = [
      "//mojo/go:application",
      "//mojo/go:platform_cgo",
      "//mojo/public/c/system",
      "//mojo/public/platform/native:system",
      "//mojo/services/network/public/interfaces",
    ]
  }

  go_mojo_application("go_http_server") {
    sources = [
      "http_server.go",
    ]
    deps = [
      "//mojo/go:application",
      "//mojo/go:platform_cgo",
      "//mojo/public/c/system",
      "//mojo/public/platform/native:system",
      "//mojo/services/network/public/interfaces",
    ]
  }
}
