1 # Copyright 2014 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 assert(is_linux, "This file should only be referenced on Linux") 6 7 import("//build/config/features.gni") 8 9 component("libgtk2ui") { 10 sources = [ 11 "app_indicator_icon.cc", 12 "app_indicator_icon.h", 13 "app_indicator_icon_menu.cc", 14 "app_indicator_icon_menu.h", 15 "chrome_gtk_frame.cc", 16 "chrome_gtk_frame.h", 17 "chrome_gtk_menu_subclasses.cc", 18 "chrome_gtk_menu_subclasses.h", 19 "g_object_destructor_filo.cc", 20 "g_object_destructor_filo.h", 21 "gtk2_border.cc", 22 "gtk2_border.h", 23 "gtk2_event_loop.cc", 24 "gtk2_event_loop.h", 25 "gtk2_key_bindings_handler.cc", 26 "gtk2_key_bindings_handler.h", 27 "gtk2_signal_registrar.cc", 28 "gtk2_signal_registrar.h", 29 "gtk2_status_icon.cc", 30 "gtk2_status_icon.h", 31 "gtk2_ui.cc", 32 "gtk2_ui.h", 33 "gtk2_util.cc", 34 "gtk2_util.h", 35 "libgtk2ui_export.h", 36 "menu_util.cc", 37 "menu_util.h", 38 "native_theme_gtk2.cc", 39 "native_theme_gtk2.h", 40 "owned_widget_gtk2.cc", 41 "owned_widget_gtk2.h", 42 "print_dialog_gtk2.cc", 43 "print_dialog_gtk2.h", 44 "printing_gtk2_util.cc", 45 "printing_gtk2_util.h", 46 "select_file_dialog_impl.cc", 47 "select_file_dialog_impl.h", 48 "select_file_dialog_impl_gtk2.cc", 49 "select_file_dialog_impl_kde.cc", 50 "skia_utils_gtk2.cc", 51 "skia_utils_gtk2.h", 52 "unity_service.cc", 53 "unity_service.h", 54 "x11_input_method_context_impl_gtk2.cc", 55 "x11_input_method_context_impl_gtk2.h", 56 ] 57 58 if (use_gconf) { 59 sources += [ 60 "gconf_listener.cc", 61 "gconf_listener.h", 62 ] 63 } 64 if (is_clang) { 65 # G_DEFINE_TYPE automatically generates a *get_instance_private inline 66 # function after glib 2.37. That's unused. Prevent to complain about it. 67 cflags = [ "-Wno-unused-function" ] 68 } 69 70 defines = [ "LIBGTK2UI_IMPLEMENTATION" ] 71 72 configs += [ 73 "//build/config/linux:gconf", 74 "//build/config/linux:gtk", 75 "//build/config/linux:gtkprint", 76 "//printing:cups", 77 ] 78 79 deps = [ 80 "//base", 81 "//base:i18n", 82 "//base/third_party/dynamic_annotations", 83 "//chrome/app/theme:theme_resources", 84 "//chrome:extra_resources", 85 "//chrome:resources", 86 "//chrome:strings", 87 "//components/resources", 88 "//skia", 89 "//ui/base", 90 "//ui/resources", 91 "//ui/strings", 92 "//ui/views", 93 ] 94 } 95