blob: d0221b1e392ca5f121e5a0932b794112ba4270c7 [file] [log] [blame]
# 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_linux)
import("//flutter/shell/platform/glfw/config.gni")
import("//flutter/shell/platform/linux/config.gni")
group("linux") {
deps = []
if (build_glfw_shell) {
deps += [
":flutter_linux_glfw",
"//flutter/shell/platform/glfw:publish_headers_glfw",
"//flutter/shell/platform/glfw/client_wrapper:publish_wrapper_glfw",
]
}
if (build_linux_shell) {
deps += [
":flutter_linux_gtk",
":publish_headers_linux",
]
}
}
# Temporary workaround for the issue describe in
# https://github.com/flutter/flutter/issues/14509 and
# https://github.com/flutter/flutter/issues/14438
# Remove once the build infrastructure moves to Ubuntu 18.04 or newer, where
# the underlying issue is fixed.
config("disable_fatal_link_warnings") {
visibility = [ ":*" ]
ldflags = [ "-Wl,--no-fatal-warnings" ]
}
if (build_glfw_shell) {
shared_library("flutter_linux_glfw") {
deps = [
"//flutter/shell/platform/glfw:flutter_glfw",
]
configs += [ ":disable_fatal_link_warnings" ]
public_configs = [ "//flutter:config" ]
}
}
if (build_linux_shell) {
_public_headers = [
"public/flutter_linux/fl_dart_project.h",
"public/flutter_linux/fl_view.h",
"public/flutter_linux/flutter_linux.h",
]
config("relative_flutter_linux_headers") {
include_dirs = [ "public" ]
}
source_set("flutter_linux") {
sources = [
"fl_dart_project.cc",
"fl_view.cc",
]
configs += [
"//flutter/shell/platform/linux/config:gtk",
"//flutter/shell/platform/linux/config:egl",
]
# Set flag to stop headers being directly included (library users should not do this)
defines = [ "FLUTTER_LINUX_COMPILATION" ]
deps = [
"//flutter/shell/platform/embedder:embedder_with_symbol_prefix",
]
}
shared_library("flutter_linux_gtk") {
deps = [
":flutter_linux",
]
public_configs = [ "//flutter:config" ]
}
copy("publish_headers_linux") {
sources = _public_headers
outputs = [
"$root_out_dir/flutter_linux/{{source_file_part}}",
]
}
}