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# Views is the Skia windowing toolkit. 6# It provides: 7# * A portable means of creating native windows. 8# * Events. 9# * Basic widgets and controls. 10 11{ 12 'targets': [ 13 { 14 'target_name': 'views', 15 'product_name': 'skia_views', 16 'type': 'static_library', 17 'standalone_static_library': 1, 18 'dependencies': [ 19 'skia_lib.gyp:skia_lib', 20 'xml.gyp:xml', 21 ], 22 'include_dirs': [ 23 '../include/private', 24 '../include/views', 25 '../include/views/unix', 26 '../src/core', 27 '../src/gpu', 28 ], 29 'sources': [ 30 '../include/views/SkApplication.h', 31 '../include/views/SkBGViewArtist.h', 32 '../include/views/SkEvent.h', 33 '../include/views/SkEventSink.h', 34 '../include/views/SkKey.h', 35 '../include/views/SkOSMenu.h', 36 '../include/views/SkOSWindow_Mac.h', 37 '../include/views/SkOSWindow_SDL.h', 38 '../include/views/SkOSWindow_Unix.h', 39 '../include/views/SkOSWindow_Win.h', 40 '../include/views/SkStackViewLayout.h', 41 '../include/views/SkSystemEventTypes.h', 42 '../include/views/SkTouchGesture.h', 43 '../include/views/SkView.h', 44 '../include/views/SkViewInflate.h', 45 '../include/views/SkWidget.h', 46 '../include/views/SkWindow.h', 47 48 '../src/views/SkBGViewArtist.cpp', 49 '../src/views/SkEvent.cpp', 50 '../src/views/SkEventSink.cpp', 51 '../src/views/SkOSMenu.cpp', 52 '../src/views/SkParsePaint.cpp', 53 '../src/views/SkProgressView.cpp', 54 '../src/views/SkStackViewLayout.cpp', 55 '../src/views/SkTagList.cpp', 56 '../src/views/SkTagList.h', 57 '../src/views/SkTouchGesture.cpp', 58 '../src/views/SkView.cpp', 59 '../src/views/SkViewInflate.cpp', 60 '../src/views/SkViewPriv.cpp', 61 '../src/views/SkViewPriv.h', 62 '../src/views/SkWidgets.cpp', 63 '../src/views/SkWindow.cpp', 64 65 # Unix 66 '../src/views/unix/SkOSWindow_Unix.cpp', 67 '../src/views/unix/keysym2ucs.c', 68 '../src/views/unix/skia_unix.cpp', 69 70 # Mac 71 '../src/views/mac/SkEventNotifier.h', 72 '../src/views/mac/SkEventNotifier.mm', 73 '../src/views/mac/SkTextFieldCell.h', 74 '../src/views/mac/SkTextFieldCell.m', 75 '../src/views/mac/SkNSView.h', 76 '../src/views/mac/SkNSView.mm', 77 '../src/views/mac/SkOSWindow_Mac.mm', 78 '../src/views/mac/skia_mac.mm', 79 80 # Windows 81 '../src/views/win/SkOSWindow_win.cpp', 82 '../src/views/win/skia_win.cpp', 83 ], 84 'conditions': [ 85 [ 'skia_gpu == 1', { 86 'include_dirs' : [ 87 '../src/gpu', 88 ], 89 }], 90 [ 'skia_os == "mac" and skia_use_sdl == 0', { 91 'link_settings': { 92 'libraries': [ 93 '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework', 94 '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', 95 '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework', 96 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', 97 ], 98 }, 99 },{ 100 'sources!': [ 101 '../src/views/mac/SkEventNotifier.h', 102 '../src/views/mac/SkEventNotifier.mm', 103 '../src/views/mac/SkTextFieldCell.h', 104 '../src/views/mac/SkTextFieldCell.m', 105 '../src/views/mac/SkNSView.h', 106 '../src/views/mac/SkNSView.mm', 107 '../src/views/mac/SkOSWindow_Mac.mm', 108 '../src/views/mac/skia_mac.mm', 109 ], 110 }], 111 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "chromeos"] and skia_use_sdl == 0', { 112 'link_settings': { 113 'libraries': [ 114 '-lGL', 115 '-lGLU', 116 '-lX11', 117 ], 118 }, 119 },{ 120 'sources!': [ 121 '../src/views/unix/SkOSWindow_Unix.cpp', 122 '../src/views/unix/keysym2ucs.c', 123 '../src/views/unix/skia_unix.cpp', 124 ], 125 }], 126 [ 'skia_os == "win"', { 127 },{ 128 'sources!': [ 129 '../src/views/win/SkOSWindow_win.cpp', 130 '../src/views/win/skia_win.cpp', 131 ], 132 }], 133 [ 'skia_gpu == 1', { 134 'include_dirs': [ 135 '../include/gpu', 136 ], 137 }], 138 [ 'skia_use_sdl == 1', { 139 'defines': [ 140 'SK_USE_SDL', 141 ], 142 'dependencies': [ 143 'sdl.gyp:sdl', 144 ], 145 'sources!': [ 146 # linux sources 147 '../src/views/unix/SkOSWindow_Unix.cpp', 148 '../src/views/unix/keysym2ucs.c', 149 '../src/views/unix/skia_unix.cpp', 150 151 # mac sources 152 '../src/views/mac/SkEventNotifier.h', 153 '../src/views/mac/SkEventNotifier.mm', 154 '../src/views/mac/SkTextFieldCell.h', 155 '../src/views/mac/SkTextFieldCell.m', 156 '../src/views/mac/SkNSView.h', 157 '../src/views/mac/SkNSView.mm', 158 '../src/views/mac/SkOSWindow_Mac.mm', 159 '../src/views/mac/skia_mac.mm', 160 161 # win sources 162 '../src/views/win/SkOSWindow_win.cpp', 163 '../src/views/win/skia_win.cpp', 164 ], 165 'sources': [ 166 '../src/views/sdl/SkOSWindow_SDL.cpp', 167 ], 168 'export_dependent_settings': [ 169 'sdl.gyp:sdl', 170 ], 171 'conditions': [ 172 [ 'skia_os == "mac"', { 173 'include_dirs': [ 174 '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework/Headers', 175 ], 176 'link_settings': { 177 'libraries': [ 178 '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', 179 ], 180 } 181 }], 182 ], 183 }], 184 ], 185 'direct_dependent_settings': { 186 'include_dirs': [ 187 '../include/views', 188 ], 189 }, 190 'export_dependent_settings': [ 191 'xml.gyp:xml', 192 ], 193 }, 194 ], 195} 196