1 # Copyright 2011 The Android Open Source Project 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 # This file is automatically included by gyp_skia when building any target. 7 8 { 9 'includes': [ 10 'common_variables.gypi', 11 ], 12 13 'target_defaults': { 14 'defines': [ 15 'SK_GAMMA_SRGB', 16 'SK_GAMMA_APPLY_TO_A8', 17 ], 18 19 # Validate the 'skia_os' setting against 'OS', because only certain 20 # combinations work. You should only override 'skia_os' for certain 21 # situations, like building for iOS on a Mac. 22 'variables': { 23 'conditions': [ 24 [ 'skia_os != OS and not ((skia_os == "ios" and OS == "mac") or \ 25 (skia_os == "nacl" and OS == "linux") or \ 26 (skia_os == "chromeos" and OS == "linux"))', { 27 'error': '<!(Cannot build with skia_os=<(skia_os) on OS=<(OS))', 28 }], 29 [ 'skia_mesa and skia_os not in ["mac", "linux"]', { 30 'error': '<!(skia_mesa=1 only supported with skia_os="mac" or "linux".)', 31 }], 32 [ 'skia_angle and not skia_os == "win"', { 33 'error': '<!(skia_angle=1 only supported with skia_os="win".)', 34 }], 35 [ 'skia_arch_width != 32 and skia_arch_width != 64', { 36 'error': '<!(skia_arch_width can only be 32 or 64 bits not <(skia_arch_width) bits)', 37 }], 38 [ 'skia_os == "nacl" and OS != "linux"', { 39 'error': '<!(Skia NaCl build only currently supported on Linux.)', 40 }], 41 [ 'skia_os == "chromeos" and OS != "linux"', { 42 'error': '<!(Skia ChromeOS build is only supported on Linux.)', 43 }], 44 ], 45 }, 46 'includes': [ 47 'common_conditions.gypi', 48 ], 49 'conditions': [ 50 [ 'skia_scalar == "float"', 51 { 52 'defines': [ 53 'SK_SCALAR_IS_FLOAT', 54 'SK_CAN_USE_FLOAT', 55 ], 56 }, { # else, skia_scalar != "float" 57 'defines': [ 58 'SK_SCALAR_IS_FIXED', 59 'SK_CAN_USE_FLOAT', # we can still use floats along the way 60 ], 61 } 62 ], 63 [ 'skia_mesa', { 64 'defines': [ 65 'SK_MESA', 66 ], 67 'direct_dependent_settings': { 68 'defines': [ 69 'SK_MESA', 70 ], 71 }, 72 }], 73 [ 'skia_angle', { 74 'defines': [ 75 'SK_ANGLE', 76 ], 77 'direct_dependent_settings': { 78 'defines': [ 79 'SK_ANGLE', 80 ], 81 }, 82 }], 83 [ 'skia_win_debuggers_path and skia_os == "win"', 84 { 85 'defines': [ 86 'SK_USE_CDB', 87 ], 88 }, 89 ], 90 ], 91 'configurations': { 92 'Debug': { 93 'defines': [ 94 'SK_DEBUG', 95 'GR_DEBUG=1', 96 'SK_DEVELOPER=1', 97 ], 98 }, 99 'Release': { 100 'defines': [ 101 'SK_RELEASE', 102 'GR_RELEASE=1', 103 ], 104 }, 105 'Release_Developer': { 106 'inherit_from': ['Release'], 107 'defines': [ 108 'SK_DEVELOPER=1', 109 ], 110 }, 111 }, 112 }, # end 'target_defaults' 113 } 114 # Local Variables: 115 # tab-width:2 116 # indent-tabs-mode:nil 117 # End: 118 # vim: set expandtab tabstop=2 shiftwidth=2: 119