firefox-esr: update to 45.1.0 (#4095)

This commit is contained in:
yopito 2016-04-29 07:44:49 +02:00 committed by Juan RP
parent 7c20fd01aa
commit f28493e723
12 changed files with 139 additions and 268 deletions

View File

@ -1,5 +1,5 @@
--- config/baseconfig.mk.orig 2014-04-28 23:05:04.491525412 +0200
+++ config/baseconfig.mk 2014-04-28 23:05:39.922751247 +0200
--- config/baseconfig.mk.orig 2016-03-09 19:02:40.438986365 +0100
+++ config/baseconfig.mk 2016-03-09 19:03:07.492984916 +0100
@@ -2,10 +2,10 @@
# directly in python/mozbuild/mozbuild/base.py for gmake validation.
# We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending
@ -12,6 +12,6 @@
+idldir = $(datadir)/idl/$(MOZ_APP_NAME)
+installdir = $(libdir)/$(MOZ_APP_NAME)
+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel
ifndef TOP_DIST
TOP_DIST = dist
endif
ifeq (.,$(DEPTH))
DIST = dist
else

View File

@ -1,55 +0,0 @@
--- ipc/chromium/src/base/file_util.h
+++ ipc/chromium/src/base/file_util.h
@@ -14,10 +14,15 @@
#include <windows.h>
#elif defined(ANDROID)
#include <sys/stat.h>
+#define NO_FTS
#elif defined(OS_POSIX)
#include <sys/types.h>
-#include <fts.h>
#include <sys/stat.h>
+#ifdef __GLIBC__
+#include <fts.h>
+#else
+#define NO_FTS
+#endif
#endif
#include <stdio.h>
--- ipc/chromium/src/base/file_util_posix.cc
+++ ipc/chromium/src/base/file_util_posix.cc
@@ -8,13 +8,13 @@
#include <errno.h>
#include <fcntl.h>
#include <fnmatch.h>
-#ifndef ANDROID
+#ifndef NO_FTS
#include <fts.h>
#endif
#include <libgen.h>
#include <stdio.h>
#include <string.h>
-#include <sys/errno.h>
+#include <errno.h>
#include <sys/mman.h>
#define _DARWIN_USE_64_BIT_INODE // Use 64-bit inode data structures
#include <sys/stat.h>
@@ -67,7 +67,7 @@
if (!recursive)
return (rmdir(path_str) == 0);
-#ifdef ANDROID
+#ifdef NO_FTS
// XXX Need ftsless impl for bionic
return false;
#else
@@ -140,7 +140,7 @@
return false;
}
-#ifdef ANDROID
+#ifdef NO_FTS
// XXX Need ftsless impl for bionic
return false;
#else

View File

@ -1,10 +0,0 @@
--- xpcom/io/nsLocalFileUnix.cpp.orig
+++ xpcom/io/nsLocalFileUnix.cpp
@@ -28,6 +28,7 @@
#define USE_LINUX_QUOTACTL
#include <sys/mount.h>
#include <sys/quota.h>
+#include <linux/fs.h>
#endif
#include "xpcom-private.h"

View File

@ -1,10 +0,0 @@
--- media.orig/mtransport/third_party/nICEr/src/stun/addrs.c
+++ media/mtransport/third_party/nICEr/src/stun/addrs.c
@@ -45,7 +45,6 @@
#include <sys/param.h>
#include <sys/socket.h>
#ifndef ANDROID
-#include <sys/sysctl.h>
#include <sys/syslog.h>
#else
#include <syslog.h>

View File

@ -1,37 +0,0 @@
--- netwerk.orig/sctp/src/netinet/sctp_os_userspace.h
+++ netwerk/sctp/src/netinet/sctp_os_userspace.h
@@ -400,11 +400,8 @@
};
#else /* !defined(Userspace_os_Windows) */
-#include <sys/cdefs.h> /* needed? added from old __FreeBSD__ */
#include <sys/socket.h>
-#if defined(__Userspace_os_DragonFly) || defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_Linux) || defined(__Userspace_os_NetBSD) || defined(__Userspace_os_OpenBSD) || defined(ANDROID)
#include <pthread.h>
-#endif
typedef pthread_mutex_t userland_mutex_t;
typedef pthread_cond_t userland_cond_t;
typedef pthread_t userland_thread_t;
--- netwerk.orig/sctp/src/netinet/sctp_pcb.c
+++ netwerk/sctp/src/netinet/sctp_pcb.c
@@ -30,6 +30,9 @@
* THE POSSIBILITY OF SUCH DAMAGE.
*/
+#define _BSD_SOURCE /* for IPPORT_RESERVED */
+#include <netdb.h>
+
#ifdef __FreeBSD__
#include <sys/cdefs.h>
__FBSDID("$FreeBSD: head/sys/netinet/sctp_pcb.c 258765 2013-11-30 12:51:19Z tuexen $");
--- netwerk.orig/sctp/src/user_queue.h
+++ netwerk/sctp/src/user_queue.h
@@ -31,7 +31,7 @@
#ifndef _USER_QUEUE_H_
#define _USER_QUEUE_H_
-#if !defined (__Userspace_os_Windows)
+#if defined(__Userspace_os_FreeBSD)
#include <sys/cdefs.h>
#endif
/*

View File

@ -0,0 +1,14 @@
--- security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc.orig 2015-09-23 09:10:08.812740571 +0200
+++ security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc 2015-09-23 09:11:38.404746155 +0200
@@ -23,6 +23,11 @@
#include "sandbox/linux/services/android_ucontext.h"
#endif
+// musl libc defines siginfo_t __si_fields instead of _sifields
+#if defined(OS_LINUX) && !defined(__GLIBC__)
+#define _sifields __si_fields
+#endif
+
namespace {
struct arch_sigsys {

View File

@ -75,70 +75,3 @@
return rv;
}
--- toolkit.orig/xre/nsSigHandlers.cpp 2014-03-15 05:19:38.000000000 +0000
+++ toolkit/xre/nsSigHandlers.cpp 2014-04-17 10:24:33.796765327 +0000
@@ -15,6 +15,7 @@
#include <signal.h>
#include <stdio.h>
#include <string.h>
+#include <sys/types.h>
#include "prthread.h"
#include "plstr.h"
#include "prenv.h"
@@ -152,7 +153,7 @@
status->__invalid = status->__denorm = status->__zdiv = status->__ovrfl = status->__undfl =
status->__precis = status->__stkflt = status->__errsumm = 0;
- __uint32_t *mxcsr = &uc->uc_mcontext->__fs.__fpu_mxcsr;
+ u_int32_t *mxcsr = &uc->uc_mcontext->__fs.__fpu_mxcsr;
*mxcsr |= SSE_EXCEPTION_MASK; /* disable all SSE exceptions */
*mxcsr &= ~SSE_STATUS_FLAGS; /* clear all pending SSE exceptions */
#endif
@@ -172,13 +173,13 @@
*sw &= ~FPU_STATUS_FLAGS;
#endif
#if defined(__amd64__)
- __uint16_t *cw = &uc->uc_mcontext.fpregs->cwd;
+ u_int16_t *cw = &uc->uc_mcontext.fpregs->cwd;
*cw |= FPU_EXCEPTION_MASK;
- __uint16_t *sw = &uc->uc_mcontext.fpregs->swd;
+ u_int16_t *sw = &uc->uc_mcontext.fpregs->swd;
*sw &= ~FPU_STATUS_FLAGS;
- __uint32_t *mxcsr = &uc->uc_mcontext.fpregs->mxcsr;
+ u_int32_t *mxcsr = &uc->uc_mcontext.fpregs->mxcsr;
*mxcsr |= SSE_EXCEPTION_MASK; /* disable all SSE exceptions */
*mxcsr &= ~SSE_STATUS_FLAGS; /* clear all pending SSE exceptions */
#endif
@@ -187,24 +188,24 @@
ucontext_t *uc = (ucontext_t *)context;
#if defined(__i386)
- uint32_t *cw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[0];
+ u_int32_t *cw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[0];
*cw |= FPU_EXCEPTION_MASK;
- uint32_t *sw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[1];
+ u_int32_t *sw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[1];
*sw &= ~FPU_STATUS_FLAGS;
/* address of the instruction that caused the exception */
- uint32_t *ip = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[3];
+ u_int32_t *ip = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[3];
uc->uc_mcontext.gregs[REG_PC] = *ip;
#endif
#if defined(__amd64__)
- uint16_t *cw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.cw;
+ u_int16_t *cw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.cw;
*cw |= FPU_EXCEPTION_MASK;
- uint16_t *sw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.sw;
+ u_int16_t *sw = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.sw;
*sw &= ~FPU_STATUS_FLAGS;
- uint32_t *mxcsr = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.mxcsr;
+ u_int32_t *mxcsr = &uc->uc_mcontext.fpregs.fp_reg_set.fpchip_state.mxcsr;
*mxcsr |= SSE_EXCEPTION_MASK; /* disable all SSE exceptions */
*mxcsr &= ~SSE_STATUS_FLAGS; /* clear all pending SSE exceptions */
#endif

View File

@ -1,5 +1,5 @@
--- tools/profiler/local_debug_info_symbolizer.cc
+++ tools/profiler/local_debug_info_symbolizer.cc
--- tools/profiler/gecko/local_debug_info_symbolizer.cc
+++ tools/profiler/gecko/local_debug_info_symbolizer.cc
@@ -3,6 +3,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@ -8,19 +8,8 @@
#include "PlatformMacros.h"
#include "nsAutoPtr.h"
--- tools/profiler/platform-linux.cc
+++ tools/profiler/platform-linux.cc
@@ -84,7 +84,7 @@
#define SIGNAL_SAVE_PROFILE SIGUSR2
-#if defined(__GLIBC__)
+#if 1
// glibc doesn't implement gettid(2).
#include <sys/syscall.h>
pid_t gettid()
--- tools/profiler/platform.h
+++ tools/profiler/platform.h
--- tools/profiler/core/platform.h
+++ tools/profiler/core/platform.h
@@ -29,6 +29,8 @@
#ifndef TOOLS_PLATFORM_H_
#define TOOLS_PLATFORM_H_
@ -30,8 +19,8 @@
#ifdef ANDROID
#include <android/log.h>
#else
--- tools/profiler/LulElf.cpp
+++ tools/profiler/LulElf.cpp
--- tools/profiler/lul/LulElf.cpp
+++ tools/profiler/lul/LulElf.cpp
@@ -579,10 +579,10 @@
// Return the non-directory portion of FILENAME: the portion after the
// last slash, or the whole filename if there are no slashes.
@ -47,8 +36,8 @@
return base;
}
--- tools/profiler/platform-linux.cc.orig 2015-06-11 18:39:35.689739054 +0200
+++ tools/profiler/platform-linux.cc 2015-06-11 18:40:04.479706749 +0200
--- tools/profiler/core/platform-linux.cc.orig 2015-06-11 18:39:35.689739054 +0200
+++ tools/profiler/core/platform-linux.cc 2015-06-11 18:40:04.479706749 +0200
@@ -651,11 +651,13 @@ void OS::Startup() {
void TickSample::PopulateContext(void* aContext)
{
@ -63,3 +52,31 @@
}
void OS::SleepMicro(int microseconds)
--- tools/profiler/core/platform.h.orig 2015-11-04 18:27:58.170732586 +0100
+++ tools/profiler/core/platform.h 2015-11-04 18:29:11.898478051 +0100
@@ -60,9 +60,9 @@
#include "v8-support.h"
#include <vector>
-// We need a definition of gettid(), but glibc doesn't provide a
+// We need a definition of gettid(), but glibc nor musl don't provide a
// wrapper for it.
-#if defined(__GLIBC__)
+#if defined(__linux__)
#include <unistd.h>
#include <sys/syscall.h>
static inline pid_t gettid()
--- media/libav/config_unix.h.orig 2015-11-04 18:38:46.660289503 +0100
+++ media/libav/config_unix.h 2015-11-04 18:39:38.620814879 +0100
@@ -223,7 +223,11 @@
#define HAVE_STRERROR_R 1
#define HAVE_STRPTIME 1
#define HAVE_SYSCONF 1
+#if !defined(__linux__) || defined(__GLIBC__)
#define HAVE_SYSCTL 1
+#else
+#define HAVE_SYSCTL 0
+#endif
#define HAVE_USLEEP 1
#define HAVE_VIRTUALALLOC 0
#define HAVE_PTHREADS 0

View File

@ -0,0 +1,11 @@
--- xpcom/base/nsMemoryReporterManager.cpp.orig 2015-12-16 11:53:14.211144456 +0100
+++ xpcom/base/nsMemoryReporterManager.cpp 2015-12-16 11:55:26.859476381 +0100
@@ -46,7 +46,7 @@ using namespace mozilla;
# include "mozmemory.h"
#endif // MOZ_MEMORY
-#if defined(XP_LINUX)
+#if defined(XP_LINUX) && defined(__GLIBC__)
#include <malloc.h>
#include <string.h>

View File

@ -0,0 +1,18 @@
--- xpcom/base/nsMemoryReporterManager.cpp
+++ xpcom/base/nsMemoryReporterManager.cpp
@@ -153,6 +153,7 @@ ResidentUniqueDistinguishedAmount(int64_t* aN)
return GetProcSelfSmapsPrivate(aN);
}
+#ifdef __GLIBC__
#define HAVE_SYSTEM_HEAP_REPORTER 1
nsresult
SystemHeapSize(int64_t* aSizeOut)
@@ -172,6 +173,7 @@ SystemHeapSize(int64_t* aSizeOut)
*aSizeOut = size_t(info.hblkhd) + size_t(info.uordblks);
return NS_OK;
}
+#endif
#elif defined(__DragonFly__) || defined(__FreeBSD__) \
|| defined(__NetBSD__) || defined(__OpenBSD__) \

View File

@ -1,25 +0,0 @@
--- dom/system/OSFileConstants.cpp.orig 2013-04-17 06:17:29.798371189 +0000
+++ dom/system/OSFileConstants.cpp 2013-04-17 06:30:30.032285977 +0000
@@ -509,6 +509,11 @@
INT_CONSTANT(_STAT_VER),
#endif // defined(_STAT_VER)
+ // glibc's stat/lstat/fstat are macros while uclibc's are not
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
+ { "OSFILE_STAT_MACROS", INT_TO_JSVAL(1) },
+#endif // defined(stat)
+
PROP_END
};
--- toolkit/components/osfile/modules/osfile_unix_back.jsm.orig 2014-04-03 13:08:26.686409787 +0000
+++ toolkit/components/osfile/modules/osfile_unix_back.jsm 2014-04-03 13:34:14.101716259 +0000
@@ -512,7 +512,7 @@
/*path*/ Type.fd,
/*buf*/ Type.stat.out_ptr
);
- } else if (Const._STAT_VER != undefined) {
+ } else if (Const.OSFILE_STAT_MACROS != undefined) {
const ver = Const._STAT_VER;
let xstat_name, lxstat_name, fxstat_name;
if (OS.Constants.Sys.Name == "SunOS") {

View File

@ -1,39 +1,34 @@
# Template build file for 'firefox-esr'.
pkgname=firefox-esr
version=38.7.1
revision=4
wrksrc="mozilla-esr${version%%.*}"
version=45.1.0
revision=1
wrksrc="firefox-${version}esr"
short_desc="Lightweight gecko-based web browser"
maintainer="Eivind Uggedal <eivind@uggedal.com>"
homepage="https://www.mozilla.org/en-US/firefox/organizations/"
license="MPL-1.1, GPL-2, LGPL-2.1"
distfiles="${MOZILLA_SITE}/firefox/releases/${version}esr/source/firefox-${version}esr.source.tar.bz2"
checksum=d0fce46a948610c8231ceaad5da5542bd57af363ff2341d77f2f00955f888f65
distfiles="${MOZILLA_SITE}/firefox/releases/${version}esr/source/firefox-${version}esr.source.tar.xz"
checksum=8bdc4a0f6d0ca4f28e888ca0044ba735ddc78302820b5ffcc25cd65064ff40a1
only_for_archs="i686 i686-musl x86_64 x86_64-musl"
nopie=yes
lib32disabled=yes
build_options="gtk3"
desc_option_gtk3="Build the GTK+3 toolkit UI"
# XXX enabling gkt3 is a good idea for this ESR release ?
#build_options_default="gtk3"
hostmakedepends="unzip zip pkg-config perl python yasm"
makedepends="nss-devel libjpeg-turbo-devel libpng-devel
icu-devel pixman-devel sqlite-devel gst-plugins-base1-devel gtk+-devel
makedepends="
nss-devel libjpeg-turbo-devel libpng-devel gtk+-devel
icu-devel pixman-devel sqlite-devel pulseaudio-devel
libevent-devel libnotify-devel libvpx-devel libXrender-devel
startup-notification-devel dbus-glib-devel alsa-lib-devel pulseaudio-devel
startup-notification-devel dbus-glib-devel alsa-lib-devel
hunspell-devel libXcomposite-devel libSM-devel libXScrnSaver-devel
libXt-devel libXdamage-devel"
depends="nss>=3.17 desktop-file-utils hicolor-icon-theme"
libXt-devel libXdamage-devel $(vopt_if gtk3 gtk+3-devel)"
depends="nss>=3.21 desktop-file-utils hicolor-icon-theme"
conflicts="firefox>=0"
if [ "$CROSS_BUILD" ]; then
# Make config/system_wrappers/alsa/alsalib.h and pulse/pulse.h find
# the required includes. Set system nspr and nss include paths.
CFLAGS="-I${XBPS_CROSS_BASE}/usr/include/alsa \
-I${XBPS_CROSS_BASE}/usr/include/pulse \
-I${XBPS_CROSS_BASE}/usr/include/nspr \
-I${XBPS_CROSS_BASE}/usr/include/nss"
CXXFLAGS="${CFLAGS}"
fi
pre_configure() {
case "$XBPS_TARGET_MACHINE" in
*-musl)
@ -52,50 +47,70 @@ pre_configure() {
[ ! -d xbps-build ] && mkdir -p xbps-build
}
do_configure() {
if [ "$CROSS_BUILD" ]; then
export HOST_CFLAGS="${XBPS_CFLAGS}"
export HOST_CXXFLAGS="${XBPS_CXXFLAGS}"
export CFLAGS+=" -I${XBPS_CROSS_BASE}/usr/include/nspr -I${XBPS_CROSS_BASE}/usr/include/nss"
export CXXFLAGS+=" -I${XBPS_CROSS_BASE}/usr/include/nspr -I${XBPS_CROSS_BASE}/usr/include/nss"
cross_args+=" --target=$XBPS_CROSS_TRIPLET"
fi
export ac_cv_sqlite_secure_delete=yes
export ac_cv_sqlite_threadsafe=yes
export ac_cv_sqlite_enable_fts3=yes
export ac_cv_sqlite_enable_unlock_notify=yes
export ac_cv_prog_hostcxx_works=1
local _args
case "$XBPS_TARGET_MACHINE" in
*-musl) # XXX gold linking with --hash-style=sysv results in unhidden symbols
# XXX see https://sourceware.org/ml/binutils/2014-09/msg00230.html
cross_args+=" --enable-gold=no"
#
# XXX disable jemalloc.
_args+=" --disable-jemalloc --enable-gold=no"
;;
esac
if [ "$CROSS_BUILD" ]; then
_args+=" --target=$XBPS_CROSS_TRIPLET --disable-jemalloc"
# Make config/system_wrappers/alsa/alsalib.h and pulse/pulse.h find
# the required includes. Set system nspr and nss include paths.
export HOST_CFLAGS="${XBPS_CFLAGS}"
export HOST_CXXFLAGS="${XBPS_CXXFLAGS}"
export CFLAGS+=" -I${XBPS_CROSS_BASE}/usr/include/alsa \
-I${XBPS_CROSS_BASE}/usr/include/pulse \
-I${XBPS_CROSS_BASE}/usr/include/nspr \
-I${XBPS_CROSS_BASE}/usr/include/nss"
export CXXFLAGS+=" ${CFLAGS}"
export LDFLAGS+=" -L${XBPS_CROSS_BASE}/usr/lib"
export ac_cv_sqlite_secure_delete=yes \
ac_cv_sqlite_threadsafe=yes \
ac_cv_sqlite_enable_fts3=yes \
ac_cv_sqlite_dbstat_vtab=yes \
ac_cv_sqlite_enable_unlock_notify=yes \
ac_cv_prog_hostcxx_works=1
fi
mkdir -p /usr/lib/firefox
export LDFLAGS+=" -Wl,-rpath=/usr/lib/firefox"
if [ "$build_option_gtk3" ]; then
_args+=" --enable-default-toolkit=cairo-gtk3"
else
_args+=" --enable-default-toolkit=cairo-gtk2"
fi
cd xbps-build
# XXX build without --system-cairo. See:
# - https://github.com/voidlinux/void-packages/issues/2308#issuecomment-135426813
# - https://bugs.gentoo.org/show_bug.cgi?id=558150
SHELL=/bin/bash ../configure --prefix=/usr --libdir=/usr/lib \
--with-system-nspr --with-system-nss --with-system-bz2 \
--with-system-jpeg --with-system-zlib --without-system-png \
--with-system-libevent --with-system-libvpx --enable-system-cairo \
--with-system-libevent --with-system-libvpx \
--enable-system-pixman --enable-system-hunspell --enable-system-sqlite \
--enable-system-ffi --enable-startup-notification --disable-gio \
--with-pthreads --enable-official-branding --enable-safe-browsing \
--disable-skia --disable-debug --disable-gnomevfs --disable-gconf \
--disable-crashreporter --disable-updater --disable-xprint --disable-tests \
--disable-mochitest --disable-installer --disable-elf-hack \
--with-system-icu --enable-pulseaudio --enable-gstreamer=1.0 \
--with-system-icu --enable-pulseaudio --disable-gstreamer \
--disable-crashreporter --disable-cpp-exceptions --disable-javaxpcom \
--with-nspr-prefix=${XBPS_CROSS_BASE}/usr \
--with-nss-prefix=${XBPS_CROSS_BASE}/usr ${cross_args} \
--with-nss-prefix=${XBPS_CROSS_BASE}/usr \
--with-google-api-keyfile="${wrksrc}/google-api-key" \
--enable-optimize="$CFLAGS" --disable-strip --disable-install-strip \
--disable-static --disable-jemalloc --enable-pie \
--disable-profiling --disable-profilelocking
--disable-static --enable-pie --disable-profiling \
--disable-profilelocking ${_args}
}
do_build() {
if [ "$SOURCE_DATE_EPOCH" ]; then