blob: 7dc27da143da4ef09c50527f2312ba773e048d1b [file] [log] [blame]
epoger@google.comfd03db02011-07-28 14:24:55 +00001# Copyright 2011 The Android Open Source Project
senorblanco@chromium.orgafac8882011-04-11 15:59:47 +00002#
epoger@google.comfd03db02011-07-28 14:24:55 +00003# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
epoger@google.comaa3b6a92012-03-16 13:52:49 +00005#
6# This file is automatically included by gyp_skia when building any target.
7
senorblanco@chromium.orgafac8882011-04-11 15:59:47 +00008{
epoger@google.com573e8ba2012-03-16 18:28:24 +00009 'includes': [
10 'common_variables.gypi',
11 ],
epoger@google.comaa3b6a92012-03-16 13:52:49 +000012
epoger@google.com5351b372011-07-01 17:16:26 +000013 'target_defaults': {
bungeman@google.com97efada2012-07-30 20:40:50 +000014 'defines': [
15 'SK_GAMMA_SRGB',
16 'SK_GAMMA_APPLY_TO_A8',
17 ],
epoger@google.com5351b372011-07-01 17:16:26 +000018
epoger@google.com8846cb22011-07-01 20:20:07 +000019 # 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.
epoger@google.com5351b372011-07-01 17:16:26 +000022 'variables': {
epoger@google.com8846cb22011-07-01 20:20:07 +000023 'conditions': [
borenet@google.com7158e6a2012-11-01 17:43:44 +000024 [ 'skia_os != OS and not ((skia_os == "ios" and OS == "mac") or \
25 (skia_os == "nacl" and OS == "linux"))', {
26 'error': '<!(Cannot build with skia_os=<(skia_os) on OS=<(OS))',
robertphillips@google.com021bce92012-04-02 20:42:26 +000027 }],
borenet@google.com7158e6a2012-11-01 17:43:44 +000028 [ 'skia_mesa and skia_os not in ["mac", "linux"]', {
29 'error': '<!(skia_mesa=1 only supported with skia_os="mac" or "linux".)',
30 }],
31 [ 'skia_angle and not skia_os == "win"', {
32 'error': '<!(skia_angle=1 only supported with skia_os="win".)',
33 }],
34 [ 'skia_arch_width != 32 and skia_arch_width != 64', {
35 'error': '<!(skia_arch_width can only be 32 or 64 bits not <(skia_arch_width) bits)',
36 }],
37 [ 'skia_os == "nacl" and OS != "linux"', {
38 'error': '<!(Skia NaCl build only currently supported on Linux.)',
djsollen@google.come341cb32012-06-28 16:08:05 +000039 }],
epoger@google.com8846cb22011-07-01 20:20:07 +000040 ],
epoger@google.com5351b372011-07-01 17:16:26 +000041 },
seanpaul@google.com1134f982011-09-15 14:24:33 +000042 'includes': [
epoger@google.com573e8ba2012-03-16 18:28:24 +000043 'common_conditions.gypi',
seanpaul@google.com1134f982011-09-15 14:24:33 +000044 ],
45 'conditions': [
46 [ 'skia_scalar == "float"',
47 {
48 'defines': [
49 'SK_SCALAR_IS_FLOAT',
50 'SK_CAN_USE_FLOAT',
51 ],
52 }, { # else, skia_scalar != "float"
53 'defines': [
54 'SK_SCALAR_IS_FIXED',
55 'SK_CAN_USE_FLOAT', # we can still use floats along the way
56 ],
57 }
58 ],
bsalomon@google.com373a6632011-10-19 20:43:20 +000059 [ 'skia_mesa', {
60 'defines': [
61 'SK_MESA',
62 ],
63 'direct_dependent_settings': {
64 'defines': [
65 'SK_MESA',
66 ],
67 },
68 }],
robertphillips@google.com021bce92012-04-02 20:42:26 +000069 [ 'skia_angle', {
70 'defines': [
71 'SK_ANGLE',
72 ],
73 'direct_dependent_settings': {
74 'defines': [
75 'SK_ANGLE',
76 ],
77 },
78 }],
seanpaul@google.com1134f982011-09-15 14:24:33 +000079 ],
epoger@google.com5351b372011-07-01 17:16:26 +000080 'configurations': {
81 'Debug': {
82 'defines': [
83 'SK_DEBUG',
84 'GR_DEBUG=1',
85 ],
86 },
87 'Release': {
88 'defines': [
89 'SK_RELEASE',
90 'GR_RELEASE=1',
91 ],
92 },
93 },
epoger@google.com5351b372011-07-01 17:16:26 +000094 }, # end 'target_defaults'
senorblanco@chromium.orgafac8882011-04-11 15:59:47 +000095}
96# Local Variables:
97# tab-width:2
98# indent-tabs-mode:nil
99# End:
100# vim: set expandtab tabstop=2 shiftwidth=2: