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 3 # found in the LICENSE file. 4 5 import("//build/config/linux/pkg_config.gni") 6 7 assert(is_linux, "This file should only be referenced on Linux") 8 9 # Depend on //build/config/linux/gtk3 to use GTKv3. 10 # 11 # GN doesn't check visibility for configs so we give this an obviously internal 12 # name to discourage random targets from accidentally depending on this and 13 # bypassing the GTK target's visibility. 14 pkg_config("gtk3_internal_config") { 15 # Gtk requires gmodule, but it does not list it as a dependency in some 16 # misconfigured systems. 17 packages = [ 18 "gmodule-2.0", 19 "gtk+-3.0", 20 "gthread-2.0", 21 ] 22 } 23 24 # Basically no parts of Chrome should depend on GTK. To prevent accidents, the 25 # parts that explicitly need GTK are whitelisted on this target. 26 group("gtk3") { 27 visibility = [ 28 "//chrome/browser/ui/libgtk2ui", 29 "//gpu/gles2_conform_support:gles2_conform_test_windowless", 30 "//remoting/host", 31 "//remoting/host/it2me:remote_assistance_host", 32 "//remoting/host:remoting_me2me_host_static", 33 ] 34 public_configs = [ ":gtk3_internal_config" ] 35 } 36 37 # Depend on "gtkprint" to get this. 38 pkg_config("gtkprint3_internal_config") { 39 packages = [ "gtk+-unix-print-3.0" ] 40 } 41 42 group("gtkprint3") { 43 visibility = [ "//chrome/browser/ui/libgtk2ui" ] 44 public_configs = [ ":gtkprint3_internal_config" ] 45 } 46