Skip to content

Commit 223607c

Browse files
committed
build: fix arm build after v8 upgrade
V8 was upgraded to 3.18 in commit 9f68226. The knobs that control the ARM build have changed in a number of ways. This commit patches the configure script to reflect that. Should fix the Raspberry Pi build. Fixes #5329.
1 parent 0bccb34 commit 223607c

File tree

1 file changed

+7
-13
lines changed

1 file changed

+7
-13
lines changed

configure

+7-13
Original file line numberDiff line numberDiff line change
@@ -341,7 +341,7 @@ def is_arm_neon():
341341
return '__ARM_NEON__' in cc_macros()
342342

343343

344-
def arm_hard_float_abi():
344+
def is_arm_hard_float_abi():
345345
"""Check for hardfloat or softfloat eabi on ARM"""
346346
# GCC versions 4.6 and above define __ARM_PCS or __ARM_PCS_VFP to specify
347347
# the Floating Point ABI used (PCS stands for Procedure Call Standard).
@@ -421,21 +421,15 @@ def compiler_version():
421421

422422

423423
def configure_arm(o):
424-
# V8 on ARM requires that armv7 is set. CPU Model detected by
425-
# the presence of __ARM_ARCH_7__ and the like defines in compiler
426424
if options.arm_float_abi:
427-
hard_float = options.arm_float_abi == 'hard'
425+
arm_float_abi = options.arm_float_abi
428426
else:
429-
hard_float = arm_hard_float_abi()
430-
431-
armv7 = is_arch_armv7()
432-
# CHECKME VFPv3 implies ARMv7+ but is the reverse true as well?
433-
fpu = 'vfpv3' if armv7 else 'vfpv2'
434-
435-
o['variables']['armv7'] = int(armv7)
436-
o['variables']['arm_fpu'] = fpu
427+
arm_float_abi = 'hard' if is_arm_hard_float_abi() else 'default'
428+
o['variables']['armv7'] = int(is_arch_armv7())
429+
o['variables']['arm_fpu'] = 'vfpv3' # V8 3.18 no longer supports VFP2.
437430
o['variables']['arm_neon'] = int(is_arm_neon())
438-
o['variables']['v8_use_arm_eabi_hardfloat'] = b(hard_float)
431+
o['variables']['arm_thumb'] = 0 # -marm
432+
o['variables']['arm_float_abi'] = arm_float_abi
439433

440434

441435
def configure_node(o):

0 commit comments

Comments
 (0)