1 # 2 # Copyright (C) 2013 Google Inc. All rights reserved. 3 # 4 # Redistribution and use in source and binary forms, with or without 5 # modification, are permitted provided that the following conditions are 6 # met: 7 # 8 # * Redistributions of source code must retain the above copyright 9 # notice, this list of conditions and the following disclaimer. 10 # * Redistributions in binary form must reproduce the above 11 # copyright notice, this list of conditions and the following disclaimer 12 # in the documentation and/or other materials provided with the 13 # distribution. 14 # * Neither the name of Google Inc. nor the names of its 15 # contributors may be used to endorse or promote products derived from 16 # this software without specific prior written permission. 17 # 18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 # 30 { 31 'variables': { 32 # If set to 1, doesn't compile debug symbols into webcore reducing the 33 # size of the binary and increasing the speed of gdb. gcc only. 34 'remove_webcore_debug_symbols%': 0, 35 }, 36 'targets': [ 37 { 38 'target_name': 'config', 39 'type': 'none', 40 'direct_dependent_settings': { 41 'include_dirs': [ 42 '.', 43 '..', 44 ], 45 'msvs_disabled_warnings': [ 46 4305, 4324, 4714, 4800, 4996, 47 ], 48 'variables': { 49 'chromium_code': 1, 50 }, 51 'conditions': [ 52 ['OS=="win" and component=="shared_library"', { 53 'defines': [ 54 'USING_V8_SHARED', 55 ], 56 }], 57 ['OS=="win"', { 58 'sources/': [ 59 ['exclude', 'Posix\\.cpp$'], 60 ], 61 },{ # OS!="win" 62 'sources/': [ 63 ['exclude', 'Win\\.cpp$'], 64 ], 65 }], 66 ['OS!="mac"', { 67 'sources/': [ 68 ['exclude', 'Mac\\.mm$'], 69 ], 70 }], 71 ['<(toolkit_uses_gtk) != 1', { 72 'sources/': [ 73 ['exclude', 'Gtk\\.cpp$'] 74 ] 75 }], 76 ['OS!="android"', { 77 'sources/': [ 78 ['exclude', 'Android\\.cpp$'], 79 ], 80 }], 81 ['OS!="win" and remove_webcore_debug_symbols==1', { 82 # Remove -g from all targets defined here. 83 'cflags!': ['-g'], 84 }], 85 ['gcc_version>=46', { 86 # Disable warnings about c++0x compatibility, as some names (such as 87 # nullptr) conflict with upcoming c++0x types. 88 'cflags_cc': ['-Wno-c++0x-compat'], 89 }], 90 ['OS=="linux" and target_arch=="arm"', { 91 # Due to a bug in gcc arm, we get warnings about uninitialized 92 # timesNewRoman.unstatic.3258 and colorTransparent.unstatic.4879. 93 'cflags': ['-Wno-uninitialized'], 94 }], 95 ['clang==1', { 96 'cflags': ['-Wglobal-constructors'], 97 'xcode_settings': { 98 'WARNING_CFLAGS': ['-Wglobal-constructors'], 99 }, 100 }], 101 ], 102 }, 103 }, 104 { 105 'target_name': 'unittest_config', 106 'type': 'none', 107 'dependencies': [ 108 'config', 109 '<(DEPTH)/testing/gmock.gyp:gmock', 110 '<(DEPTH)/testing/gtest.gyp:gtest', 111 ], 112 'export_dependent_settings': [ 113 'config', 114 '<(DEPTH)/testing/gmock.gyp:gmock', 115 '<(DEPTH)/testing/gtest.gyp:gtest', 116 ], 117 'direct_dependent_settings': { 118 'cflags!': ['-Wglobal-constructors'], 119 'xcode_settings': { 120 'WARNING_CFLAGS!': ['-Wglobal-constructors'], 121 }, 122 }, 123 } 124 ], 125 } 126