# Copyright 2016 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/linux/gtk/gtk.gni") import("//build/config/linux/pkg_config.gni") assert(is_linux, "This file should only be referenced on Linux") # GN doesn't check visibility for configs so we give this an obviously internal # name to discourage random targets from accidentally depending on this and # bypassing the GTK target's visibility. pkg_config("gtk_internal_config") { # Gtk requires gmodule, but it does not list it as a dependency in some # misconfigured systems. packages = [ "gmodule-2.0", "gthread-2.0", ] if (gtk_version == 3) { packages += [ "gtk+-3.0" ] } else { assert(gtk_version == 4) packages += [ "gtk4" ] } } group("gtk") { visibility = [ # These are allow-listed for WebRTC builds. Nothing in else should depend # on GTK. "//examples:peerconnection_client", "//remoting/host:common", "//remoting/host:remoting_me2me_host_static", "//remoting/host:x11_display_utils", "//remoting/host/file_transfer", "//remoting/host/it2me:common", "//remoting/host/it2me:main", "//remoting/host/linux", "//remoting/host/remote_open_url:common", "//remoting/test:it2me_standalone_host_main", "//webrtc/examples:peerconnection_client", ] public_configs = [ ":gtk_internal_config" ] }