OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//build/config/linux/pkg_config.gni") | 5 import("//build/config/linux/pkg_config.gni") |
6 | 6 |
7 assert(is_linux, "This file should only be referenced on Linux") | 7 assert(is_linux, "This file should only be referenced on Linux") |
8 | 8 |
9 # Depend on //build/config/linux/gtk2 to use GTKv2. Depend on | 9 # Depend on //build/config/linux/gtk2 to use GTKv2. Depend on |
10 # //build/config/linux/gtk to get GTK 2 or 3 depending on the build flags. | 10 # //build/config/linux/gtk to get GTK 2 or 3 depending on the build flags. |
11 # | 11 # |
12 # GN doesn't check visibility for configs so we give this an obviously internal | 12 # GN doesn't check visibility for configs so we give this an obviously internal |
13 # name to discourage random targets from accidentally depending on this and | 13 # name to discourage random targets from accidentally depending on this and |
14 # bypassing the GTK target's visibility. | 14 # bypassing the GTK target's visibility. |
15 pkg_config("gtk2_internal_config") { | 15 pkg_config("gtk2_internal_config") { |
16 # Gtk requires gmodule, but it does not list it as a dependency in some | 16 # Gtk requires gmodule, but it does not list it as a dependency in some |
17 # misconfigured systems. | 17 # misconfigured systems. |
18 packages = [ | 18 packages = [ |
19 "gmodule-2.0", | 19 "gmodule-2.0", |
20 "gtk+-2.0", | 20 "gtk+-2.0", |
21 "gthread-2.0", | 21 "gthread-2.0", |
22 ] | 22 ] |
23 } | 23 } |
24 | 24 |
25 # Basically no parts of Chrome should depend on GTK. To prevent accidents, the | 25 # Basically no parts of Chrome should depend on GTK. To prevent accidents, the |
26 # parts that explicitly need GTK2 are whitelisted on this target. | 26 # parts that explicitly need GTK2 are whitelisted on this target. |
27 group("gtk2") { | 27 group("gtk2") { |
28 visibility = [ | 28 visibility = [ |
| 29 "//gpu/gles2_conform_support:gles2_conform_test_windowless", |
29 "//build/config/linux/gtk", | 30 "//build/config/linux/gtk", |
30 "//chrome/browser/ui/libgtkui:*", | 31 "//chrome/browser/ui/libgtkui:*", |
31 ] | 32 ] |
32 public_configs = [ ":gtk2_internal_config" ] | 33 public_configs = [ ":gtk2_internal_config" ] |
33 } | 34 } |
34 | 35 |
35 # Depend on "gtkprint" to get this. | 36 # Depend on "gtkprint" to get this. |
36 pkg_config("gtkprint2_internal_config") { | 37 pkg_config("gtkprint2_internal_config") { |
37 packages = [ "gtk+-unix-print-2.0" ] | 38 packages = [ "gtk+-unix-print-2.0" ] |
38 } | 39 } |
39 | 40 |
40 group("gtkprint2") { | 41 group("gtkprint2") { |
41 visibility = [ "//chrome/browser/ui/libgtkui:libgtk2ui" ] | 42 visibility = [ "//chrome/browser/ui/libgtkui:libgtk2ui" ] |
42 public_configs = [ ":gtkprint2_internal_config" ] | 43 public_configs = [ ":gtkprint2_internal_config" ] |
43 } | 44 } |
OLD | NEW |