Skip to content

Commit

Permalink
build: remove mips support
Browse files Browse the repository at this point in the history
Upstream V8 is dropping support for mips/mipsel/mips64/mips64el.
This commit removes the build flags from the configure script
and some loose ends from the documentation.

PR-URL: nodejs#26192
Fixes: nodejs#26179
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
  • Loading branch information
bnoordhuis authored and danbev committed Feb 22, 2019
1 parent eb9e6c0 commit 9334e45
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 47 deletions.
45 changes: 1 addition & 44 deletions configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,13 +45,10 @@

valid_os = ('win', 'mac', 'solaris', 'freebsd', 'openbsd', 'linux',
'android', 'aix', 'cloudabi')
valid_arch = ('arm', 'arm64', 'ia32', 'mips', 'mipsel', 'mips64el', 'ppc',
valid_arch = ('arm', 'arm64', 'ia32', 'ppc',
'ppc64', 'x32','x64', 'x86', 'x86_64', 's390', 's390x')
valid_arm_float_abi = ('soft', 'softfp', 'hard')
valid_arm_fpu = ('vfp', 'vfpv3', 'vfpv3-d16', 'neon')
valid_mips_arch = ('loongson', 'r1', 'r2', 'r6', 'rx')
valid_mips_fpu = ('fp32', 'fp64', 'fpxx')
valid_mips_float_abi = ('soft', 'hard')
valid_intl_modes = ('none', 'small-icu', 'full-icu', 'system-icu')
with open ('tools/icu/icu_versions.json') as f:
icu_versions = json.load(f)
Expand Down Expand Up @@ -368,30 +365,6 @@
help='ARM FPU mode ({0}) [default: %default]'.format(
', '.join(valid_arm_fpu)))

parser.add_option('--with-mips-arch-variant',
action='store',
dest='mips_arch_variant',
default='r2',
choices=valid_mips_arch,
help='MIPS arch variant ({0}) [default: %default]'.format(
', '.join(valid_mips_arch)))

parser.add_option('--with-mips-fpu-mode',
action='store',
dest='mips_fpu_mode',
default='fp32',
choices=valid_mips_fpu,
help='MIPS FPU mode ({0}) [default: %default]'.format(
', '.join(valid_mips_fpu)))

parser.add_option('--with-mips-float-abi',
action='store',
dest='mips_float_abi',
default='hard',
choices=valid_mips_float_abi,
help='MIPS floating-point ABI ({0}) [default: %default]'.format(
', '.join(valid_mips_float_abi)))

parser.add_option('--with-dtrace',
action='store_true',
dest='with_dtrace',
Expand Down Expand Up @@ -851,8 +824,6 @@ def host_arch_cc():
'__aarch64__' : 'arm64',
'__arm__' : 'arm',
'__i386__' : 'ia32',
'__MIPSEL__' : 'mipsel',
'__mips__' : 'mips',
'__PPC64__' : 'ppc64',
'__PPC__' : 'ppc64',
'__x86_64__' : 'x64',
Expand All @@ -868,9 +839,6 @@ def host_arch_cc():
if rtn != 's390':
break

if rtn == 'mipsel' and '_LP64' in k:
rtn = 'mips64el'

return rtn


Expand All @@ -884,7 +852,6 @@ def host_arch_win():
'AMD64' : 'x64',
'x86' : 'ia32',
'arm' : 'arm',
'mips' : 'mips',
}

return matchup.get(arch, 'ia32')
Expand Down Expand Up @@ -916,14 +883,6 @@ def configure_arm(o):
o['variables']['arm_fpu'] = options.arm_fpu or arm_fpu


def configure_mips(o):
can_use_fpu_instructions = (options.mips_float_abi != 'soft')
o['variables']['v8_can_use_fpu_instructions'] = b(can_use_fpu_instructions)
o['variables']['v8_use_mips_abi_hardfloat'] = b(can_use_fpu_instructions)
o['variables']['mips_arch_variant'] = options.mips_arch_variant
o['variables']['mips_fpu_mode'] = options.mips_fpu_mode


def gcc_version_ge(version_checked):
for compiler in [(CC, 'c'), (CXX, 'c++')]:
ok, is_clang, clang_version, compiler_version = \
Expand Down Expand Up @@ -963,8 +922,6 @@ def configure_node(o):

if target_arch == 'arm':
configure_arm(o)
elif target_arch in ('mips', 'mipsel', 'mips64el'):
configure_mips(o)

if flavor == 'aix':
o['variables']['node_target_type'] = 'static_library'
Expand Down
4 changes: 2 additions & 2 deletions doc/api/process.md
Original file line number Diff line number Diff line change
Expand Up @@ -528,8 +528,8 @@ added: v0.5.0
The `process.arch` property returns a string identifying the operating system
CPU architecture for which the Node.js binary was compiled.

The current possible values are: `'arm'`, `'arm64'`, `'ia32'`, `'mips'`,
`'mipsel'`, `'ppc'`, `'ppc64'`, `'s390'`, `'s390x'`, `'x32'`, and `'x64'`.
The current possible values are: `'arm'`, `'arm64'`, `'ia32'`,
`'ppc'`, `'ppc64'`, `'s390'`, `'s390x'`, `'x32'`, and `'x64'`.

```js
console.log(`This processor architecture is ${process.arch}`);
Expand Down
2 changes: 1 addition & 1 deletion doc/onboarding-extras.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,5 +81,5 @@ need to be attached anymore, as only important bugfixes will be included.
* `macos`, `windows`, `smartos`, `aix`
* No linux, linux is the implied default
* Architecture labels
* `arm`, `mips`, `s390`, `ppc`
* `arm`, `s390`, `ppc`
* No x86{_64}, since that is the implied default

0 comments on commit 9334e45

Please sign in to comment.