firefox-56.0.2:ver.bump
This commit is contained in:
Executable
+117
@@ -0,0 +1,117 @@
|
||||
From 2874ecd82e9671f774bdfda41fe0857fcb916c13 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <2874ecd82e9671f774bdfda41fe0857fcb916c13.1506634385.git.jan.steffens@gmail.com>
|
||||
From: Mike Hommey <mh+mozilla@glandium.org>
|
||||
Date: Wed, 16 Aug 2017 13:16:16 +0900
|
||||
Subject: [PATCH] Bug 1384062 - Make SystemResourceMonitor.stop more resilient
|
||||
to errors. r=ahal,gps
|
||||
|
||||
The poll() call in SystemResourceMonitor.stop might fail even though
|
||||
there is something to read from the pipe, in some corner cases, and
|
||||
python won't let us know about it. In that case, an exception is thrown,
|
||||
leaving the SystemResourceMonitor (and its callers) in a weird state. In
|
||||
practice, this leads BuildMonitor.__exit__ to recall stop, which then
|
||||
fails.
|
||||
|
||||
So when poll() throws an exception, we pretend there's still something
|
||||
to read, and we try to read anyways. If there is something to read,
|
||||
recv() will return it, otherwise, it will throw an exception of its own,
|
||||
which we catch, pretending we're done.
|
||||
|
||||
Furthermore, when there is nothing to read from the pipe, poll() simply
|
||||
returns False, and our loop never sets `done` to True, and we then hit
|
||||
an assert, which doesn't have its place here, so we remove it.
|
||||
|
||||
Finally, the other end of the pipe might have died at any time, making
|
||||
sending over the pipe fail, so we also protect against that.
|
||||
|
||||
With all these changes, it feels like the reason to backout bug 1239939
|
||||
in bug 1272782 should have been dealt with, and we can drop the timeout
|
||||
again.
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : ac72dd5b2602cf3ffddfb429f95e02380f939893
|
||||
---
|
||||
.../mozsystemmonitor/resourcemonitor.py | 38 +++++++++++++++-------
|
||||
1 file changed, 26 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py b/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py
|
||||
index 8f2ac95cbe505540..38f9bc986ac2a120 100644
|
||||
--- a/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py
|
||||
+++ b/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py
|
||||
@@ -289,47 +289,61 @@ class SystemResourceMonitor(object):
|
||||
assert self._running
|
||||
assert not self._stopped
|
||||
|
||||
- self._pipe.send(('terminate',))
|
||||
+ try:
|
||||
+ self._pipe.send(('terminate',))
|
||||
+ except Exception:
|
||||
+ pass
|
||||
self._running = False
|
||||
self._stopped = True
|
||||
|
||||
self.measurements = []
|
||||
|
||||
- done = False
|
||||
-
|
||||
# The child process will send each data sample over the pipe
|
||||
# as a separate data structure. When it has finished sending
|
||||
# samples, it sends a special "done" message to indicate it
|
||||
# is finished.
|
||||
- while self._pipe.poll(1.0):
|
||||
- start_time, end_time, io_diff, cpu_diff, cpu_percent, virt_mem, \
|
||||
- swap_mem = self._pipe.recv()
|
||||
+
|
||||
+ # multiprocessing.Pipe is not actually a pipe on at least Linux. that
|
||||
+ # has an effect on the expected outcome of reading from it when the
|
||||
+ # other end of the pipe dies, leading to possibly hanging on revc()
|
||||
+ # below. So we must poll().
|
||||
+ def poll():
|
||||
+ try:
|
||||
+ return self._pipe.poll(0.1)
|
||||
+ except Exception:
|
||||
+ # Poll might throw an exception even though there's still
|
||||
+ # data to read. That happens when the underlying system call
|
||||
+ # returns both POLLERR and POLLIN, but python doesn't tell us
|
||||
+ # about it. So assume there is something to read, and we'll
|
||||
+ # get an exception when trying to read the data.
|
||||
+ return True
|
||||
+ while poll():
|
||||
+ try:
|
||||
+ start_time, end_time, io_diff, cpu_diff, cpu_percent, virt_mem, \
|
||||
+ swap_mem = self._pipe.recv()
|
||||
+ except Exception:
|
||||
+ # Let's assume we're done here
|
||||
+ break
|
||||
|
||||
# There should be nothing after the "done" message so
|
||||
# terminate.
|
||||
if start_time == 'done':
|
||||
- done = True
|
||||
break
|
||||
|
||||
io = self._io_type(*io_diff)
|
||||
virt = self._virt_type(*virt_mem)
|
||||
swap = self._swap_type(*swap_mem)
|
||||
cpu_times = [self._cpu_times_type(*v) for v in cpu_diff]
|
||||
|
||||
self.measurements.append(SystemResourceUsage(start_time, end_time,
|
||||
cpu_times, cpu_percent, io, virt, swap))
|
||||
|
||||
# We establish a timeout so we don't hang forever if the child
|
||||
# process has crashed.
|
||||
self._process.join(10)
|
||||
if self._process.is_alive():
|
||||
self._process.terminate()
|
||||
self._process.join(10)
|
||||
- else:
|
||||
- # We should have received a "done" message from the
|
||||
- # child indicating it shut down properly. This only
|
||||
- # happens if the child shuts down cleanly.
|
||||
- assert done
|
||||
|
||||
if len(self.measurements):
|
||||
self.start_time = self.measurements[0].start
|
||||
--
|
||||
2.14.2
|
||||
|
||||
@@ -0,0 +1,258 @@
|
||||
From 6a0b7c8ecf0734ba1bcdccf8e0ee97e721fd5420 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <6a0b7c8ecf0734ba1bcdccf8e0ee97e721fd5420.1505113337.git.jan.steffens@gmail.com>
|
||||
From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= <emilio@crisal.io>
|
||||
Date: Sat, 19 Aug 2017 20:14:25 +0200
|
||||
Subject: [PATCH] Fix use of struct ucontext (squash 2 commits)
|
||||
|
||||
Needed for building with glibc 2.26.
|
||||
|
||||
Bug 1385667: Use ucontext_t consistently in breakpad-client. r=ted
|
||||
MozReview-Commit-ID: AJhzJdNXP0f
|
||||
|
||||
Bug 1394149: Fix remaining uses of ucontext in breakpad-client. r=ted
|
||||
MozReview-Commit-ID: 5tP7fXsI7dQ
|
||||
---
|
||||
.../linux/dump_writer_common/ucontext_reader.cc | 30 +++++++++++-----------
|
||||
.../linux/dump_writer_common/ucontext_reader.h | 10 ++++----
|
||||
.../linux/handler/exception_handler.cc | 10 ++++----
|
||||
.../linux/handler/exception_handler.h | 2 +-
|
||||
.../linux/microdump_writer/microdump_writer.cc | 2 +-
|
||||
.../linux/minidump_writer/minidump_writer.cc | 2 +-
|
||||
6 files changed, 28 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
|
||||
index 999960912e459e1b..303c0ebd32b663c4 100644
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
|
||||
@@ -40,15 +40,15 @@ namespace google_breakpad {
|
||||
|
||||
#if defined(__i386__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_ESP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_EIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
|
||||
#elif defined(__x86_64)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RSP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fpregs) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
|
||||
#elif defined(__ARM_EABI__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
out->context_flags = MD_CONTEXT_ARM_FULL;
|
||||
|
||||
out->iregs[0] = uc->uc_mcontext.arm_r0;
|
||||
@@ -184,41 +184,41 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
|
||||
#elif defined(__aarch64__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs) {
|
||||
out->context_flags = MD_CONTEXT_ARM64_FULL;
|
||||
|
||||
out->cpsr = static_cast<uint32_t>(uc->uc_mcontext.pstate);
|
||||
for (int i = 0; i < MD_CONTEXT_ARM64_REG_SP; ++i)
|
||||
out->iregs[i] = uc->uc_mcontext.regs[i];
|
||||
out->iregs[MD_CONTEXT_ARM64_REG_SP] = uc->uc_mcontext.sp;
|
||||
out->iregs[MD_CONTEXT_ARM64_REG_PC] = uc->uc_mcontext.pc;
|
||||
|
||||
out->float_save.fpsr = fpregs->fpsr;
|
||||
out->float_save.fpcr = fpregs->fpcr;
|
||||
my_memcpy(&out->float_save.regs, &fpregs->vregs,
|
||||
MD_FLOATINGSAVEAREA_ARM64_FPR_COUNT * 16);
|
||||
}
|
||||
|
||||
#elif defined(__mips__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
#if _MIPS_SIM == _ABI64
|
||||
out->context_flags = MD_CONTEXT_MIPS64_FULL;
|
||||
#elif _MIPS_SIM == _ABIO32
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
|
||||
index c533e28ba7441e83..039752a2dfb6e589 100644
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
|
||||
@@ -41,21 +41,21 @@ namespace google_breakpad {
|
||||
|
||||
// Wraps platform-dependent implementations of accessors to ucontext structs.
|
||||
struct UContextReader {
|
||||
- static uintptr_t GetStackPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetStackPointer(const ucontext_t* uc);
|
||||
|
||||
- static uintptr_t GetInstructionPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetInstructionPointer(const ucontext_t* uc);
|
||||
|
||||
// Juggle a arch-specific ucontext into a minidump format
|
||||
// out: the minidump structure
|
||||
// info: the collection of register structures.
|
||||
#if defined(__i386__) || defined(__x86_64)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp);
|
||||
#elif defined(__aarch64__)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs);
|
||||
#else
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc);
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
|
||||
#endif
|
||||
};
|
||||
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
|
||||
index 71a51a763938e39d..12df9bc96ec45fea 100644
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
|
||||
@@ -439,44 +439,44 @@ bool ExceptionHandler::HandleSignal(int sig, siginfo_t* info, void* uc) {
|
||||
// Fill in all the holes in the struct to make Valgrind happy.
|
||||
memset(&g_crash_context_, 0, sizeof(g_crash_context_));
|
||||
memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t));
|
||||
- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext));
|
||||
+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t));
|
||||
#if defined(__aarch64__)
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
struct fpsimd_context* fp_ptr =
|
||||
(struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved;
|
||||
if (fp_ptr->head.magic == FPSIMD_MAGIC) {
|
||||
memcpy(&g_crash_context_.float_state, fp_ptr,
|
||||
sizeof(g_crash_context_.float_state));
|
||||
}
|
||||
#elif !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
// FP state is not part of user ABI on ARM Linux.
|
||||
- // In case of MIPS Linux FP state is already part of struct ucontext
|
||||
+ // In case of MIPS Linux FP state is already part of ucontext_t
|
||||
// and 'float_state' is not a member of CrashContext.
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
if (uc_ptr->uc_mcontext.fpregs) {
|
||||
memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs,
|
||||
sizeof(g_crash_context_.float_state));
|
||||
}
|
||||
#endif
|
||||
g_crash_context_.tid = syscall(__NR_gettid);
|
||||
if (crash_handler_ != NULL) {
|
||||
if (crash_handler_(&g_crash_context_, sizeof(g_crash_context_),
|
||||
callback_context_)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return GenerateDump(&g_crash_context_);
|
||||
}
|
||||
|
||||
// This is a public interface to HandleSignal that allows the client to
|
||||
// generate a crash dump. This function may run in a compromised context.
|
||||
bool ExceptionHandler::SimulateSignalDelivery(int sig) {
|
||||
siginfo_t siginfo = {};
|
||||
// Mimic a trusted signal to allow tracing the process (see
|
||||
// ExceptionHandler::HandleSignal().
|
||||
siginfo.si_code = SI_USER;
|
||||
siginfo.si_pid = getpid();
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
getcontext(&context);
|
||||
return HandleSignal(sig, &siginfo, &context);
|
||||
}
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
|
||||
index 711586fec7ddae59..be1880170e2826b0 100644
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
|
||||
@@ -191,7 +191,7 @@ class ExceptionHandler {
|
||||
struct CrashContext {
|
||||
siginfo_t siginfo;
|
||||
pid_t tid; // the crashing thread.
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
// #ifdef this out because FP state is not part of user ABI for Linux ARM.
|
||||
// In case of MIPS Linux FP state is already part of struct
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc b/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
|
||||
index ff20bf36584c876b..a0b90e08fc5f0cff 100644
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
|
||||
@@ -571,7 +571,7 @@ class MicrodumpWriter {
|
||||
|
||||
void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
|
||||
|
||||
- const struct ucontext* const ucontext_;
|
||||
+ const ucontext_t* const ucontext_;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_;
|
||||
#endif
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc b/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
|
||||
index 0650bb95c179464a..6b5304bcd605ca3a 100644
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
|
||||
@@ -1247,7 +1247,7 @@ class MinidumpWriter {
|
||||
const int fd_; // File descriptor where the minidum should be written.
|
||||
const char* path_; // Path to the file where the minidum should be written.
|
||||
|
||||
- const struct ucontext* const ucontext_; // also from the signal handler
|
||||
+ const ucontext_t* const ucontext_; // also from the signal handler
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_; // ditto
|
||||
#endif
|
||||
--
|
||||
2.14.1
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
diff -Nuar a/build/autoconf/icu.m4 b/build/autoconf/icu.m4
|
||||
--- a/build/autoconf/icu.m4 2017-09-14 23:15:53.000000000 +0300
|
||||
+++ b/build/autoconf/icu.m4 2017-11-13 11:43:54.054556747 +0300
|
||||
@@ -15,7 +15,7 @@
|
||||
MOZ_SYSTEM_ICU=1)
|
||||
|
||||
if test -n "$MOZ_SYSTEM_ICU"; then
|
||||
- PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 59.1)
|
||||
+ PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 58.2)
|
||||
CFLAGS="$CFLAGS $MOZ_ICU_CFLAGS"
|
||||
CXXFLAGS="$CXXFLAGS $MOZ_ICU_CFLAGS"
|
||||
fi
|
||||
diff -Nuar a/old-configure b/old-configure
|
||||
--- a/old-configure 2017-09-27 00:09:17.000000000 +0300
|
||||
+++ b/old-configure 2017-11-13 11:42:42.974561876 +0300
|
||||
@@ -17775,29 +17775,29 @@
|
||||
else
|
||||
PKG_CONFIG_MIN_VERSION=0.9.0
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
|
||||
- echo $ac_n "checking for icu-i18n >= 59.1""... $ac_c" 1>&6
|
||||
-echo "configure:17780: checking for icu-i18n >= 59.1" >&5
|
||||
+ echo $ac_n "checking for icu-i18n >= 58.2""... $ac_c" 1>&6
|
||||
+echo "configure:17780: checking for icu-i18n >= 58.2" >&5
|
||||
|
||||
- if $PKG_CONFIG --exists "icu-i18n >= 59.1" ; then
|
||||
+ if $PKG_CONFIG --exists "icu-i18n >= 58.2" ; then
|
||||
echo "$ac_t""yes" 1>&6
|
||||
succeeded=yes
|
||||
|
||||
echo $ac_n "checking MOZ_ICU_CFLAGS""... $ac_c" 1>&6
|
||||
echo "configure:17787: checking MOZ_ICU_CFLAGS" >&5
|
||||
- MOZ_ICU_CFLAGS=`$PKG_CONFIG --cflags "icu-i18n >= 59.1"`
|
||||
+ MOZ_ICU_CFLAGS=`$PKG_CONFIG --cflags "icu-i18n >= 58.2"`
|
||||
echo "$ac_t""$MOZ_ICU_CFLAGS" 1>&6
|
||||
|
||||
echo $ac_n "checking MOZ_ICU_LIBS""... $ac_c" 1>&6
|
||||
echo "configure:17792: checking MOZ_ICU_LIBS" >&5
|
||||
## Remove evil flags like -Wl,--export-dynamic
|
||||
- MOZ_ICU_LIBS="`$PKG_CONFIG --libs \"icu-i18n >= 59.1\" |sed s/-Wl,--export-dynamic//g`"
|
||||
+ MOZ_ICU_LIBS="`$PKG_CONFIG --libs \"icu-i18n >= 58.2\" |sed s/-Wl,--export-dynamic//g`"
|
||||
echo "$ac_t""$MOZ_ICU_LIBS" 1>&6
|
||||
else
|
||||
MOZ_ICU_CFLAGS=""
|
||||
MOZ_ICU_LIBS=""
|
||||
## If we have a custom action on failure, don't print errors, but
|
||||
## do set a variable so people can do so.
|
||||
- MOZ_ICU_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "icu-i18n >= 59.1"`
|
||||
+ MOZ_ICU_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "icu-i18n >= 58.2"`
|
||||
echo $MOZ_ICU_PKG_ERRORS
|
||||
fi
|
||||
|
||||
@@ -17813,7 +17813,7 @@
|
||||
:
|
||||
else
|
||||
if test "$COMPILE_ENVIRONMENT"; then
|
||||
- { echo "configure: error: Library requirements (icu-i18n >= 59.1) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." 1>&2; echo "configure: error: Library requirements (icu-i18n >= 59.1) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." 1>&5; exit 1; }
|
||||
+ { echo "configure: error: Library requirements (icu-i18n >= 58.2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." 1>&2; echo "configure: error: Library requirements (icu-i18n >= 58.2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." 1>&5; exit 1; }
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
diff -Nuar a/toolkit/moz.configure b/toolkit/moz.configure
|
||||
--- a/toolkit/moz.configure 2017-09-14 23:16:01.000000000 +0300
|
||||
+++ b/toolkit/moz.configure 2017-11-13 11:29:08.953620612 +0300
|
||||
@@ -649,6 +649,8 @@
|
||||
'llvm-config40',
|
||||
'llvm-config-3.9',
|
||||
'llvm-config39',
|
||||
+ 'llvm-config-3.8',
|
||||
+ 'llvm-config38',
|
||||
'llvm-config',
|
||||
]
|
||||
|
||||
@@ -699,7 +701,7 @@
|
||||
@imports(_from='textwrap', _import='dedent')
|
||||
def check_minimum_llvm_config_version(llvm_config):
|
||||
version = Version(invoke_llvm_config(llvm_config, '--version'))
|
||||
- min_version = Version('3.9.0')
|
||||
+ min_version = Version('3.8.0')
|
||||
if version < min_version:
|
||||
die(dedent('''\
|
||||
llvm installation {} is incompatible with Stylo bindgen.
|
||||
Regular → Executable
+7
-5
@@ -7,24 +7,26 @@ ac_add_options --enable-release
|
||||
ac_add_options --enable-official-branding
|
||||
|
||||
# System libraries
|
||||
ac_add_options --with-system-nspr
|
||||
ac_add_options --with-system-nss
|
||||
ac_add_options --with-system-icu
|
||||
#ac_add_options --with-system-nspr
|
||||
#ac_add_options --with-system-nss
|
||||
#ac_add_options --with-system-icu
|
||||
#ac_add_options --with-system-jpeg
|
||||
ac_add_options --with-system-zlib
|
||||
ac_add_options --with-system-bz2
|
||||
ac_add_options --with-system-libevent
|
||||
#ac_add_options --with-system-libevent
|
||||
#ac_add_options --with-system-libvpx
|
||||
ac_add_options --enable-system-hunspell
|
||||
ac_add_options --enable-system-ffi
|
||||
ac_add_options --enable-system-pixman
|
||||
#ac_add_options --enable-system-pixman
|
||||
ac_add_options --enable-system-sqlite
|
||||
#ac_add_options --enable-gstreamer=1.0
|
||||
#ac_add_options --disable-elf-hack
|
||||
|
||||
# Features
|
||||
ac_add_options --enable-startup-notification
|
||||
ac_add_options --disable-updater
|
||||
ac_add_options --disable-crashreporter
|
||||
ac_add_options --disable-stylo
|
||||
|
||||
# New MP4, etc
|
||||
#ac_add_options --disable-rust
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
diff --git i/security/nss/lib/freebl/mpi/mpi_x86.s w/security/nss/lib/freebl/mpi/mpi_x86.s
|
||||
index 8f7e2130c3264754..b3ca1ce5b41b3771 100644
|
||||
--- i/security/nss/lib/freebl/mpi/mpi_x86.s
|
||||
+++ w/security/nss/lib/freebl/mpi/mpi_x86.s
|
||||
@@ -22,22 +22,41 @@ is_sse: .long -1
|
||||
#
|
||||
.ifndef NO_PIC
|
||||
.macro GET var,reg
|
||||
- movl \var@GOTOFF(%ebx),\reg
|
||||
+ call thunk.ax
|
||||
+ addl $_GLOBAL_OFFSET_TABLE_, %eax
|
||||
+ movl \var@GOTOFF(%eax),\reg
|
||||
.endm
|
||||
.macro PUT reg,var
|
||||
- movl \reg,\var@GOTOFF(%ebx)
|
||||
+ call thunk.dx
|
||||
+ addl $_GLOBAL_OFFSET_TABLE_, %edx
|
||||
+ movl \reg,\var@GOTOFF(%edx)
|
||||
.endm
|
||||
.else
|
||||
.macro GET var,reg
|
||||
movl \var,\reg
|
||||
.endm
|
||||
.macro PUT reg,var
|
||||
movl \reg,\var
|
||||
.endm
|
||||
.endif
|
||||
|
||||
.text
|
||||
|
||||
+.ifndef NO_PIC
|
||||
+.globl thunk.ax
|
||||
+.hidden thunk.ax
|
||||
+.type thunk.ax, @function
|
||||
+thunk.ax:
|
||||
+ movl (%esp),%eax
|
||||
+ ret
|
||||
+
|
||||
+.globl thunk.dx
|
||||
+.hidden thunk.dx
|
||||
+.type thunk.dx, @function
|
||||
+thunk.dx:
|
||||
+ movl (%esp),%edx
|
||||
+ ret
|
||||
+.endif
|
||||
|
||||
# ebp - 36: caller's esi
|
||||
# ebp - 32: caller's edi
|
||||
@@ -0,0 +1,50 @@
|
||||
|
||||
# HG changeset patch
|
||||
# User Jan Steffens <jan.steffens@gmail.com>
|
||||
# Date 1505475854 -7200
|
||||
# Node ID 3cd2263687293a229277037090add3bea2531057
|
||||
# Parent 70f5f23a429f3d621e44307c191fa84c77fb2f61
|
||||
Bug 1400175 - Stub gdk_screen_get_monitor_workarea in mozgtk2; r?karlt
|
||||
|
||||
MozReview-Commit-ID: 72K6U17JuoK
|
||||
|
||||
diff --git a/widget/gtk/mozgtk/mozgtk.c b/widget/gtk/mozgtk/mozgtk.c
|
||||
--- a/widget/gtk/mozgtk/mozgtk.c
|
||||
+++ b/widget/gtk/mozgtk/mozgtk.c
|
||||
@@ -56,17 +56,16 @@
|
||||
STUB(gdk_screen_get_default)
|
||||
STUB(gdk_screen_get_display)
|
||||
STUB(gdk_screen_get_font_options)
|
||||
STUB(gdk_screen_get_height)
|
||||
STUB(gdk_screen_get_height_mm)
|
||||
STUB(gdk_screen_get_n_monitors)
|
||||
STUB(gdk_screen_get_monitor_at_window)
|
||||
STUB(gdk_screen_get_monitor_geometry)
|
||||
-STUB(gdk_screen_get_monitor_workarea)
|
||||
STUB(gdk_screen_get_monitor_height_mm)
|
||||
STUB(gdk_screen_get_number)
|
||||
STUB(gdk_screen_get_resolution)
|
||||
STUB(gdk_screen_get_rgba_visual)
|
||||
STUB(gdk_screen_get_root_window)
|
||||
STUB(gdk_screen_get_system_visual)
|
||||
STUB(gdk_screen_get_width)
|
||||
STUB(gdk_screen_height)
|
||||
@@ -514,16 +513,17 @@
|
||||
#ifdef GTK3_SYMBOLS
|
||||
STUB(gdk_device_get_source)
|
||||
STUB(gdk_device_manager_get_client_pointer)
|
||||
STUB(gdk_disable_multidevice)
|
||||
STUB(gdk_device_manager_list_devices)
|
||||
STUB(gdk_display_get_device_manager)
|
||||
STUB(gdk_error_trap_pop_ignored)
|
||||
STUB(gdk_event_get_source_device)
|
||||
+STUB(gdk_screen_get_monitor_workarea)
|
||||
STUB(gdk_window_get_type)
|
||||
STUB(gdk_window_get_window_type)
|
||||
STUB(gdk_x11_window_get_xid)
|
||||
STUB(gdk_x11_display_get_type)
|
||||
STUB(gdk_wayland_display_get_type)
|
||||
STUB(gtk_box_new)
|
||||
STUB(gtk_cairo_should_draw_window)
|
||||
STUB(gtk_cairo_transform_to_window)
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<IsA>app:gui</IsA>
|
||||
<Summary>Firefox Web Browser</Summary>
|
||||
<Description>It is more secure and faster to browse the web with Firefox web browser. You can personalize your web browser with many specifications that is not enough to explain in two sentences.</Description>
|
||||
<Archive sha1sum="8d9b0861ad71845d4b0e668f1981ec99e617ff36" type="tarxz">https://ftp.mozilla.org/pub/firefox/releases/55.0.3/source/firefox-55.0.3.source.tar.xz</Archive>
|
||||
<Archive sha1sum="1b7310adea833a7c74498505f1207416690c9748" type="tarxz">https://ftp.mozilla.org/pub/firefox/releases/56.0.2/source/firefox-56.0.2.source.tar.xz</Archive>
|
||||
<AdditionalFiles>
|
||||
<!--Our main configure script. Configure paramters are stored here.-->
|
||||
<AdditionalFile target=".mozconfig" permission="0644">mozconfig</AdditionalFile>
|
||||
@@ -55,7 +55,12 @@
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<Patch level="1">firefox-install-dir.patch</Patch>
|
||||
<!--Patch level="1">0001-Bug-1338655-Don-t-try-to-build-mp4parse-bindings.-r-.patch</Patch-->
|
||||
<Patch level="1">llvmversyon.patch</Patch>
|
||||
<Patch level="1">icu58.patch</Patch>
|
||||
<Patch level="1">0001-Bug-1384062-Make-SystemResourceMonitor.stop-more-res.patch</Patch>
|
||||
<Patch level="1">no-plt.diff</Patch>
|
||||
<Patch level="1">plugin-crash.diff</Patch>
|
||||
<Patch level="1">glibc-2.26-fix.diff</Patch>
|
||||
</Patches>
|
||||
</Source>
|
||||
|
||||
@@ -537,6 +542,13 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="8">
|
||||
<Date>2017-11-12</Date>
|
||||
<Version>56.0.2</Version>
|
||||
<Comment>Version Bump</Comment>
|
||||
<Name>Mustafa Cinasal</Name>
|
||||
<Email>muscnsl@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="7">
|
||||
<Date>2017-09-30</Date>
|
||||
<Version>55.0.3</Version>
|
||||
|
||||
Reference in New Issue
Block a user