diff -Nru firefox-esr-60.3.0esr/debian/changelog firefox-esr-60.3.0esr/debian/changelog --- firefox-esr-60.3.0esr/debian/changelog 2018-10-23 22:08:43.000000000 +0000 +++ firefox-esr-60.3.0esr/debian/changelog 2018-12-05 06:56:52.000000000 +0000 @@ -1,3 +1,10 @@ +firefox-esr (60.3.0esr-1+rpi1) buster-staging; urgency=medium + * Hack broken rust target selection so it produces the right target + on raspbian. + * Fix clean target. + + -- Peter Michael Green Wed, 05 Dec 2018 06:56:52 +0000 + firefox-esr (60.3.0esr-1) unstable; urgency=medium * New upstream release. diff -Nru firefox-esr-60.3.0esr/debian/patches/raspbian-rust-triplet-hack.patch firefox-esr-60.3.0esr/debian/patches/raspbian-rust-triplet-hack.patch --- firefox-esr-60.3.0esr/debian/patches/raspbian-rust-triplet-hack.patch 1970-01-01 00:00:00.000000000 +0000 +++ firefox-esr-60.3.0esr/debian/patches/raspbian-rust-triplet-hack.patch 2018-12-05 06:56:52.000000000 +0000 @@ -0,0 +1,56 @@ +Description: Hack broken rust target selection so it produces the right target on raspbian. +Author: Peter Michael Green + +Index: firefox-esr-60.3.0esr.new/build/moz.configure/rust.configure +=================================================================== +--- firefox-esr-60.3.0esr.new.orig/build/moz.configure/rust.configure ++++ firefox-esr-60.3.0esr.new/build/moz.configure/rust.configure +@@ -111,6 +111,8 @@ def rust_compiler(rustc_info, cargo_info + + + @depends(rustc, when=rust_compiler) ++@imports('sys') ++@imports(_from='__builtin__', _import='repr') + def rust_supported_targets(rustc): + out = check_cmd_output(rustc, '--print', 'target-list').splitlines() + # The os in the triplets used by rust may match the same OSes, in which +@@ -118,9 +120,14 @@ def rust_supported_targets(rustc): + per_os = {} + ambiguous = set() + per_raw_os = {} ++ #HACK: if there are multiple matches the algorithm uses the last one ++ #put arm-unknown-linux-gnuebihf on the end of the list so it gets preffered ++ out.append('arm-unknown-linux-gnueabihf') + for t in out: ++ traw = t + t = split_triplet(t, allow_unknown=True) + key = (t.cpu, t.endianness, t.os) ++ sys.stdout.write(traw+' '+repr(key)+' '+repr(t.raw_os)+'\n') + if key in per_os: + previous = per_os[key] + per_raw_os[(previous.cpu, previous.endianness, +@@ -152,11 +159,13 @@ def rust_triple_alias(host_or_target): + @depends(rustc, host_or_target, c_compiler, rust_supported_targets, + when=rust_compiler) + @imports('os') ++ @imports('sys') + @imports('subprocess') + @imports(_from='mozbuild.configure.util', _import='LineIO') + @imports(_from='mozbuild.shellutil', _import='quote') + @imports(_from='tempfile', _import='mkstemp') + @imports(_from='textwrap', _import='dedent') ++ @imports(_from='__builtin__', _import='repr') + def rust_target(rustc, host_or_target, compiler_info, + rust_supported_targets): + # Rust's --target options are similar to, but not exactly the same +@@ -180,8 +189,9 @@ def rust_triple_alias(host_or_target): + + rustc_target = rust_supported_targets.per_os.get( + (host_or_target.cpu, host_or_target.endianness, host_or_target_os)) +- ++ #sys.stdout.write(host_or_target.cpu+'\n') + if rustc_target is None: ++ sys.stdout.write('using per_raw_os.get with tuple '+repr(((host_or_target.cpu, host_or_target.endianness,host_or_target_raw_os)))+'\n') + rustc_target = rust_supported_targets.per_raw_os.get( + (host_or_target.cpu, host_or_target.endianness, + host_or_target_raw_os)) diff -Nru firefox-esr-60.3.0esr/debian/patches/series firefox-esr-60.3.0esr/debian/patches/series --- firefox-esr-60.3.0esr/debian/patches/series 2018-10-23 22:06:14.000000000 +0000 +++ firefox-esr-60.3.0esr/debian/patches/series 2018-12-05 06:56:52.000000000 +0000 @@ -28,3 +28,4 @@ debian-hacks/Only-build-webrtc-neon-on-aarch64.patch debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch +raspbian-rust-triplet-hack.patch diff -Nru firefox-esr-60.3.0esr/debian/rules firefox-esr-60.3.0esr/debian/rules --- firefox-esr-60.3.0esr/debian/rules 2018-10-23 22:08:03.000000000 +0000 +++ firefox-esr-60.3.0esr/debian/rules 2018-12-05 06:56:52.000000000 +0000 @@ -260,6 +260,10 @@ rm -f $(filter-out debian/control,$(GENERATED_FILES)) rm -f configure js/src/configure old-configure js/src/old-configure rm -rf stamps l10n + find third_party/python/psutil/tmp/ ! -name 'tmpoJXh06.o' -type f -exec rm -f {} + + rm -f third_party/python/psutil/psutil/*.so + rm -rf third_party/python/psutil/build/temp* + rm -rf third_party/python/psutil/build/lib* debian/rules debian/control TESTDIR= ifeq ($(DEB_HOST_ARCH_ENDIAN),big) @@ -275,6 +279,7 @@ sed -i '2!b;/^exec "/ d' $$dir/$$file; \ done; \ done + rm -rf build-browser override_dh_clean: dh_clean -XCargo.toml.orig