Skip to content

Commit

Permalink
Build Windows shell (flutter#8331)
Browse files Browse the repository at this point in the history
Enables the build of the Windows shell, based on the same GLFW code used
by the current Linux shell.
  • Loading branch information
stuartmorgan authored and RBogie committed Apr 8, 2019
1 parent 20c1e05 commit 37534b7
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 4 deletions.
9 changes: 6 additions & 3 deletions shell/platform/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,12 @@ group("platform") {
]
} else if (is_linux) {
deps = []
} else if (is_win || is_fuchsia) {
# There is no platform target on Windows. Fuchsia has its own runner
# implementation.
} else if (is_win) {
deps = [
"windows",
]
} else if ( is_fuchsia) {
# Fuchsia has its own runner implementation.
deps = []
} else {
assert(false, "Unknown/Unsupported platform.")
Expand Down
12 changes: 11 additions & 1 deletion shell/platform/common/cpp/client_wrapper/publish.gni
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@ template("publish_client_wrapper") {
}

copy("${template_target_name}_publish_includes") {
visibility = [ ":$template_target_name" ]
visibility = [
":$template_target_name",
":${template_target_name}_publish_sources",
]

sources = invoker.public
outputs = [
Expand All @@ -38,5 +41,12 @@ template("publish_client_wrapper") {
outputs = [
"$publish_dir_root/{{source_file_part}}",
]

# GN on Windows appears to do #include checks even for copy
# targets, so add the dependency to the headers to satisfy
# the check.
deps = [
":${template_target_name}_publish_includes",
]
}
}
22 changes: 22 additions & 0 deletions shell/platform/windows/BUILD.gn
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Copyright 2013 The Flutter Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

assert(is_win)

group("windows") {
deps = [
":flutter_windows",
"$flutter_root/shell/platform/glfw:publish_headers_glfw",
"$flutter_root/shell/platform/common/cpp/client_wrapper:publish_wrapper",
"$flutter_root/shell/platform/glfw/client_wrapper:publish_wrapper_glfw",
]
}

shared_library("flutter_windows") {
deps = [
"$flutter_root/shell/platform/glfw:flutter_glfw",
]

public_configs = [ "$flutter_root:config" ]
}

0 comments on commit 37534b7

Please sign in to comment.