• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2015 Google Inc.
2#
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5{
6  'variables': {
7    'skia_warnings_as_errors': 0,
8    'conditions': [
9      [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "chromeos"]', {
10        # Use the systemwide Qt libs by default
11        'variables': {
12          'qt_sdk%': '/usr',
13        },
14        'qt_sdk': '<(qt_sdk)',
15        'qt_moc%': 'moc',
16        'qt_includes': [
17          '<(qt_sdk)/include',
18          '<(qt_sdk)/include/QtCore',
19          '<(qt_sdk)/include/QtGui',
20          '<(qt_sdk)/include/QtOpenGL',
21
22          # Systemwide Qt libs are not contained under a single tree,
23          # so we're adding package-qualified paths as a fallback.
24          '<(qt_sdk)/include/qt4',
25          '<(qt_sdk)/include/qt4/QtCore',
26          '<(qt_sdk)/include/qt4/QtGui',
27          '<(qt_sdk)/include/qt4/QtOpenGL',
28        ],
29        'qt_libs': [
30          '-lQtCore',
31          '-lQtGui',
32          '-lQtOpenGL'
33        ],
34      }],
35      [ 'skia_os == "mac"', {
36        # Use the systemwide Qt libs by default
37        'variables': {
38          'qt_sdk%': '/Library/Frameworks',
39        },
40        'qt_sdk': '<(qt_sdk)',
41        'qt_moc%': 'moc',
42        'qt_includes': [
43          '<(qt_sdk)/QtCore.framework/Headers/',
44          '<(qt_sdk)/QtGui.framework/Headers/',
45          '<(qt_sdk)/QtOpenGL.framework/Headers/',
46        ],
47        'qt_libs': [
48          '<(qt_sdk)/QtCore.framework',
49          '<(qt_sdk)/QtGui.framework',
50          '<(qt_sdk)/QtOpenGL.framework',
51        ],
52      }],
53      [ 'skia_os == "win"', {
54        'variables': {
55          # This is the default location for the version of Qt current on 10/11/12
56          'qt_sdk%': 'C:/Qt/4.8.3/',
57        },
58        'qt_sdk': '<(qt_sdk)',
59        'qt_moc%': '<(qt_sdk)/bin/moc',
60        'qt_includes': [
61          '<(qt_sdk)/include',
62          '<(qt_sdk)/include/QtCore',
63          '<(qt_sdk)/include/QtGui',
64          '<(qt_sdk)/include/QtOpenGL',
65        ],
66        'qt_libs': [
67          '<(qt_sdk)/lib/QtCore4.lib',
68          '<(qt_sdk)/lib/QtGui4.lib',
69          '<(qt_sdk)/lib/QtOpenGL4.lib',
70        ],
71      }],
72    ],
73    'moc_src_dir': '../debugger/QT',
74    'moc_gen_dir': '<(SHARED_INTERMEDIATE_DIR)/debugger/QT',
75  },
76  'targets': [
77    {
78      'target_name': 'debugger',
79      'type': 'executable',
80      'mac_bundle': 1,
81      'mac_framework_dirs': [
82        '/Library/Frameworks',
83      ],
84      'include_dirs' : [
85        '../include/private',
86        '../src/core',
87        '../tools/debugger',
88        '../debugger',      # To pull SkDebugger.h
89        '../src/gpu',       # To pull gl/GrGLUtil.h
90        '../src/ports',     # To pull SkFontDescriptor.h
91        '../bench',
92        '../tools',
93        '../debugger/QT',   # For all the QT UI Goodies
94        '<@(qt_includes)',
95      ],
96      'sources': [
97        '../debugger/SkDebugger.cpp',
98        '../tools/debugger/SkDebugCanvas.h',
99        '../tools/debugger/SkDebugCanvas.cpp',
100        '../tools/debugger/SkDrawCommand.h',
101        '../tools/debugger/SkDrawCommand.cpp',
102        '../tools/debugger/SkObjectParser.h',
103        '../tools/debugger/SkObjectParser.cpp',
104        '../tools/debugger/SkOverdrawMode.h',
105        '../tools/debugger/SkOverdrawMode.cpp',
106        '../debugger/debuggermain.cpp',
107        '../debugger/QT/SkDebuggerGUI.cpp',
108        '../debugger/QT/SkDebuggerGUI.h',
109        '../debugger/QT/SkDrawCommandGeometryWidget.h',
110        '../debugger/QT/SkDrawCommandGeometryWidget.cpp',
111        '../debugger/QT/SkCanvasWidget.cpp',
112        '../debugger/QT/SkCanvasWidget.h',
113        '../debugger/QT/SkInspectorWidget.h',
114        '../debugger/QT/SkInspectorWidget.cpp',
115        '../debugger/QT/SkListWidget.h',
116        '../debugger/QT/SkListWidget.cpp',
117        '../debugger/QT/SkSettingsWidget.h',
118        '../debugger/QT/SkSettingsWidget.cpp',
119        '../debugger/QT/SkGLWidget.h',
120        '../debugger/QT/SkGLWidget.cpp',
121        '../debugger/QT/SkRasterWidget.h',
122        '../debugger/QT/SkRasterWidget.cpp',
123
124        # To update this file edit SkIcons.qrc and rerun rcc to generate cpp
125        '../debugger/QT/qrc_SkIcons.cpp',
126
127        # Generated MOC files
128        '<(moc_gen_dir)/moc_SkCanvasWidget.cpp',
129        '<(moc_gen_dir)/moc_SkDebuggerGUI.cpp',
130        '<(moc_gen_dir)/moc_SkDrawCommandGeometryWidget.cpp',
131        '<(moc_gen_dir)/moc_SkInspectorWidget.cpp',
132        '<(moc_gen_dir)/moc_SkSettingsWidget.cpp',
133        '<(moc_gen_dir)/moc_SkRasterWidget.cpp',
134        '<(moc_gen_dir)/moc_SkGLWidget.cpp',
135      ],
136      'dependencies': [
137        'debugger_qt_mocs',
138        'skia_lib.gyp:skia_lib',
139        'jsoncpp.gyp:jsoncpp',
140        'tools.gyp:url_data_manager',
141      ],
142      'cflags': [
143        # Clang gets confused by QWeakPointer, see http://llvm.org/bugs/show_bug.cgi?id=13127
144        '-Wno-uninitialized',
145      ],
146      'link_settings': {
147        'libraries': [
148          '<@(qt_libs)',
149        ],
150      },
151    },
152    {
153      'target_name': 'debugger_qt_mocs',
154      'type': 'none',
155      'sources': [
156        '<(moc_src_dir)/SkCanvasWidget.h',
157        '<(moc_src_dir)/SkDebuggerGUI.h',
158        '<(moc_src_dir)/SkDrawCommandGeometryWidget.h',
159        '<(moc_src_dir)/SkInspectorWidget.h',
160        '<(moc_src_dir)/SkSettingsWidget.h',
161        '<(moc_src_dir)/SkRasterWidget.h',
162        '<(moc_src_dir)/SkGLWidget.h',
163      ],
164      'rules': [
165        {
166          'rule_name': 'generate_moc',
167          'extension': 'h',
168          'outputs': [ '<(moc_gen_dir)/moc_<(RULE_INPUT_ROOT).cpp' ],
169          'action': [ '<(qt_moc)', '-DSK_SUPPORT_GPU=<(skia_gpu)',
170                      '<(RULE_INPUT_PATH)',
171                      '-o', '<(moc_gen_dir)/moc_<(RULE_INPUT_ROOT).cpp' ],
172          'message': 'Generating <(RULE_INPUT_ROOT).cpp.',
173        },
174      ],
175    },
176  ],
177}
178