OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 expected to be overriden on the GYP command line (-D) or by | 9 # Variables expected to be overriden on the GYP command line (-D) or by |
10 # ~/.gyp/include.gypi. | 10 # ~/.gyp/include.gypi. |
(...skipping 1742 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1753 # Sessions are store separately in the Java side. | 1753 # Sessions are store separately in the Java side. |
1754 'enable_session_service%': 0, | 1754 'enable_session_service%': 0, |
1755 | 1755 |
1756 'p2p_apis%' : 0, | 1756 'p2p_apis%' : 0, |
1757 | 1757 |
1758 'gtest_target_type%': 'shared_library', | 1758 'gtest_target_type%': 'shared_library', |
1759 | 1759 |
1760 # Uses system APIs for decoding audio and video. | 1760 # Uses system APIs for decoding audio and video. |
1761 'use_libffmpeg%': '0', | 1761 'use_libffmpeg%': '0', |
1762 | 1762 |
1763 # When building as part of the Android system, use system libraries | 1763 # TODO(torne): Remove this unsupported option once all the places that |
1764 # where possible to reduce ROM size. | 1764 # test it have been updated. |
1765 'use_system_stlport%': '<(android_webview_build)', | 1765 'use_system_stlport%': 0, |
1766 | 1766 |
1767 # Copy it out one scope. | 1767 # Copy it out one scope. |
1768 'android_webview_build%': '<(android_webview_build)', | 1768 'android_webview_build%': '<(android_webview_build)', |
1769 | 1769 |
1770 # Default android linker script for shared library exports. | 1770 # Default android linker script for shared library exports. |
1771 'android_linker_script%': '<(SHARED_INTERMEDIATE_DIR)/android_exports.ls
t', | 1771 'android_linker_script%': '<(SHARED_INTERMEDIATE_DIR)/android_exports.ls
t', |
1772 }], # OS=="android" | 1772 }], # OS=="android" |
1773 ['embedded==1', { | 1773 ['embedded==1', { |
1774 'use_system_fontconfig%': 0, | 1774 'use_system_fontconfig%': 0, |
1775 }, { | 1775 }, { |
(...skipping 2556 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4332 }, | 4332 }, |
4333 }], | 4333 }], |
4334 # Android-specific options; note that most are set above with Linux. | 4334 # Android-specific options; note that most are set above with Linux. |
4335 ['OS=="android"', { | 4335 ['OS=="android"', { |
4336 'variables': { | 4336 'variables': { |
4337 # This is a unique identifier for a given build. It's used for | 4337 # This is a unique identifier for a given build. It's used for |
4338 # identifying various build artifacts corresponding to a particular | 4338 # identifying various build artifacts corresponding to a particular |
4339 # build of chrome (e.g. where to find archived symbols). | 4339 # build of chrome (e.g. where to find archived symbols). |
4340 'chrome_build_id%': '', | 4340 'chrome_build_id%': '', |
4341 'conditions': [ | 4341 'conditions': [ |
4342 # Use shared stlport library when system one used. | |
4343 # Figure this out early since it needs symbols from libgcc.a, so it | 4342 # Figure this out early since it needs symbols from libgcc.a, so it |
4344 # has to be before that in the set of libraries. | 4343 # has to be before that in the set of libraries. |
4345 ['use_system_stlport==1', { | 4344 ['component=="shared_library"', { |
4346 'android_stlport_library': 'stlport', | 4345 'android_stlport_library': 'stlport_shared', |
4347 }, { | 4346 }, { |
4348 'conditions': [ | 4347 'android_stlport_library': 'stlport_static', |
4349 ['component=="shared_library"', { | |
4350 'android_stlport_library': 'stlport_shared', | |
4351 }, { | |
4352 'android_stlport_library': 'stlport_static', | |
4353 }], | |
4354 ], | |
4355 }], | 4348 }], |
4356 ], | 4349 ], |
4357 | 4350 |
4358 # Placing this variable here prevents from forking libvpx, used | 4351 # Placing this variable here prevents from forking libvpx, used |
4359 # by remoting. Remoting is off, so it needn't built, | 4352 # by remoting. Remoting is off, so it needn't built, |
4360 # so forking it's deps seems like overkill. | 4353 # so forking it's deps seems like overkill. |
4361 # But this variable need defined to properly run gyp. | 4354 # But this variable need defined to properly run gyp. |
4362 # A proper solution is to have an OS==android conditional | 4355 # A proper solution is to have an OS==android conditional |
4363 # in third_party/libvpx/libvpx.gyp to define it. | 4356 # in third_party/libvpx/libvpx.gyp to define it. |
4364 'libvpx_path': 'lib/linux/arm', | 4357 'libvpx_path': 'lib/linux/arm', |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4436 'ANDROID', | 4429 'ANDROID', |
4437 '__GNU_SOURCE=1', # Necessary for clone() | 4430 '__GNU_SOURCE=1', # Necessary for clone() |
4438 'USE_STLPORT=1', | 4431 'USE_STLPORT=1', |
4439 '_STLP_USE_PTR_SPECIALIZATIONS=1', | 4432 '_STLP_USE_PTR_SPECIALIZATIONS=1', |
4440 'CHROME_BUILD_ID="<(chrome_build_id)"', | 4433 'CHROME_BUILD_ID="<(chrome_build_id)"', |
4441 ], | 4434 ], |
4442 'ldflags!': [ | 4435 'ldflags!': [ |
4443 '-pthread', # Not supported by Android toolchain. | 4436 '-pthread', # Not supported by Android toolchain. |
4444 ], | 4437 ], |
4445 'ldflags': [ | 4438 'ldflags': [ |
4446 '-nostdlib', | |
4447 '-Wl,--no-undefined', | 4439 '-Wl,--no-undefined', |
4448 ], | 4440 ], |
4449 'libraries': [ | |
4450 '-l<(android_stlport_library)', | |
4451 # Manually link the libgcc.a that the cross compiler uses. | |
4452 '<!(<(android_toolchain)/*-gcc -print-libgcc-file-name)', | |
4453 '-lc', | |
4454 '-ldl', | |
4455 '-lm', | |
4456 ], | |
4457 'conditions': [ | 4441 'conditions': [ |
4458 ['component=="static_library"', { | 4442 ['component=="static_library"', { |
4459 'ldflags': [ | 4443 'ldflags': [ |
4460 '-Wl,--exclude-libs=ALL', | 4444 '-Wl,--exclude-libs=ALL', |
4461 ], | 4445 ], |
4462 }], | 4446 }], |
4463 ['clang==1', { | 4447 ['clang==1', { |
4464 'cflags': [ | 4448 'cflags': [ |
4465 # Work around incompatibilities between bionic and clang | 4449 # Work around incompatibilities between bionic and clang |
4466 # headers. | 4450 # headers. |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4519 'defines': [ | 4503 'defines': [ |
4520 # The NDK has these things, but doesn't define the constants | 4504 # The NDK has these things, but doesn't define the constants |
4521 # to say that it does. Define them here instead. | 4505 # to say that it does. Define them here instead. |
4522 'HAVE_SYS_UIO_H', | 4506 'HAVE_SYS_UIO_H', |
4523 ], | 4507 ], |
4524 'cflags': [ | 4508 'cflags': [ |
4525 '--sysroot=<(android_ndk_sysroot)', | 4509 '--sysroot=<(android_ndk_sysroot)', |
4526 ], | 4510 ], |
4527 'ldflags': [ | 4511 'ldflags': [ |
4528 '--sysroot=<(android_ndk_sysroot)', | 4512 '--sysroot=<(android_ndk_sysroot)', |
| 4513 '-nostdlib', |
| 4514 ], |
| 4515 'libraries': [ |
| 4516 '-l<(android_stlport_library)', |
| 4517 # Manually link the libgcc.a that the cross compiler uses. |
| 4518 '<!(<(android_toolchain)/*-gcc -print-libgcc-file-name)', |
| 4519 '-lc', |
| 4520 '-ldl', |
| 4521 '-lm', |
4529 ], | 4522 ], |
4530 }], | 4523 }], |
4531 ['android_webview_build==1', { | 4524 ['android_webview_build==1', { |
4532 'include_dirs': [ | |
4533 # OpenAL headers from the Android tree. | |
4534 '<(android_src)/frameworks/wilhelm/include', | |
4535 ], | |
4536 'cflags': [ | 4525 'cflags': [ |
4537 # Android predefines this as 1; undefine it here so Chromium | 4526 # Android predefines this as 1; undefine it here so Chromium |
4538 # can redefine it later to be 2 for chromium code and unset | 4527 # can redefine it later to be 2 for chromium code and unset |
4539 # for third party code. This works because cflags are added | 4528 # for third party code. This works because cflags are added |
4540 # before defines. | 4529 # before defines. |
4541 '-U_FORTIFY_SOURCE', | 4530 '-U_FORTIFY_SOURCE', |
4542 # Disable any additional warnings enabled by the Android build
system but which | 4531 # Disable any additional warnings enabled by the Android build
system but which |
4543 # chromium does not build cleanly with (when treating warning
as errors). | 4532 # chromium does not build cleanly with (when treating warning
as errors). |
4544 # Things that are part of -Wextra: | 4533 # Things that are part of -Wextra: |
4545 '-Wno-extra', # Enabled by -Wextra, but no specific flag | 4534 '-Wno-extra', # Enabled by -Wextra, but no specific flag |
4546 '-Wno-ignored-qualifiers', | 4535 '-Wno-ignored-qualifiers', |
4547 '-Wno-type-limits', | 4536 '-Wno-type-limits', |
4548 '-Wno-unused-but-set-variable', | 4537 '-Wno-unused-but-set-variable', |
4549 ], | 4538 ], |
4550 'cflags_cc': [ | 4539 'cflags_cc': [ |
4551 # Other things unrelated to -Wextra: | 4540 # Other things unrelated to -Wextra: |
4552 '-Wno-non-virtual-dtor', | 4541 '-Wno-non-virtual-dtor', |
4553 '-Wno-sign-promo', | 4542 '-Wno-sign-promo', |
4554 ], | 4543 ], |
| 4544 'libraries': [ |
| 4545 '-ldl', |
| 4546 ], |
4555 }], | 4547 }], |
4556 ['android_webview_build==1', { | 4548 ['android_webview_build==1', { |
4557 'target_conditions': [ | 4549 'target_conditions': [ |
4558 ['chromium_code==0', { | 4550 ['chromium_code==0', { |
4559 'cflags': [ | 4551 'cflags': [ |
4560 # There is a class of warning which: | 4552 # There is a class of warning which: |
4561 # 1) Android always enables and also treats as errors | 4553 # 1) Android always enables and also treats as errors |
4562 # 2) Chromium ignores in third party code | 4554 # 2) Chromium ignores in third party code |
4563 # So we re-enable those warnings when building Android. | 4555 # So we re-enable those warnings when building Android. |
4564 '-Wno-address', | 4556 '-Wno-address', |
(...skipping 12 matching lines...) Expand all Loading... |
4577 # Enable identical code folding to reduce size. | 4569 # Enable identical code folding to reduce size. |
4578 '-Wl,--icf=safe', | 4570 '-Wl,--icf=safe', |
4579 ], | 4571 ], |
4580 }], | 4572 }], |
4581 # NOTE: The stlport header include paths below are specified in | 4573 # NOTE: The stlport header include paths below are specified in |
4582 # cflags rather than include_dirs because they need to come | 4574 # cflags rather than include_dirs because they need to come |
4583 # after include_dirs. Think of them like system headers, but | 4575 # after include_dirs. Think of them like system headers, but |
4584 # don't use '-isystem' because the arm-linux-androideabi-4.4.3 | 4576 # don't use '-isystem' because the arm-linux-androideabi-4.4.3 |
4585 # toolchain (circa Gingerbread) will exhibit strange errors. | 4577 # toolchain (circa Gingerbread) will exhibit strange errors. |
4586 # The include ordering here is important; change with caution. | 4578 # The include ordering here is important; change with caution. |
4587 ['use_system_stlport==1', { | 4579 ['android_webview_build==0', { |
4588 'cflags': [ | |
4589 # For libstdc++/include, which is used by stlport. | |
4590 '-I<(android_src)/bionic', | |
4591 '-I<(android_src)/external/stlport/stlport', | |
4592 ], | |
4593 }, { # else: use_system_stlport!=1 | |
4594 'cflags': [ | 4580 'cflags': [ |
4595 '-isystem<(android_stlport_include)', | 4581 '-isystem<(android_stlport_include)', |
4596 ], | 4582 ], |
4597 'ldflags': [ | 4583 'ldflags': [ |
4598 '-L<(android_stlport_libs_dir)', | 4584 '-L<(android_stlport_libs_dir)', |
4599 ], | 4585 ], |
| 4586 }, { # else: android_webview_build!=0 |
| 4587 'aosp_build_settings': { |
| 4588 # Specify that we want to statically link stlport from the |
| 4589 # NDK. This will provide all the include and library paths |
| 4590 # automatically at build time, and link the right library. |
| 4591 'LOCAL_NDK_STL_VARIANT': 'stlport_static', |
| 4592 }, |
4600 }], | 4593 }], |
4601 ['target_arch=="ia32"', { | 4594 ['target_arch=="ia32"', { |
4602 # The x86 toolchain currently has problems with stack-protector. | 4595 # The x86 toolchain currently has problems with stack-protector. |
4603 'cflags!': [ | 4596 'cflags!': [ |
4604 '-fstack-protector', | 4597 '-fstack-protector', |
4605 ], | 4598 ], |
4606 'cflags': [ | 4599 'cflags': [ |
4607 '-fno-stack-protector', | 4600 '-fno-stack-protector', |
4608 ], | 4601 ], |
4609 }], | 4602 }], |
(...skipping 1139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5749 # settings in target dicts. SYMROOT is a special case, because many other | 5742 # settings in target dicts. SYMROOT is a special case, because many other |
5750 # Xcode variables depend on it, including variables such as | 5743 # Xcode variables depend on it, including variables such as |
5751 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 5744 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
5752 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 5745 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
5753 # files to appear (when present) in the UI as actual files and not red | 5746 # files to appear (when present) in the UI as actual files and not red |
5754 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 5747 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
5755 # and therefore SYMROOT, needs to be set at the project level. | 5748 # and therefore SYMROOT, needs to be set at the project level. |
5756 'SYMROOT': '<(DEPTH)/xcodebuild', | 5749 'SYMROOT': '<(DEPTH)/xcodebuild', |
5757 }, | 5750 }, |
5758 } | 5751 } |
OLD | NEW |