diff options
| author | Florian Smeets <flo@FreeBSD.org> | 2012-10-10 21:13:06 +0000 |
|---|---|---|
| committer | Florian Smeets <flo@FreeBSD.org> | 2012-10-10 21:13:06 +0000 |
| commit | 98ff1f74fb3f09d69165fc711a54df23a7127a23 (patch) | |
| tree | 16010259bfe88bdd615bd9a206f3377ee212913d /mail/thunderbird/files/patch-bug791366 | |
| parent | - Remove double quotes from *_DESC (diff) | |
- Update firefox-esr, thunderbird-esr, linux-firefox and linux-thunderbird to 10.0.8
- Update firefox and thunderbird to 16.0
- Update seamonkey to 2.13
- Update all -i18n ports respectively
- switch firefox 16.0 and seamonkey 2.13 to ALSA by default for better
latency during pause and seeking with HTML5 video
- remove fedisableexcept() hacks, obsolete since FreeBSD 4.0
- support system hunspell dictionaries [1]
- unbreak -esr ports with clang3.2 [2]
- unbreak nss build when CC contains full path [3]
- remove GNOME option grouping [4]
- integrate enigmail into thunderbird/seamonkey as an option [5]
- remove mail/enigmail* [6]
- enable ENIGMAIL, LIGHTNING and GIO options by default
- add more reporters in about:memory: page-faults-hard, page-faults-soft,
resident, vsize
- use bundled jemalloc 3.0.0 on FreeBSD < 10.0 for gecko 16.0,
only heap-allocated reporter works in about:memory (see bug 762445)
- use lrintf() instead of slow C cast in bundled libopus
- use libjpeg-turbo's faster color conversion if available during build
- record startup time for telemetry
- use -z origin instead of hardcoding path to gecko runtime
- fail early if incompatible libxul version is installed (in USE_GECKO)
- *miscellaneous cleanups and fixups*
PR: ports/171534 [1]
PR: ports/171566 [2]
PR: ports/172164 [3]
PR: ports/172201 [4]
Discussed with: ale, beat, Jan Beich [5]
Approved by: ale [6]
In collaboration with: Jan Beich <jbeich@tormail.org>
Security: 6e5a9afd-12d3-11e2-b47d-c8600054b392
Feature safe: yes
Approved by: portmgr (beat)
Diffstat (limited to 'mail/thunderbird/files/patch-bug791366')
| -rw-r--r-- | mail/thunderbird/files/patch-bug791366 | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/mail/thunderbird/files/patch-bug791366 b/mail/thunderbird/files/patch-bug791366 new file mode 100644 index 000000000000..90e9e523bbbe --- /dev/null +++ b/mail/thunderbird/files/patch-bug791366 @@ -0,0 +1,95 @@ +diff --git mozilla/xpcom/base/nsMemoryReporterManager.cpp mozilla/xpcom/base/nsMemoryReporterManager.cpp +index a9aff58..674e757 100644 +--- mozilla/xpcom/base/nsMemoryReporterManager.cpp ++++ mozilla/xpcom/base/nsMemoryReporterManager.cpp +@@ -32,7 +32,7 @@ using namespace mozilla; + # include "jemalloc.h" + #endif // MOZ_MEMORY + +-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(SOLARIS) ++#ifdef XP_UNIX + + #include <sys/time.h> + #include <sys/resource.h> +@@ -95,6 +95,81 @@ static nsresult GetResident(PRInt64 *n) + return GetProcSelfStatmField(1, n); + } + ++#elif defined(__DragonFly__) || defined(__FreeBSD__) \ ++ || defined(__NetBSD__) || defined(__OpenBSD__) ++ ++#include <sys/param.h> ++#include <sys/sysctl.h> ++#if defined(__DragonFly__) || defined(__FreeBSD__) ++#include <sys/user.h> ++#endif ++ ++#include <unistd.h> ++ ++#if defined(__NetBSD__) ++#undef KERN_PROC ++#define KERN_PROC KERN_PROC2 ++#define KINFO_PROC struct kinfo_proc2 ++#else ++#define KINFO_PROC struct kinfo_proc ++#endif ++ ++#if defined(__DragonFly__) ++#define KP_SIZE(kp) (kp.kp_vm_map_size) ++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize()) ++#elif defined(__FreeBSD__) ++#define KP_SIZE(kp) (kp.ki_size) ++#define KP_RSS(kp) (kp.ki_rssize * getpagesize()) ++#elif defined(__NetBSD__) ++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize()) ++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize()) ++#elif defined(__OpenBSD__) ++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \ ++ + kp.p_vm_tsize) * getpagesize()) ++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize()) ++#endif ++ ++static nsresult GetKinfoProcSelf(KINFO_PROC *proc) ++{ ++ int mib[] = { ++ CTL_KERN, ++ KERN_PROC, ++ KERN_PROC_PID, ++ getpid(), ++#if defined(__NetBSD__) || defined(__OpenBSD__) ++ sizeof(KINFO_PROC), ++ 1, ++#endif ++ }; ++ u_int miblen = sizeof(mib) / sizeof(mib[0]); ++ size_t size = sizeof(KINFO_PROC); ++ if (sysctl(mib, miblen, proc, &size, NULL, 0)) ++ return NS_ERROR_FAILURE; ++ ++ return NS_OK; ++} ++ ++#define HAVE_VSIZE_AND_RESIDENT_REPORTERS 1 ++static nsresult GetVsize(PRInt64 *n) ++{ ++ KINFO_PROC proc; ++ nsresult rv = GetKinfoProcSelf(&proc); ++ if (NS_SUCCEEDED(rv)) ++ *n = KP_SIZE(proc); ++ ++ return rv; ++} ++ ++static nsresult GetResident(PRInt64 *n) ++{ ++ KINFO_PROC proc; ++ nsresult rv = GetKinfoProcSelf(&proc); ++ if (NS_SUCCEEDED(rv)) ++ *n = KP_RSS(proc); ++ ++ return rv; ++} ++ + #elif defined(SOLARIS) + + #include <procfs.h> |
