Add ICU message format support
[chromium-blink-merge.git] / chrome / browser / ui / libgtk2ui / libgtk2ui.gyp
blobc660a0aa79df66091809c9370fc361d7dbd73bb8
1 # Copyright (c) 2012 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.
6   'variables': {
7     'chromium_code': 1,
8   },
9   'targets': [
10     {
11       # GN version: //chrome/browser/ui/libgtk2ui
12       'target_name': 'gtk2ui',
13       'type': '<(component)',
14       'dependencies': [
15         '../../../../base/base.gyp:base',
16         '../../../../base/base.gyp:base_i18n',
17         '../../../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
18         '../../../../build/linux/system.gyp:gconf',
19         '../../../../build/linux/system.gyp:gtk',
20         '../../../../build/linux/system.gyp:gtkprint',
21         '../../../../build/linux/system.gyp:x11',
22         '../../../../components/components_resources.gyp:components_resources',
23         '../../../../content/content.gyp:content',
24         '../../../../printing/printing.gyp:cups',
25         '../../../../printing/printing.gyp:printing',
26         '../../../../skia/skia.gyp:skia',
27         '../../../../ui/aura/aura.gyp:aura',
28         '../../../../ui/base/ime/ui_base_ime.gyp:ui_base_ime',
29         '../../../../ui/base/ui_base.gyp:ui_base',
30         '../../../../ui/events/events.gyp:events',
31         '../../../../ui/events/events.gyp:events_base',
32         '../../../../ui/gfx/gfx.gyp:gfx',
33         '../../../../ui/gfx/x/gfx_x11.gyp:gfx_x11',
34         '../../../../ui/native_theme/native_theme.gyp:native_theme',
35         '../../../../ui/resources/ui_resources.gyp:ui_resources',
36         '../../../../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
37         '../../../../ui/strings/ui_strings.gyp:ui_strings',
38         '../../../../ui/views/views.gyp:views',
39         '../../../chrome_resources.gyp:chrome_extra_resources',
40         '../../../chrome_resources.gyp:chrome_resources',
41         '../../../chrome_resources.gyp:chrome_strings',
42         '../../../chrome_resources.gyp:theme_resources',
43       ],
44       'defines': [
45         'LIBGTK2UI_IMPLEMENTATION',
46         # g_settings_list_schemas is deprecated, but this function is not
47         # available on earlier version that we still need to support.
48         # See build/linux/system.gyp:gio for details.
49         'GLIB_DISABLE_DEPRECATION_WARNINGS'
50       ],
51       # Several of our source files are named _gtk2.cc. This isn't to
52       # differentiate them from their source files (ninja and make are sane
53       # build systems, unlike MSVS). It is instead to get around the rest of
54       # the normal, global gtk exclusion rules, as we are otherwise using gtk
55       # in a non-gtk build.
56       'sources': [
57         # Note: sources list duplicated in GN build.
58         'app_indicator_icon.cc',
59         'app_indicator_icon.h',
60         'app_indicator_icon_menu.cc',
61         'app_indicator_icon_menu.h',
62         'chrome_gtk_frame.cc',
63         'chrome_gtk_frame.h',
64         'chrome_gtk_menu_subclasses.cc',
65         'chrome_gtk_menu_subclasses.h',
66         'g_object_destructor_filo.cc',
67         'g_object_destructor_filo.h',
68         'gconf_listener.cc',
69         'gconf_listener.h',
70         'gtk2_border.cc',
71         'gtk2_border.h',
72         'gtk2_event_loop.cc',
73         'gtk2_event_loop.h',
74         'gtk2_key_bindings_handler.cc',
75         'gtk2_key_bindings_handler.h',
76         'gtk2_signal_registrar.cc',
77         'gtk2_signal_registrar.h',
78         'gtk2_status_icon.cc',
79         'gtk2_status_icon.h',
80         'gtk2_ui.cc',
81         'gtk2_ui.h',
82         'gtk2_util.cc',
83         'gtk2_util.h',
84         'libgtk2ui_export.h',
85         'menu_util.cc',
86         'menu_util.h',
87         'native_theme_gtk2.cc',
88         'native_theme_gtk2.h',
89         'owned_widget_gtk2.cc',
90         'owned_widget_gtk2.h',
91         'print_dialog_gtk2.cc',
92         'print_dialog_gtk2.h',
93         'printing_gtk2_util.cc',
94         'printing_gtk2_util.h',
95         'select_file_dialog_impl.cc',
96         'select_file_dialog_impl.h',
97         'select_file_dialog_impl_gtk2.cc',
98         'select_file_dialog_impl_kde.cc',
99         'skia_utils_gtk2.cc',
100         'skia_utils_gtk2.h',
101         'unity_service.cc',
102         'unity_service.h',
103         'x11_input_method_context_impl_gtk2.cc',
104         'x11_input_method_context_impl_gtk2.h',
105       ],
106       'conditions': [
107         ['use_gconf==0', {
108           'sources!': [
109             'gconf_listener.cc',
110             'gconf_listener.h',
111           ],
112         }],
113         [ 'clang==1', {
114           'cflags': [
115             # G_DEFINE_TYPE automatically generates a *get_instance_private inline function after glib 2.37.
116             # That's unused. Prevent to complain about it.
117             '-Wno-unused-function',
119             # G_STATIC_ASSERT uses a typedef as a static_assert.
120             '-Wno-unused-local-typedef',
121           ],
122         }],
123       ],
124     },
125   ],