| Index: build/toolchain.gypi
|
| diff --git a/build/toolchain.gypi b/build/toolchain.gypi
|
| deleted file mode 100644
|
| index 9f4cedc47868302e32621091ec34a85a454a3aef..0000000000000000000000000000000000000000
|
| --- a/build/toolchain.gypi
|
| +++ /dev/null
|
| @@ -1,1391 +0,0 @@
|
| -# Copyright 2013 the V8 project authors. All rights reserved.
|
| -# Redistribution and use in source and binary forms, with or without
|
| -# modification, are permitted provided that the following conditions are
|
| -# met:
|
| -#
|
| -# * Redistributions of source code must retain the above copyright
|
| -# notice, this list of conditions and the following disclaimer.
|
| -# * Redistributions in binary form must reproduce the above
|
| -# copyright notice, this list of conditions and the following
|
| -# disclaimer in the documentation and/or other materials provided
|
| -# with the distribution.
|
| -# * Neither the name of Google Inc. nor the names of its
|
| -# contributors may be used to endorse or promote products derived
|
| -# from this software without specific prior written permission.
|
| -#
|
| -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
| -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
| -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
| -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
| -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
| -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
| -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
| -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
| -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
| -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
| -
|
| -# Shared definitions for all V8-related targets.
|
| -
|
| -{
|
| - 'variables': {
|
| - 'msvs_use_common_release': 0,
|
| - 'clang%': 0,
|
| - 'asan%': 0,
|
| - 'lsan%': 0,
|
| - 'msan%': 0,
|
| - 'tsan%': 0,
|
| - 'ubsan%': 0,
|
| - 'ubsan_vptr%': 0,
|
| - 'v8_target_arch%': '<(target_arch)',
|
| - 'v8_host_byteorder%': '<!(python -c "import sys; print sys.byteorder")',
|
| - # Native Client builds currently use the V8 ARM JIT and
|
| - # arm/simulator-arm.cc to defer the significant effort required
|
| - # for NaCl JIT support. The nacl_target_arch variable provides
|
| - # the 'true' target arch for places in this file that need it.
|
| - # TODO(bradchen): get rid of nacl_target_arch when someday
|
| - # NaCl V8 builds stop using the ARM simulator
|
| - 'nacl_target_arch%': 'none', # must be set externally
|
| -
|
| - # Setting 'v8_can_use_vfp32dregs' to 'true' will cause V8 to use the VFP
|
| - # registers d16-d31 in the generated code, both in the snapshot and for the
|
| - # ARM target. Leaving the default value of 'false' will avoid the use of
|
| - # these registers in the snapshot and use CPU feature probing when running
|
| - # on the target.
|
| - 'v8_can_use_vfp32dregs%': 'false',
|
| - 'arm_test_noprobe%': 'off',
|
| -
|
| - # Similar to vfp but on MIPS.
|
| - 'v8_can_use_fpu_instructions%': 'true',
|
| -
|
| - # Similar to the ARM hard float ABI but on MIPS.
|
| - 'v8_use_mips_abi_hardfloat%': 'true',
|
| -
|
| - # Force disable libstdc++ debug mode.
|
| - 'disable_glibcxx_debug%': 0,
|
| -
|
| - 'v8_enable_backtrace%': 0,
|
| -
|
| - # Enable profiling support. Only required on Windows.
|
| - 'v8_enable_prof%': 0,
|
| -
|
| - # Some versions of GCC 4.5 seem to need -fno-strict-aliasing.
|
| - 'v8_no_strict_aliasing%': 0,
|
| -
|
| - # Chrome needs this definition unconditionally. For standalone V8 builds,
|
| - # it's handled in build/standalone.gypi.
|
| - 'want_separate_host_toolset%': 1,
|
| -
|
| - # Toolset the d8 binary should be compiled for. Possible values are 'host'
|
| - # and 'target'. If you want to run v8 tests, it needs to be set to 'target'.
|
| - # The setting is ignored if want_separate_host_toolset is 0.
|
| - 'v8_toolset_for_d8%': 'target',
|
| -
|
| - 'host_os%': '<(OS)',
|
| - 'werror%': '-Werror',
|
| - # For a shared library build, results in "libv8-<(soname_version).so".
|
| - 'soname_version%': '',
|
| -
|
| - # Allow to suppress the array bounds warning (default is no suppression).
|
| - 'wno_array_bounds%': '',
|
| -
|
| - # Override where to find binutils
|
| - 'binutils_dir%': '',
|
| -
|
| - 'conditions': [
|
| - ['OS=="linux" and host_arch=="x64"', {
|
| - 'binutils_dir%': 'third_party/binutils/Linux_x64/Release/bin',
|
| - }],
|
| - ['OS=="linux" and host_arch=="ia32"', {
|
| - 'binutils_dir%': 'third_party/binutils/Linux_ia32/Release/bin',
|
| - }],
|
| -
|
| - # linux_use_bundled_gold: whether to use the gold linker binary checked
|
| - # into third_party/binutils. Force this off via GYP_DEFINES when you
|
| - # are using a custom toolchain and need to control -B in ldflags.
|
| - # Do not use 32-bit gold on 32-bit hosts as it runs out address space
|
| - # for component=static_library builds.
|
| - ['OS=="linux" and (target_arch=="x64" or target_arch=="arm")', {
|
| - 'linux_use_bundled_gold%': 1,
|
| - }, {
|
| - 'linux_use_bundled_gold%': 0,
|
| - }],
|
| - # linux_use_bundled_binutils: whether to use the binary binutils
|
| - # checked into third_party/binutils. These are not multi-arch so cannot
|
| - # be used except on x86 and x86-64 (the only two architectures which
|
| - # are currently checke in). Force this off via GYP_DEFINES when you
|
| - # are using a custom toolchain and need to control -B in cflags.
|
| - ['OS=="linux" and (target_arch=="ia32" or target_arch=="x64")', {
|
| - 'linux_use_bundled_binutils%': 1,
|
| - }, {
|
| - 'linux_use_bundled_binutils%': 0,
|
| - }],
|
| - # linux_use_gold_flags: whether to use build flags that rely on gold.
|
| - # On by default for x64 Linux.
|
| - ['OS=="linux" and target_arch=="x64"', {
|
| - 'linux_use_gold_flags%': 1,
|
| - }, {
|
| - 'linux_use_gold_flags%': 0,
|
| - }],
|
| - ],
|
| -
|
| - # Link-Time Optimizations
|
| - 'use_lto%': 0,
|
| - },
|
| - 'conditions': [
|
| - ['host_arch=="ia32" or host_arch=="x64" or \
|
| - host_arch=="ppc" or host_arch=="ppc64" or \
|
| - host_arch=="s390" or host_arch=="s390x" or \
|
| - clang==1', {
|
| - 'variables': {
|
| - 'host_cxx_is_biarch%': 1,
|
| - },
|
| - }, {
|
| - 'variables': {
|
| - 'host_cxx_is_biarch%': 0,
|
| - },
|
| - }],
|
| - ['target_arch=="ia32" or target_arch=="x64" or target_arch=="x87" or \
|
| - target_arch=="ppc" or target_arch=="ppc64" or target_arch=="s390" or \
|
| - target_arch=="s390x" or clang==1', {
|
| - 'variables': {
|
| - 'target_cxx_is_biarch%': 1,
|
| - },
|
| - }, {
|
| - 'variables': {
|
| - 'target_cxx_is_biarch%': 0,
|
| - },
|
| - }],
|
| - ],
|
| - 'target_defaults': {
|
| - 'conditions': [
|
| - ['v8_target_arch=="arm"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_ARM',
|
| - ],
|
| - 'conditions': [
|
| - [ 'arm_version==7 or arm_version=="default"', {
|
| - 'defines': [
|
| - 'CAN_USE_ARMV7_INSTRUCTIONS',
|
| - ],
|
| - }],
|
| - [ 'arm_fpu=="vfpv3-d16" or arm_fpu=="default"', {
|
| - 'defines': [
|
| - 'CAN_USE_VFP3_INSTRUCTIONS',
|
| - ],
|
| - }],
|
| - [ 'arm_fpu=="vfpv3"', {
|
| - 'defines': [
|
| - 'CAN_USE_VFP3_INSTRUCTIONS',
|
| - 'CAN_USE_VFP32DREGS',
|
| - ],
|
| - }],
|
| - [ 'arm_fpu=="neon"', {
|
| - 'defines': [
|
| - 'CAN_USE_VFP3_INSTRUCTIONS',
|
| - 'CAN_USE_VFP32DREGS',
|
| - 'CAN_USE_NEON',
|
| - ],
|
| - }],
|
| - [ 'arm_test_noprobe=="on"', {
|
| - 'defines': [
|
| - 'ARM_TEST_NO_FEATURE_PROBE',
|
| - ],
|
| - }],
|
| - ],
|
| - 'target_conditions': [
|
| - ['_toolset=="host"', {
|
| - 'conditions': [
|
| - ['v8_target_arch==host_arch', {
|
| - # Host built with an Arm CXX compiler.
|
| - 'conditions': [
|
| - [ 'arm_version==7', {
|
| - 'cflags': ['-march=armv7-a',],
|
| - }],
|
| - [ 'arm_version==7 or arm_version=="default"', {
|
| - 'conditions': [
|
| - [ 'arm_fpu!="default"', {
|
| - 'cflags': ['-mfpu=<(arm_fpu)',],
|
| - }],
|
| - ],
|
| - }],
|
| - [ 'arm_float_abi!="default"', {
|
| - 'cflags': ['-mfloat-abi=<(arm_float_abi)',],
|
| - }],
|
| - [ 'arm_thumb==1', {
|
| - 'cflags': ['-mthumb',],
|
| - }],
|
| - [ 'arm_thumb==0', {
|
| - 'cflags': ['-marm',],
|
| - }],
|
| - ],
|
| - }, {
|
| - # 'v8_target_arch!=host_arch'
|
| - # Host not built with an Arm CXX compiler (simulator build).
|
| - 'conditions': [
|
| - [ 'arm_float_abi=="hard"', {
|
| - 'defines': [
|
| - 'USE_EABI_HARDFLOAT=1',
|
| - ],
|
| - }],
|
| - [ 'arm_float_abi=="softfp" or arm_float_abi=="default"', {
|
| - 'defines': [
|
| - 'USE_EABI_HARDFLOAT=0',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - }], # _toolset=="host"
|
| - ['_toolset=="target"', {
|
| - 'conditions': [
|
| - ['v8_target_arch==target_arch', {
|
| - # Target built with an Arm CXX compiler.
|
| - 'conditions': [
|
| - [ 'arm_version==7', {
|
| - 'cflags': ['-march=armv7-a',],
|
| - }],
|
| - [ 'arm_version==7 or arm_version=="default"', {
|
| - 'conditions': [
|
| - [ 'arm_fpu!="default"', {
|
| - 'cflags': ['-mfpu=<(arm_fpu)',],
|
| - }],
|
| - ],
|
| - }],
|
| - [ 'arm_float_abi!="default"', {
|
| - 'cflags': ['-mfloat-abi=<(arm_float_abi)',],
|
| - }],
|
| - [ 'arm_thumb==1', {
|
| - 'cflags': ['-mthumb',],
|
| - }],
|
| - [ 'arm_thumb==0', {
|
| - 'cflags': ['-marm',],
|
| - }],
|
| - ],
|
| - }, {
|
| - # 'v8_target_arch!=target_arch'
|
| - # Target not built with an Arm CXX compiler (simulator build).
|
| - 'conditions': [
|
| - [ 'arm_float_abi=="hard"', {
|
| - 'defines': [
|
| - 'USE_EABI_HARDFLOAT=1',
|
| - ],
|
| - }],
|
| - [ 'arm_float_abi=="softfp" or arm_float_abi=="default"', {
|
| - 'defines': [
|
| - 'USE_EABI_HARDFLOAT=0',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - # Disable GCC LTO for v8
|
| - # v8 is optimized for speed. Because GCC LTO merges flags at link
|
| - # time, we disable LTO to prevent any -O2 flags from taking
|
| - # precedence over v8's -Os flag. However, LLVM LTO does not work
|
| - # this way so we keep LTO enabled under LLVM.
|
| - ['clang==0 and use_lto==1', {
|
| - 'cflags!': [
|
| - '-flto',
|
| - '-ffat-lto-objects',
|
| - ],
|
| - }],
|
| - ],
|
| - }], # _toolset=="target"
|
| - ],
|
| - }], # v8_target_arch=="arm"
|
| - ['v8_target_arch=="arm64"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_ARM64',
|
| - ],
|
| - }],
|
| - ['v8_target_arch=="s390" or v8_target_arch=="s390x"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_S390',
|
| - ],
|
| - 'conditions': [
|
| - ['v8_target_arch=="s390x"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_S390X',
|
| - ],
|
| - }],
|
| - ['v8_host_byteorder=="little"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_S390_LE_SIM',
|
| - ],
|
| - }],
|
| - ],
|
| - }], # s390
|
| - ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_PPC',
|
| - ],
|
| - 'conditions': [
|
| - ['v8_target_arch=="ppc64"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_PPC64',
|
| - ],
|
| - }],
|
| - ['v8_host_byteorder=="little"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_PPC_LE',
|
| - ],
|
| - }],
|
| - ['v8_host_byteorder=="big"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_PPC_BE',
|
| - ],
|
| - 'conditions': [
|
| - ['OS=="aix"', {
|
| - # Work around AIX ceil, trunc and round oddities.
|
| - 'cflags': [ '-mcpu=power5+ -mfprnd' ],
|
| - }],
|
| - ['OS=="aix"', {
|
| - # Work around AIX assembler popcntb bug.
|
| - 'cflags': [ '-mno-popcntb' ],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - }], # ppc
|
| - ['v8_target_arch=="ia32"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_IA32',
|
| - ],
|
| - }], # v8_target_arch=="ia32"
|
| - ['v8_target_arch=="x87"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_X87',
|
| - ],
|
| - 'cflags': ['-march=i586'],
|
| - }], # v8_target_arch=="x87"
|
| - ['(v8_target_arch=="mips" or v8_target_arch=="mipsel" \
|
| - or v8_target_arch=="mips64" or v8_target_arch=="mips64el") \
|
| - and v8_target_arch==target_arch', {
|
| - 'target_conditions': [
|
| - ['_toolset=="target"', {
|
| - # Target built with a Mips CXX compiler.
|
| - 'variables': {
|
| - 'ldso_path%': '<!(/bin/echo -n $LDSO_PATH)',
|
| - 'ld_r_path%': '<!(/bin/echo -n $LD_R_PATH)',
|
| - },
|
| - 'conditions': [
|
| - ['ldso_path!=""', {
|
| - 'ldflags': ['-Wl,--dynamic-linker=<(ldso_path)'],
|
| - }],
|
| - ['ld_r_path!=""', {
|
| - 'ldflags': ['-Wl,--rpath=<(ld_r_path)'],
|
| - }],
|
| - [ 'clang==1', {
|
| - 'cflags': ['-integrated-as'],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ['v8_target_arch=="mips"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_MIPS',
|
| - ],
|
| - 'conditions': [
|
| - [ 'v8_can_use_fpu_instructions=="true"', {
|
| - 'defines': [
|
| - 'CAN_USE_FPU_INSTRUCTIONS',
|
| - ],
|
| - }],
|
| - [ 'v8_use_mips_abi_hardfloat=="true"', {
|
| - 'defines': [
|
| - '__mips_hard_float=1',
|
| - 'CAN_USE_FPU_INSTRUCTIONS',
|
| - ],
|
| - }, {
|
| - 'defines': [
|
| - '__mips_soft_float=1'
|
| - ]
|
| - }],
|
| - ],
|
| - 'target_conditions': [
|
| - ['_toolset=="target"', {
|
| - 'conditions': [
|
| - ['v8_target_arch==target_arch', {
|
| - # Target built with a Mips CXX compiler.
|
| - 'cflags': [
|
| - '-EB',
|
| - '-Wno-error=array-bounds', # Workaround https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56273
|
| - ],
|
| - 'ldflags': ['-EB'],
|
| - 'conditions': [
|
| - [ 'v8_use_mips_abi_hardfloat=="true"', {
|
| - 'cflags': ['-mhard-float'],
|
| - 'ldflags': ['-mhard-float'],
|
| - }, {
|
| - 'cflags': ['-msoft-float'],
|
| - 'ldflags': ['-msoft-float'],
|
| - }],
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R6',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - 'cflags!': ['-mfp32', '-mfpxx'],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32r6'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32r6'],
|
| - 'ldflags': ['-mips32r6'],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'conditions': [
|
| - [ 'mips_fpu_mode=="fp64"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - 'cflags': ['-mfp64'],
|
| - }],
|
| - ['mips_fpu_mode=="fpxx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - 'cflags': ['-mfpxx'],
|
| - }],
|
| - ['mips_fpu_mode=="fp32"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - 'cflags': ['-mfp32'],
|
| - }],
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32r2'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32r2'],
|
| - 'ldflags': ['-mips32r2'],
|
| - }],
|
| - ['mips_arch_variant=="r1"', {
|
| - 'defines': [
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - 'cflags!': ['-mfp64', '-mfpxx'],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32'],
|
| - 'ldflags': ['-mips32'],
|
| - }],
|
| - ['mips_arch_variant=="rx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32RX',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - 'cflags!': ['-mfp64', '-mfp32'],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32', '-mfpxx'],
|
| - 'ldflags': ['-mips32'],
|
| - }],
|
| - ],
|
| - }, {
|
| - # 'v8_target_arch!=target_arch'
|
| - # Target not built with an MIPS CXX compiler (simulator build).
|
| - 'conditions': [
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R6',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'conditions': [
|
| - [ 'mips_fpu_mode=="fp64"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fpxx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fp32"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r1"', {
|
| - 'defines': [
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="rx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32RX',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - }], #_toolset=="target"
|
| - ['_toolset=="host"', {
|
| - 'conditions': [
|
| - ['mips_arch_variant=="rx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32RX',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R6',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'conditions': [
|
| - ['mips_fpu_mode=="fp64"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fpxx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fp32"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP32'
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r1"', {
|
| - 'defines': ['FPU_MODE_FP32',],
|
| - }],
|
| - ]
|
| - }], #_toolset=="host"
|
| - ],
|
| - }], # v8_target_arch=="mips"
|
| - ['v8_target_arch=="mipsel"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_MIPS',
|
| - ],
|
| - 'conditions': [
|
| - [ 'v8_can_use_fpu_instructions=="true"', {
|
| - 'defines': [
|
| - 'CAN_USE_FPU_INSTRUCTIONS',
|
| - ],
|
| - }],
|
| - [ 'v8_use_mips_abi_hardfloat=="true"', {
|
| - 'defines': [
|
| - '__mips_hard_float=1',
|
| - 'CAN_USE_FPU_INSTRUCTIONS',
|
| - ],
|
| - }, {
|
| - 'defines': [
|
| - '__mips_soft_float=1'
|
| - ],
|
| - }],
|
| - ],
|
| - 'target_conditions': [
|
| - ['_toolset=="target"', {
|
| - 'conditions': [
|
| - ['v8_target_arch==target_arch', {
|
| - # Target built with a Mips CXX compiler.
|
| - 'cflags': [
|
| - '-EL',
|
| - '-Wno-error=array-bounds', # Workaround https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56273
|
| - ],
|
| - 'ldflags': ['-EL'],
|
| - 'conditions': [
|
| - [ 'v8_use_mips_abi_hardfloat=="true"', {
|
| - 'cflags': ['-mhard-float'],
|
| - 'ldflags': ['-mhard-float'],
|
| - }, {
|
| - 'cflags': ['-msoft-float'],
|
| - 'ldflags': ['-msoft-float'],
|
| - }],
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R6',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - 'cflags!': ['-mfp32', '-mfpxx'],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32r6'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32r6'],
|
| - 'ldflags': ['-mips32r6'],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'conditions': [
|
| - [ 'mips_fpu_mode=="fp64"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - 'cflags': ['-mfp64'],
|
| - }],
|
| - ['mips_fpu_mode=="fpxx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - 'cflags': ['-mfpxx'],
|
| - }],
|
| - ['mips_fpu_mode=="fp32"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - 'cflags': ['-mfp32'],
|
| - }],
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32r2'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32r2'],
|
| - 'ldflags': ['-mips32r2'],
|
| - }],
|
| - ['mips_arch_variant=="r1"', {
|
| - 'cflags!': ['-mfp64', '-mfpxx'],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32'],
|
| - 'ldflags': ['-mips32'],
|
| - }],
|
| - ['mips_arch_variant=="rx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32RX',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - 'cflags!': ['-mfp64', '-mfp32'],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips32'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips32', '-mfpxx'],
|
| - 'ldflags': ['-mips32'],
|
| - }],
|
| - ['mips_arch_variant=="loongson"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_LOONGSON',
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - 'cflags!': ['-mfp64', '-mfpxx'],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips3'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips3', '-mfp32'],
|
| - }],
|
| - ],
|
| - }, {
|
| - # 'v8_target_arch!=target_arch'
|
| - # Target not built with an MIPS CXX compiler (simulator build).
|
| - 'conditions': [
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R6',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'conditions': [
|
| - [ 'mips_fpu_mode=="fp64"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fpxx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fp32"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r1"', {
|
| - 'defines': [
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="rx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32RX',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="loongson"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_LOONGSON',
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - }], #_toolset=="target
|
| - ['_toolset=="host"', {
|
| - 'conditions': [
|
| - ['mips_arch_variant=="rx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32RX',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R6',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'conditions': [
|
| - ['mips_fpu_mode=="fp64"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP64',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fpxx"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FPXX',
|
| - ],
|
| - }],
|
| - ['mips_fpu_mode=="fp32"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_MIPS32R2',
|
| - 'FPU_MODE_FP32'
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ['mips_arch_variant=="r1"', {
|
| - 'defines': ['FPU_MODE_FP32',],
|
| - }],
|
| - ['mips_arch_variant=="loongson"', {
|
| - 'defines': [
|
| - '_MIPS_ARCH_LOONGSON',
|
| - 'FPU_MODE_FP32',
|
| - ],
|
| - }],
|
| - ]
|
| - }],
|
| - ],
|
| - }], # v8_target_arch=="mipsel"
|
| - ['v8_target_arch=="mips64el" or v8_target_arch=="mips64"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_MIPS64',
|
| - ],
|
| - 'conditions': [
|
| - [ 'v8_can_use_fpu_instructions=="true"', {
|
| - 'defines': [
|
| - 'CAN_USE_FPU_INSTRUCTIONS',
|
| - ],
|
| - }],
|
| - [ 'v8_host_byteorder=="little"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_MIPS64_LE',
|
| - ],
|
| - }],
|
| - [ 'v8_host_byteorder=="big"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_MIPS64_BE',
|
| - ],
|
| - }],
|
| - [ 'v8_use_mips_abi_hardfloat=="true"', {
|
| - 'defines': [
|
| - '__mips_hard_float=1',
|
| - 'CAN_USE_FPU_INSTRUCTIONS',
|
| - ],
|
| - }, {
|
| - 'defines': [
|
| - '__mips_soft_float=1'
|
| - ],
|
| - }],
|
| - ],
|
| - 'target_conditions': [
|
| - ['_toolset=="target"', {
|
| - 'conditions': [
|
| - ['v8_target_arch==target_arch', {
|
| - 'cflags': [
|
| - '-Wno-error=array-bounds', # Workaround https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56273
|
| - ],
|
| - 'conditions': [
|
| - ['v8_target_arch=="mips64el"', {
|
| - 'cflags': ['-EL'],
|
| - 'ldflags': ['-EL'],
|
| - }],
|
| - ['v8_target_arch=="mips64"', {
|
| - 'cflags': ['-EB'],
|
| - 'ldflags': ['-EB'],
|
| - }],
|
| - [ 'v8_use_mips_abi_hardfloat=="true"', {
|
| - 'cflags': ['-mhard-float'],
|
| - 'ldflags': ['-mhard-float'],
|
| - }, {
|
| - 'cflags': ['-msoft-float'],
|
| - 'ldflags': ['-msoft-float'],
|
| - }],
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': ['_MIPS_ARCH_MIPS64R6',],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips64r6'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips64r6', '-mabi=64'],
|
| - 'ldflags': ['-mips64r6', '-mabi=64'],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'defines': ['_MIPS_ARCH_MIPS64R2',],
|
| - 'conditions': [
|
| - [ 'clang==0', {
|
| - 'cflags': ['-Wa,-mips64r2'],
|
| - }],
|
| - ],
|
| - 'cflags': ['-mips64r2', '-mabi=64'],
|
| - 'ldflags': ['-mips64r2', '-mabi=64'],
|
| - }],
|
| - ],
|
| - }, {
|
| - # 'v8_target_arch!=target_arch'
|
| - # Target not built with an MIPS CXX compiler (simulator build).
|
| - 'conditions': [
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': ['_MIPS_ARCH_MIPS64R6',],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'defines': ['_MIPS_ARCH_MIPS64R2',],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - }], #'_toolset=="target"
|
| - ['_toolset=="host"', {
|
| - 'conditions': [
|
| - ['mips_arch_variant=="r6"', {
|
| - 'defines': ['_MIPS_ARCH_MIPS64R6',],
|
| - }],
|
| - ['mips_arch_variant=="r2"', {
|
| - 'defines': ['_MIPS_ARCH_MIPS64R2',],
|
| - }],
|
| - ],
|
| - }], #'_toolset=="host"
|
| - ],
|
| - }], # v8_target_arch=="mips64el"
|
| - ['v8_target_arch=="x64"', {
|
| - 'defines': [
|
| - 'V8_TARGET_ARCH_X64',
|
| - ],
|
| - 'xcode_settings': {
|
| - 'ARCHS': [ 'x86_64' ],
|
| - },
|
| - 'msvs_settings': {
|
| - 'VCLinkerTool': {
|
| - 'StackReserveSize': '2097152',
|
| - },
|
| - },
|
| - 'msvs_configuration_platform': 'x64',
|
| - }], # v8_target_arch=="x64"
|
| - ['v8_target_arch=="x32"', {
|
| - 'defines': [
|
| - # x32 port shares the source code with x64 port.
|
| - 'V8_TARGET_ARCH_X64',
|
| - 'V8_TARGET_ARCH_32_BIT',
|
| - ],
|
| - 'cflags': [
|
| - '-mx32',
|
| - # Inhibit warning if long long type is used.
|
| - '-Wno-long-long',
|
| - ],
|
| - 'ldflags': [
|
| - '-mx32',
|
| - ],
|
| - }], # v8_target_arch=="x32"
|
| - ['linux_use_gold_flags==1', {
|
| - # Newer gccs and clangs support -fuse-ld, use the flag to force gold
|
| - # selection.
|
| - # gcc -- http://gcc.gnu.org/onlinedocs/gcc-4.8.0/gcc/Optimize-Options.html
|
| - 'ldflags': [ '-fuse-ld=gold', ],
|
| - }],
|
| - ['linux_use_bundled_binutils==1', {
|
| - 'cflags': [
|
| - '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)',
|
| - ],
|
| - }],
|
| - ['linux_use_bundled_gold==1', {
|
| - # Put our binutils, which contains gold in the search path. We pass
|
| - # the path to gold to the compiler. gyp leaves unspecified what the
|
| - # cwd is when running the compiler, so the normal gyp path-munging
|
| - # fails us. This hack gets the right path.
|
| - 'ldflags': [
|
| - '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)',
|
| - ],
|
| - }],
|
| - ['OS=="win"', {
|
| - 'defines': [
|
| - 'WIN32',
|
| - ],
|
| - # 4351: VS 2005 and later are warning us that they've fixed a bug
|
| - # present in VS 2003 and earlier.
|
| - 'msvs_disabled_warnings': [4351],
|
| - 'msvs_configuration_attributes': {
|
| - 'OutputDirectory': '<(DEPTH)\\build\\$(ConfigurationName)',
|
| - 'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)',
|
| - 'CharacterSet': '1',
|
| - },
|
| - }],
|
| - ['OS=="win" and v8_target_arch=="ia32"', {
|
| - 'msvs_settings': {
|
| - 'VCCLCompilerTool': {
|
| - # Ensure no surprising artifacts from 80bit double math with x86.
|
| - 'AdditionalOptions': ['/arch:SSE2'],
|
| - },
|
| - },
|
| - }],
|
| - ['OS=="win" and v8_enable_prof==1', {
|
| - 'msvs_settings': {
|
| - 'VCLinkerTool': {
|
| - 'GenerateMapFile': 'true',
|
| - },
|
| - },
|
| - }],
|
| - ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
|
| - or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \
|
| - v8_target_arch=="ia32"', {
|
| - 'cflags': [
|
| - '-msse2',
|
| - '-mfpmath=sse',
|
| - '-mmmx', # Allows mmintrin.h for MMX intrinsics.
|
| - ],
|
| - }],
|
| - ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
|
| - or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \
|
| - (v8_target_arch=="arm" or v8_target_arch=="ia32" or \
|
| - v8_target_arch=="x87" or v8_target_arch=="mips" or \
|
| - v8_target_arch=="mipsel" or v8_target_arch=="ppc" or \
|
| - v8_target_arch=="s390")', {
|
| - 'target_conditions': [
|
| - ['_toolset=="host"', {
|
| - 'conditions': [
|
| - ['host_cxx_is_biarch==1', {
|
| - 'conditions': [
|
| - ['host_arch=="s390" or host_arch=="s390x"', {
|
| - 'cflags': [ '-m31' ],
|
| - 'ldflags': [ '-m31' ]
|
| - },{
|
| - 'cflags': [ '-m32' ],
|
| - 'ldflags': [ '-m32' ]
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - 'xcode_settings': {
|
| - 'ARCHS': [ 'i386' ],
|
| - },
|
| - }],
|
| - ['_toolset=="target"', {
|
| - 'conditions': [
|
| - ['target_cxx_is_biarch==1 and nacl_target_arch!="nacl_x64"', {
|
| - 'conditions': [
|
| - ['host_arch=="s390" or host_arch=="s390x"', {
|
| - 'cflags': [ '-m31' ],
|
| - 'ldflags': [ '-m31' ]
|
| - },{
|
| - 'cflags': [ '-m32' ],
|
| - 'ldflags': [ '-m32' ],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - 'xcode_settings': {
|
| - 'ARCHS': [ 'i386' ],
|
| - },
|
| - }],
|
| - ],
|
| - }],
|
| - ['(OS=="linux" or OS=="android") and \
|
| - (v8_target_arch=="x64" or v8_target_arch=="arm64" or \
|
| - v8_target_arch=="ppc64" or v8_target_arch=="s390x")', {
|
| - 'target_conditions': [
|
| - ['_toolset=="host"', {
|
| - 'conditions': [
|
| - ['host_cxx_is_biarch==1', {
|
| - 'cflags': [ '-m64' ],
|
| - 'ldflags': [ '-m64' ]
|
| - }],
|
| - ],
|
| - }],
|
| - ['_toolset=="target"', {
|
| - 'conditions': [
|
| - ['target_cxx_is_biarch==1', {
|
| - 'cflags': [ '-m64' ],
|
| - 'ldflags': [ '-m64' ],
|
| - }],
|
| - ]
|
| - }],
|
| - ],
|
| - }],
|
| - ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
|
| - or OS=="netbsd" or OS=="qnx" or OS=="aix"', {
|
| - 'conditions': [
|
| - [ 'v8_no_strict_aliasing==1', {
|
| - 'cflags': [ '-fno-strict-aliasing' ],
|
| - }],
|
| - ], # conditions
|
| - }],
|
| - ['OS=="solaris"', {
|
| - 'defines': [ '__C99FEATURES__=1' ], # isinf() etc.
|
| - }],
|
| - ['OS=="freebsd" or OS=="openbsd"', {
|
| - 'cflags': [ '-I/usr/local/include' ],
|
| - }],
|
| - ['OS=="netbsd"', {
|
| - 'cflags': [ '-I/usr/pkg/include' ],
|
| - }],
|
| - ['OS=="aix"', {
|
| - 'defines': [
|
| - # Support for malloc(0)
|
| - '_LINUX_SOURCE_COMPAT=1',
|
| - '_ALL_SOURCE=1'],
|
| - 'conditions': [
|
| - [ 'v8_target_arch=="ppc"', {
|
| - 'ldflags': [ '-Wl,-bmaxdata:0x60000000/dsa' ],
|
| - }],
|
| - [ 'v8_target_arch=="ppc64"', {
|
| - 'cflags': [ '-maix64' ],
|
| - 'ldflags': [ '-maix64' ],
|
| - }],
|
| - ],
|
| - }],
|
| - ], # conditions
|
| - 'configurations': {
|
| - # Abstract configuration for v8_optimized_debug == 0.
|
| - 'DebugBase0': {
|
| - 'abstract': 1,
|
| - 'msvs_settings': {
|
| - 'VCCLCompilerTool': {
|
| - 'Optimization': '0',
|
| - 'conditions': [
|
| - ['component=="shared_library"', {
|
| - 'RuntimeLibrary': '3', # /MDd
|
| - }, {
|
| - 'RuntimeLibrary': '1', # /MTd
|
| - }],
|
| - ],
|
| - },
|
| - 'VCLinkerTool': {
|
| - 'LinkIncremental': '2',
|
| - },
|
| - },
|
| - 'variables': {
|
| - 'v8_enable_slow_dchecks%': 1,
|
| - },
|
| - 'conditions': [
|
| - ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd" or \
|
| - OS=="qnx" or OS=="aix"', {
|
| - 'cflags!': [
|
| - '-O3',
|
| - '-O2',
|
| - '-O1',
|
| - '-Os',
|
| - ],
|
| - 'cflags': [
|
| - '-fdata-sections',
|
| - '-ffunction-sections',
|
| - ],
|
| - }],
|
| - ['OS=="mac"', {
|
| - 'xcode_settings': {
|
| - 'GCC_OPTIMIZATION_LEVEL': '0', # -O0
|
| - },
|
| - }],
|
| - ['v8_enable_slow_dchecks==1', {
|
| - 'defines': [
|
| - 'ENABLE_SLOW_DCHECKS',
|
| - ],
|
| - }],
|
| - ],
|
| - }, # DebugBase0
|
| - # Abstract configuration for v8_optimized_debug == 1.
|
| - 'DebugBase1': {
|
| - 'abstract': 1,
|
| - 'msvs_settings': {
|
| - 'VCCLCompilerTool': {
|
| - 'Optimization': '2',
|
| - 'InlineFunctionExpansion': '2',
|
| - 'EnableIntrinsicFunctions': 'true',
|
| - 'FavorSizeOrSpeed': '0',
|
| - 'StringPooling': 'true',
|
| - 'BasicRuntimeChecks': '0',
|
| - 'conditions': [
|
| - ['component=="shared_library"', {
|
| - 'RuntimeLibrary': '3', #/MDd
|
| - }, {
|
| - 'RuntimeLibrary': '1', #/MTd
|
| - }],
|
| - ],
|
| - },
|
| - 'VCLinkerTool': {
|
| - 'LinkIncremental': '1',
|
| - 'OptimizeReferences': '2',
|
| - 'EnableCOMDATFolding': '2',
|
| - },
|
| - },
|
| - 'variables': {
|
| - 'v8_enable_slow_dchecks%': 0,
|
| - },
|
| - 'conditions': [
|
| - ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd" or \
|
| - OS=="qnx" or OS=="aix"', {
|
| - 'cflags!': [
|
| - '-O0',
|
| - '-O1',
|
| - '-Os',
|
| - ],
|
| - 'cflags': [
|
| - '-fdata-sections',
|
| - '-ffunction-sections',
|
| - ],
|
| - 'conditions': [
|
| - # TODO(crbug.com/272548): Avoid -O3 in NaCl
|
| - # Don't use -O3 with sanitizers.
|
| - ['nacl_target_arch=="none" and asan==0 and msan==0 and lsan==0 \
|
| - and tsan==0 and ubsan==0 and ubsan_vptr==0', {
|
| - 'cflags': ['-O3'],
|
| - 'cflags!': ['-O2'],
|
| - }, {
|
| - 'cflags': ['-O2'],
|
| - 'cflags!': ['-O3'],
|
| - }],
|
| - ],
|
| - }],
|
| - ['OS=="mac"', {
|
| - 'xcode_settings': {
|
| - 'GCC_OPTIMIZATION_LEVEL': '3', # -O3
|
| - 'GCC_STRICT_ALIASING': 'YES',
|
| - },
|
| - }],
|
| - ['v8_enable_slow_dchecks==1', {
|
| - 'defines': [
|
| - 'ENABLE_SLOW_DCHECKS',
|
| - ],
|
| - }],
|
| - ],
|
| - }, # DebugBase1
|
| - # Common settings for the Debug configuration.
|
| - 'DebugBaseCommon': {
|
| - 'abstract': 1,
|
| - 'defines': [
|
| - 'ENABLE_DISASSEMBLER',
|
| - 'V8_ENABLE_CHECKS',
|
| - 'OBJECT_PRINT',
|
| - 'VERIFY_HEAP',
|
| - 'DEBUG',
|
| - 'TRACE_MAPS'
|
| - ],
|
| - 'conditions': [
|
| - ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd" or \
|
| - OS=="qnx" or OS=="aix"', {
|
| - 'cflags': [ '-Woverloaded-virtual', '<(wno_array_bounds)', ],
|
| - }],
|
| - ['OS=="linux" and v8_enable_backtrace==1', {
|
| - # Support for backtrace_symbols.
|
| - 'ldflags': [ '-rdynamic' ],
|
| - }],
|
| - ['OS=="linux" and disable_glibcxx_debug==0', {
|
| - # Enable libstdc++ debugging facilities to help catch problems
|
| - # early, see http://crbug.com/65151 .
|
| - 'defines': ['_GLIBCXX_DEBUG=1',],
|
| - }],
|
| - ['OS=="aix"', {
|
| - 'ldflags': [ '-Wl,-bbigtoc' ],
|
| - 'conditions': [
|
| - ['v8_target_arch=="ppc64"', {
|
| - 'cflags': [ '-maix64 -mcmodel=large' ],
|
| - }],
|
| - ],
|
| - }],
|
| - ['OS=="android"', {
|
| - 'variables': {
|
| - 'android_full_debug%': 1,
|
| - },
|
| - 'conditions': [
|
| - ['android_full_debug==0', {
|
| - # Disable full debug if we want a faster v8 in a debug build.
|
| - # TODO(2304): pass DISABLE_DEBUG_ASSERT instead of hiding DEBUG.
|
| - 'defines!': [
|
| - 'DEBUG',
|
| - 'ENABLE_SLOW_DCHECKS',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - # TODO(pcc): Re-enable in LTO builds once we've fixed the intermittent
|
| - # link failures (crbug.com/513074).
|
| - ['linux_use_gold_flags==1 and use_lto==0', {
|
| - 'target_conditions': [
|
| - ['_toolset=="target"', {
|
| - 'ldflags': [
|
| - # Experimentation found that using four linking threads
|
| - # saved ~20% of link time.
|
| - # https://groups.google.com/a/chromium.org/group/chromium-dev/browse_thread/thread/281527606915bb36
|
| - # Only apply this to the target linker, since the host
|
| - # linker might not be gold, but isn't used much anyway.
|
| - '-Wl,--threads',
|
| - '-Wl,--thread-count=4',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ],
|
| - }, # DebugBaseCommon
|
| - 'Debug': {
|
| - 'inherit_from': ['DebugBaseCommon'],
|
| - 'conditions': [
|
| - ['v8_optimized_debug==0', {
|
| - 'inherit_from': ['DebugBase0'],
|
| - }, {
|
| - 'inherit_from': ['DebugBase1'],
|
| - }],
|
| - ],
|
| - }, # Debug
|
| - 'ReleaseBase': {
|
| - 'abstract': 1,
|
| - 'variables': {
|
| - 'v8_enable_slow_dchecks%': 0,
|
| - },
|
| - 'conditions': [
|
| - ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd" \
|
| - or OS=="aix"', {
|
| - 'cflags!': [
|
| - '-Os',
|
| - ],
|
| - 'cflags': [
|
| - '-fdata-sections',
|
| - '-ffunction-sections',
|
| - '<(wno_array_bounds)',
|
| - ],
|
| - 'conditions': [
|
| - # TODO(crbug.com/272548): Avoid -O3 in NaCl
|
| - # Don't use -O3 with sanitizers.
|
| - ['nacl_target_arch=="none" and asan==0 and msan==0 and lsan==0 \
|
| - and tsan==0 and ubsan==0 and ubsan_vptr==0', {
|
| - 'cflags': ['-O3'],
|
| - 'cflags!': ['-O2'],
|
| - }, {
|
| - 'cflags': ['-O2'],
|
| - 'cflags!': ['-O3'],
|
| - }],
|
| - ],
|
| - }],
|
| - ['OS=="android"', {
|
| - 'cflags!': [
|
| - '-O3',
|
| - '-Os',
|
| - ],
|
| - 'cflags': [
|
| - '-fdata-sections',
|
| - '-ffunction-sections',
|
| - '-O2',
|
| - ],
|
| - }],
|
| - ['OS=="mac"', {
|
| - 'xcode_settings': {
|
| - 'GCC_OPTIMIZATION_LEVEL': '3', # -O3
|
| -
|
| - # -fstrict-aliasing. Mainline gcc
|
| - # enables this at -O2 and above,
|
| - # but Apple gcc does not unless it
|
| - # is specified explicitly.
|
| - 'GCC_STRICT_ALIASING': 'YES',
|
| - },
|
| - }], # OS=="mac"
|
| - ['OS=="win"', {
|
| - 'msvs_settings': {
|
| - 'VCCLCompilerTool': {
|
| - 'Optimization': '2',
|
| - 'InlineFunctionExpansion': '2',
|
| - 'EnableIntrinsicFunctions': 'true',
|
| - 'FavorSizeOrSpeed': '0',
|
| - 'StringPooling': 'true',
|
| - 'conditions': [
|
| - ['component=="shared_library"', {
|
| - 'RuntimeLibrary': '2', #/MD
|
| - }, {
|
| - 'RuntimeLibrary': '0', #/MT
|
| - }],
|
| - ],
|
| - },
|
| - 'VCLinkerTool': {
|
| - 'LinkIncremental': '1',
|
| - 'OptimizeReferences': '2',
|
| - 'EnableCOMDATFolding': '2',
|
| - },
|
| - },
|
| - }], # OS=="win"
|
| - ['v8_enable_slow_dchecks==1', {
|
| - 'defines': [
|
| - 'ENABLE_SLOW_DCHECKS',
|
| - ],
|
| - }],
|
| - ], # conditions
|
| - }, # Release
|
| - 'Release': {
|
| - 'inherit_from': ['ReleaseBase'],
|
| - }, # Debug
|
| - 'conditions': [
|
| - [ 'OS=="win"', {
|
| - # TODO(bradnelson): add a gyp mechanism to make this more graceful.
|
| - 'Debug_x64': {
|
| - 'inherit_from': ['DebugBaseCommon'],
|
| - 'conditions': [
|
| - ['v8_optimized_debug==0', {
|
| - 'inherit_from': ['DebugBase0'],
|
| - }, {
|
| - 'inherit_from': ['DebugBase1'],
|
| - }],
|
| - ],
|
| - },
|
| - 'Release_x64': {
|
| - 'inherit_from': ['ReleaseBase'],
|
| - },
|
| - }],
|
| - ],
|
| - }, # configurations
|
| - }, # target_defaults
|
| -}
|
|
|