| OLD | NEW |
| 1 # Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2009 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 # IMPORTANT: | 5 # IMPORTANT: |
| 6 # Please don't directly include this file if you are building via gyp_chromium, | 6 # Please don't directly include this file if you are building via gyp_chromium, |
| 7 # since gyp_chromium is automatically forcing its inclusion. | 7 # since gyp_chromium is automatically forcing its inclusion. |
| 8 { | 8 { |
| 9 'variables': { | 9 'variables': { |
| 10 # .gyp files should set chromium_code to 1 if they build Chromium-specific | 10 # .gyp files should set chromium_code to 1 if they build Chromium-specific |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 # TODO(mmoss) Once 'buildtype' is fully supported (e.g. Windows gyp | 31 # TODO(mmoss) Once 'buildtype' is fully supported (e.g. Windows gyp |
| 32 # conversion is done), some of the things which are now controlled by | 32 # conversion is done), some of the things which are now controlled by |
| 33 # 'branding', such as symbol generation, will need to be refactored based | 33 # 'branding', such as symbol generation, will need to be refactored based |
| 34 # on 'buildtype' (i.e. we don't care about saving symbols for non-Official | 34 # on 'buildtype' (i.e. we don't care about saving symbols for non-Official |
| 35 # builds). | 35 # builds). |
| 36 'buildtype%': 'Dev', | 36 'buildtype%': 'Dev', |
| 37 | 37 |
| 38 # Compute the architecture that we're building for. Default to the | 38 # Compute the architecture that we're building for. Default to the |
| 39 # architecture that we're building on. | 39 # architecture that we're building on. |
| 40 'conditions': [ | 40 'conditions': [ |
| 41 [ 'OS=="linux"', { | 41 [ 'OS=="linux" or OS=="freebsd"', { |
| 42 # This handles the Linux platforms we generally deal with. Anything | 42 # This handles the Linux platforms we generally deal with. Anything |
| 43 # else gets passed through, which probably won't work very well; such | 43 # else gets passed through, which probably won't work very well; such |
| 44 # hosts should pass an explicit target_arch to gyp. | 44 # hosts should pass an explicit target_arch to gyp. |
| 45 'target_arch%': | 45 'target_arch%': |
| 46 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/arm.*/arm/")', | 46 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s/arm
.*/arm/")', |
| 47 }, { # OS!="linux" | 47 }, { # OS!="linux" |
| 48 'target_arch%': 'ia32', | 48 'target_arch%': 'ia32', |
| 49 }], | 49 }], |
| 50 ], | 50 ], |
| 51 | 51 |
| 52 # We do want to build Chromium with Breakpad support in certain | 52 # We do want to build Chromium with Breakpad support in certain |
| 53 # situations. I.e. for Chrome bot. | 53 # situations. I.e. for Chrome bot. |
| 54 'linux_chromium_breakpad%': 0, | 54 'linux_chromium_breakpad%': 0, |
| 55 # And if we want to dump symbols. | 55 # And if we want to dump symbols. |
| 56 'linux_chromium_dump_symbols%': 0, | 56 'linux_chromium_dump_symbols%': 0, |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 196 # isn't supported | 196 # isn't supported |
| 197 'disable_nacl%': 0, | 197 'disable_nacl%': 0, |
| 198 | 198 |
| 199 # Set ARM-v7 compilation flags | 199 # Set ARM-v7 compilation flags |
| 200 'armv7%': 0, | 200 'armv7%': 0, |
| 201 | 201 |
| 202 # Set Thumb compilation flags. | 202 # Set Thumb compilation flags. |
| 203 'arm_thumb%': 0, | 203 'arm_thumb%': 0, |
| 204 | 204 |
| 205 'conditions': [ | 205 'conditions': [ |
| 206 ['OS=="linux"', { | 206 ['OS=="linux" or OS=="freebsd"', { |
| 207 # This will set gcc_version to XY if you are running gcc X.Y.*. | 207 # This will set gcc_version to XY if you are running gcc X.Y.*. |
| 208 # This is used to tweak build flags for gcc 4.4. | 208 # This is used to tweak build flags for gcc 4.4. |
| 209 'gcc_version%': '<!(python <(DEPTH)/build/compiler_version.py)', | 209 'gcc_version%': '<!(python <(DEPTH)/build/compiler_version.py)', |
| 210 'conditions': [ | 210 'conditions': [ |
| 211 ['branding=="Chrome" or linux_chromium_breakpad==1', { | 211 ['branding=="Chrome" or linux_chromium_breakpad==1', { |
| 212 'linux_breakpad%': 1, | 212 'linux_breakpad%': 1, |
| 213 }, { | 213 }, { |
| 214 'linux_breakpad%': 0, | 214 'linux_breakpad%': 0, |
| 215 }], | 215 }], |
| 216 # All Chrome builds have breakpad symbols, but only process the | 216 # All Chrome builds have breakpad symbols, but only process the |
| 217 # symbols from official builds. | 217 # symbols from official builds. |
| 218 # TODO(mmoss) dump_syms segfaults on x64. Enable once dump_syms and | 218 # TODO(mmoss) dump_syms segfaults on x64. Enable once dump_syms and |
| 219 # crash server handle 64-bit symbols. | 219 # crash server handle 64-bit symbols. |
| 220 ['linux_chromium_dump_symbols==1 or ' | 220 ['linux_chromium_dump_symbols==1 or ' |
| 221 '(branding=="Chrome" and buildtype=="Official" and ' | 221 '(branding=="Chrome" and buildtype=="Official" and ' |
| 222 'target_arch=="ia32")', { | 222 'target_arch=="ia32")', { |
| 223 'linux_dump_symbols%': 1, | 223 'linux_dump_symbols%': 1, |
| 224 }, { | 224 }, { |
| 225 'linux_dump_symbols%': 0, | 225 'linux_dump_symbols%': 0, |
| 226 }], | 226 }], |
| 227 ['toolkit_views==0', { | 227 ['toolkit_views==0', { |
| 228 # GTK wants Title Case strings | 228 # GTK wants Title Case strings |
| 229 'use_titlecase_in_grd_files%': 1, | 229 'use_titlecase_in_grd_files%': 1, |
| 230 }], | 230 }], |
| 231 ], | 231 ], |
| 232 }], # OS=="linux" | 232 }], # OS=="linux" or OS=="freebsd" |
| 233 ['OS=="mac"', { | 233 ['OS=="mac"', { |
| 234 # Mac wants Title Case strings | 234 # Mac wants Title Case strings |
| 235 'use_titlecase_in_grd_files%': 1, | 235 'use_titlecase_in_grd_files%': 1, |
| 236 'conditions': [ | 236 'conditions': [ |
| 237 # mac_product_name is set to the name of the .app bundle as it should | 237 # mac_product_name is set to the name of the .app bundle as it should |
| 238 # appear on disk. This duplicates data from | 238 # appear on disk. This duplicates data from |
| 239 # chrome/app/theme/chromium/BRANDING and | 239 # chrome/app/theme/chromium/BRANDING and |
| 240 # chrome/app/theme/google_chrome/BRANDING, but is necessary to get | 240 # chrome/app/theme/google_chrome/BRANDING, but is necessary to get |
| 241 # these names into the build system. | 241 # these names into the build system. |
| 242 ['branding=="Chrome"', { | 242 ['branding=="Chrome"', { |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 524 'inherit_from': ['Release', 'Common_x64'], | 524 'inherit_from': ['Release', 'Common_x64'], |
| 525 }, | 525 }, |
| 526 'Purify_x64': { | 526 'Purify_x64': { |
| 527 'inherit_from': ['Purify', 'Common_x64'], | 527 'inherit_from': ['Purify', 'Common_x64'], |
| 528 }, | 528 }, |
| 529 }], | 529 }], |
| 530 ], | 530 ], |
| 531 }, | 531 }, |
| 532 }, | 532 }, |
| 533 'conditions': [ | 533 'conditions': [ |
| 534 ['OS=="linux"', { | 534 ['OS=="linux" or OS=="freebsd"', { |
| 535 'target_defaults': { | 535 'target_defaults': { |
| 536 # Enable -Werror by default, but put it in a variable so it can | 536 # Enable -Werror by default, but put it in a variable so it can |
| 537 # be disabled in ~/.gyp/include.gypi on the valgrind builders. | 537 # be disabled in ~/.gyp/include.gypi on the valgrind builders. |
| 538 'variables': { | 538 'variables': { |
| 539 'werror%': '-Werror', | 539 'werror%': '-Werror', |
| 540 'no_strict_aliasing%': 0, | 540 'no_strict_aliasing%': 0, |
| 541 }, | 541 }, |
| 542 'cflags': [ | 542 'cflags': [ |
| 543 '<(werror)', # See note above about the werror variable. | 543 '<(werror)', # See note above about the werror variable. |
| 544 '-pthread', | 544 '-pthread', |
| (...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 790 'cflags': ['-fPIC'] | 790 'cflags': ['-fPIC'] |
| 791 }] | 791 }] |
| 792 ], | 792 ], |
| 793 }], | 793 }], |
| 794 ['linux_use_tcmalloc==1', { | 794 ['linux_use_tcmalloc==1', { |
| 795 'defines': ['LINUX_USE_TCMALLOC'], | 795 'defines': ['LINUX_USE_TCMALLOC'], |
| 796 }], | 796 }], |
| 797 ], | 797 ], |
| 798 }, | 798 }, |
| 799 }], | 799 }], |
| 800 # FreeBSD-specific options; note that most FreeBSD options are set above, |
| 801 # with Linux. |
| 802 ['OS=="freebsd"', { |
| 803 'target_defaults': { |
| 804 'ldflags': [ |
| 805 '-Wl,--no-keep-memory', |
| 806 ], |
| 807 }, |
| 808 }], |
| 800 ['OS=="mac"', { | 809 ['OS=="mac"', { |
| 801 'target_defaults': { | 810 'target_defaults': { |
| 802 'variables': { | 811 'variables': { |
| 803 # This should be 'mac_real_dsym%', but there seems to be a bug | 812 # This should be 'mac_real_dsym%', but there seems to be a bug |
| 804 # with % in variables that are intended to be set to different | 813 # with % in variables that are intended to be set to different |
| 805 # values in different targets, like this one. | 814 # values in different targets, like this one. |
| 806 'mac_real_dsym': 0, # Fake .dSYMs are fine in most cases. | 815 'mac_real_dsym': 0, # Fake .dSYMs are fine in most cases. |
| 807 }, | 816 }, |
| 808 'mac_bundle': 0, | 817 'mac_bundle': 0, |
| 809 'xcode_settings': { | 818 'xcode_settings': { |
| (...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 988 ['OS!="win"', { | 997 ['OS!="win"', { |
| 989 'sources/': [ ['exclude', '_win\\.cc$'], | 998 'sources/': [ ['exclude', '_win\\.cc$'], |
| 990 ['exclude', '/win/'], | 999 ['exclude', '/win/'], |
| 991 ['exclude', '/win_[^/]*\\.cc$'] ], | 1000 ['exclude', '/win_[^/]*\\.cc$'] ], |
| 992 }], | 1001 }], |
| 993 ['OS!="mac"', { | 1002 ['OS!="mac"', { |
| 994 'sources/': [ ['exclude', '_(cocoa|mac)(_unittest)?\\.cc$'], | 1003 'sources/': [ ['exclude', '_(cocoa|mac)(_unittest)?\\.cc$'], |
| 995 ['exclude', '/(cocoa|mac)/'], | 1004 ['exclude', '/(cocoa|mac)/'], |
| 996 ['exclude', '\.mm$' ] ], | 1005 ['exclude', '\.mm$' ] ], |
| 997 }], | 1006 }], |
| 998 ['OS!="linux"', { | 1007 ['OS!="linux" and OS!="freebsd"', { |
| 999 'sources/': [ | 1008 'sources/': [ |
| 1000 ['exclude', '_(chromeos|gtk|linux|x|x11)(_unittest)?\\.cc$'], | 1009 ['exclude', '_(chromeos|gtk|linux|x|x11)(_unittest)?\\.cc$'], |
| 1001 ['exclude', '/gtk/'], | 1010 ['exclude', '/gtk/'], |
| 1002 ['exclude', '/(gtk|x11)_[^/]*\\.cc$'] ], | 1011 ['exclude', '/(gtk|x11)_[^/]*\\.cc$'] ], |
| 1003 }], | 1012 }], |
| 1004 # We use "POSIX" to refer to all non-Windows operating systems. | 1013 # We use "POSIX" to refer to all non-Windows operating systems. |
| 1005 ['OS=="win"', { | 1014 ['OS=="win"', { |
| 1006 'sources/': [ ['exclude', '_posix\\.cc$'] ], | 1015 'sources/': [ ['exclude', '_posix\\.cc$'] ], |
| 1007 }], | 1016 }], |
| 1008 # Though Skia is conceptually shared by Linux and Windows, | 1017 # Though Skia is conceptually shared by Linux and Windows, |
| 1009 # the only _skia files in our tree are Linux-specific. | 1018 # the only _skia files in our tree are Linux-specific. |
| 1010 ['OS!="linux"', { | 1019 ['OS!="linux" and OS!="freebsd"', { |
| 1011 'sources/': [ ['exclude', '_skia\\.cc$'] ], | 1020 'sources/': [ ['exclude', '_skia\\.cc$'] ], |
| 1012 }], | 1021 }], |
| 1013 ['chromeos!=1', { | 1022 ['chromeos!=1', { |
| 1014 'sources/': [ ['exclude', '_chromeos\\.cc$'] ] | 1023 'sources/': [ ['exclude', '_chromeos\\.cc$'] ] |
| 1015 }], | 1024 }], |
| 1016 ['OS!="win" and toolkit_views!=1', { | 1025 ['OS!="win" and toolkit_views!=1', { |
| 1017 'sources/': [ ['exclude', '_views\\.cc$'] ] | 1026 'sources/': [ ['exclude', '_views\\.cc$'] ] |
| 1018 }], | 1027 }], |
| 1019 ], | 1028 ], |
| 1020 }, | 1029 }, |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1088 # and therefore SYMROOT, needs to be set at the project level. | 1097 # and therefore SYMROOT, needs to be set at the project level. |
| 1089 'SYMROOT': '<(DEPTH)/xcodebuild', | 1098 'SYMROOT': '<(DEPTH)/xcodebuild', |
| 1090 }, | 1099 }, |
| 1091 } | 1100 } |
| 1092 | 1101 |
| 1093 # Local Variables: | 1102 # Local Variables: |
| 1094 # tab-width:2 | 1103 # tab-width:2 |
| 1095 # indent-tabs-mode:nil | 1104 # indent-tabs-mode:nil |
| 1096 # End: | 1105 # End: |
| 1097 # vim: set expandtab tabstop=2 shiftwidth=2: | 1106 # vim: set expandtab tabstop=2 shiftwidth=2: |
| OLD | NEW |