[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#959144: mozjs68: Build-depends on cargo and rustc but doesn't actually use it



Control: tags -1 +patch

Hi!

The attached patch removes the checks for the LLVM and Rust toolchains from
the build system and allows to build mozjs68 without LLVM and Rust in the
build dependencies. With the patch applied, it should be possible to drop the
patch Bug-1545437-Add-options-to-specify-Rust-target-name.patch.

Tested on both Debian and openSUSE [1].

Adrian

> [1] https://build.opensuse.org/package/show/home:glaubitz:branches:mozilla:Factory/mozjs68

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
Description: Remove unused LLVM and Rust build dependencies
 Since the Javascript engine is normally part of Firefox, its build
 system has dependencies on the LLVM and Rust toolchains. This limits
 the number of architectures which mozjs68 can be built on.
 .
 It turns out, however, that neither LLVM nor Rust are used when mozjs68
 is being built and these build dependencies are therefore not necessary.
 .
 This patch removes them and allows mozjs68 to be built on any architecture.
 .
Author: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=959144
Forwarded: no
Last-Update: 2020-04-30

Index: mozjs68-68.6.0/js/moz.configure
===================================================================
--- mozjs68-68.6.0.orig/js/moz.configure
+++ mozjs68-68.6.0/js/moz.configure
@@ -18,11 +18,6 @@ def building_js(build_project):
 option(env='JS_STANDALONE', default=building_js,
        help='Reserved for internal use')
 
-include('../build/moz.configure/rust.configure',
-        when='--enable-compile-environment')
-include('../build/moz.configure/bindgen.configure',
-        when='--enable-compile-environment')
-
 @depends('JS_STANDALONE')
 def js_standalone(value):
     if value:
Index: mozjs68-68.6.0/moz.configure
===================================================================
--- mozjs68-68.6.0.orig/moz.configure
+++ mozjs68-68.6.0/moz.configure
@@ -598,36 +598,6 @@ set_config('MAKENSISU_FLAGS', nsis_flags
 
 check_prog('7Z', ('7z', '7za'), allow_missing=True, when=target_is_windows)
 
-
-@depends(host_c_compiler, c_compiler, bindgen_config_paths)
-def llvm_objdump(host_c_compiler, c_compiler, bindgen_config_paths):
-    clang = None
-    for compiler in (host_c_compiler, c_compiler):
-        if compiler and compiler.type == 'clang':
-            clang = compiler.compiler
-            break
-        elif compiler and compiler.type == 'clang-cl':
-            clang = os.path.join(os.path.dirname(compiler.compiler), 'clang')
-            break
-
-    if not clang and bindgen_config_paths:
-        clang = bindgen_config_paths.clang_path
-    llvm_objdump = 'llvm-objdump'
-    if clang:
-        out = check_cmd_output(clang, '--print-prog-name=llvm-objdump',
-                               onerror=lambda: None)
-        if out:
-            llvm_objdump = out.rstrip()
-    return (llvm_objdump,)
-
-
-llvm_objdump = check_prog('LLVM_OBJDUMP', llvm_objdump, what='llvm-objdump',
-                          when='--enable-compile-environment',
-                          paths=toolchain_search_path)
-
-add_old_configure_assignment('LLVM_OBJDUMP', llvm_objdump)
-
-
 # Please do not add configure checks from here on.
 
 # Fallthrough to autoconf-based configure

Reply to: