Merge pull request #2248 from voidlinux/firefox-esr

Firefox esr and slimerjs dep on it
This commit is contained in:
Eivind Uggedal 2015-08-14 13:23:08 +02:00
commit 0a1c695d0b
17 changed files with 664 additions and 52 deletions

View file

@ -0,0 +1,121 @@
[Desktop Entry]
Name=Firefox
Name[bn]=
Name[eo]=Fajrovulpo
Name[fi]=Firefox
Name[pa]=
Name[tg]=Рӯбоҳи оташин
GenericName=Web Browser
GenericName[af]=Web Blaaier
GenericName[ar]=متصفح ويب
GenericName[az]=Veb Səyyahı
GenericName[bg]=Браузър
GenericName[bn]=
GenericName[br]=Furcher ar Gwiad
GenericName[bs]=WWW Preglednik
GenericName[ca]=Fullejador web
GenericName[cs]=WWW prohlížeč
GenericName[cy]=Porydd Gwe
GenericName[da]=Browser
GenericName[de]=Web-Browser
GenericName[el]=Περιηγητής Ιστού
GenericName[eo]=TTT-legilo
GenericName[es]=Navegador web
GenericName[et]=Veebilehitseja
GenericName[eu]=Web arakatzailea
GenericName[fa]=مرورگر وب
GenericName[fi]=WWW-selain
GenericName[fo]=Alnótsfar
GenericName[fr]=Navigateur web
GenericName[gl]=Navegador Web
GenericName[he]=דפדפן אינטרנט
GenericName[hi]=
GenericName[hr]=Web preglednik
GenericName[hu]=Webböngésző
GenericName[is]=Vafri
GenericName[it]=Browser Web
GenericName[ja]=
GenericName[ko]=
GenericName[lo]=
GenericName[lt]=Žiniatinklio naršyklė
GenericName[lv]=Web Pārlūks
GenericName[mk]=Прелистувач на Интернет
GenericName[mn]=Веб-Хөтөч
GenericName[nb]=Nettleser
GenericName[nds]=Nettkieker
GenericName[nl]=Webbrowser
GenericName[nn]=Nettlesar
GenericName[nso]=Seinyakisi sa Web
GenericName[pa]=
GenericName[pl]=Przeglądarka WWW
GenericName[pt]=Navegador Web
GenericName[pt_BR]=Navegador Web
GenericName[ro]=Navigator de web
GenericName[ru]=Веб-браузер
GenericName[se]=Fierpmádatlogan
GenericName[sk]=Webový prehliadač
GenericName[sl]=Spletni brskalnik
GenericName[sr]=Веб претраживач
GenericName[sr@Latn]=Veb pretraživač
GenericName[ss]=Ibrawuza yeWeb
GenericName[sv]=Webbläsare
GenericName[ta]= ி
GenericName[tg]=Тафсиргари вэб
GenericName[th]=
GenericName[tr]=Web Tarayıcı
GenericName[uk]=Навігатор Тенет
GenericName[uz]=Веб-браузер
GenericName[ven]=Buronza ya Webu
GenericName[vi]=Trình duyt Web
GenericName[wa]=Betchteu waibe
GenericName[xh]=Umkhangeli zincwadi we Web
GenericName[zh_CN]=
GenericName[zh_TW]=
GenericName[zu]=Umcingi we-Web
Comment=Browse the World Wide Web
Comment[ar]=تصفح الشبكة العنكبوتية العالمية
Comment[ast]=Restola pela Rede
Comment[bn]=
Comment[ca]=Navegueu per la web
Comment[cs]=Prohlížení stránek World Wide Webu
Comment[da]=Surf på internettet
Comment[de]=Im Internet surfen
Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
Comment[es]=Navegue por la web
Comment[et]=Lehitse veebi
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
Comment[fi]=Selaa Internetin WWW-sivuja
Comment[fr]=Naviguer sur le Web
Comment[gl]=Navegar pola rede
Comment[he]=גלישה ברחבי האינטרנט
Comment[hr]=Pretražite web
Comment[hu]=A világháló böngészése
Comment[it]=Esplora il web
Comment[ja]=
Comment[ko]=
Comment[ku]=Li torê bigere
Comment[lt]=Naršykite internete
Comment[nb]=Surf på nettet
Comment[nl]=Verken het internet
Comment[nn]=Surf på nettet
Comment[no]=Surf på nettet
Comment[pl]=Przeglądanie stron WWW
Comment[pt]=Navegue na Internet
Comment[pt_BR]=Navegue na Internet
Comment[ro]=Navigați pe Internet
Comment[ru]=Доступ в Интернет
Comment[sk]=Prehliadanie internetu
Comment[sl]=Brskajte po spletu
Comment[sv]=Surfa på webben
Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
Comment[uk]=Перегляд сторінок Інтернету
Comment[vi]=Đ duyt các trang web
Comment[zh_CN]=
Comment[zh_TW]=
Exec=firefox %u
Icon=firefox
Terminal=false
Type=Application
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
StartupNotify=true
Categories=Network;WebBrowser;

View file

@ -0,0 +1,9 @@
// Use LANG environment variable to choose locale
pref("intl.locale.matchOS", true);
// Disable default browser checking.
pref("browser.shell.checkDefaultBrowser", false);
// Don't disable our bundled extensions in the application directory
pref("extensions.autoDisableScopes", 11);
pref("extensions.shownSelectionUI", true);

View file

@ -0,0 +1,17 @@
--- xpcom/ds/nsMathUtils.h.orig
+++ xpcom/ds/nsMathUtils.h
@@ -104,12 +104,12 @@
#ifdef WIN32
// NOTE: '!!' casts an int to bool without spamming MSVC warning C4800.
return !!_finite(aNum);
-#elif defined(XP_DARWIN)
+#elif defined(XP_DARWIN) || defined(_GLIBCXX_CMATH)
// Darwin has deprecated |finite| and recommends |isfinite|. The former is
// not present in the iOS SDK.
return std::isfinite(aNum);
#else
- return finite(aNum);
+ return isfinite(aNum);
#endif
}

View file

@ -0,0 +1,17 @@
--- config/baseconfig.mk.orig 2014-04-28 23:05:04.491525412 +0200
+++ config/baseconfig.mk 2014-04-28 23:05:39.922751247 +0200
@@ -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
# whether a normal build is happening or whether the check is running.
-includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
+includedir := $(includedir)/$(MOZ_APP_NAME)
+idldir = $(datadir)/idl/$(MOZ_APP_NAME)
+installdir = $(libdir)/$(MOZ_APP_NAME)
+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel
ifndef TOP_DIST
TOP_DIST = dist
endif

View file

@ -0,0 +1,11 @@
--- media/webrtc/signaling/src/sdp/sipcc/sdp_os_defs.h
+++ media/webrtc/signaling/src/sdp/sipcc/sdp_os_defs.h
@@ -27,8 +27,5 @@
typedef int16_t int16;
typedef unsigned short ushort;
typedef unsigned long ulong;
-#ifndef __GNUC_STDC_INLINE__
-#define inline
-#endif
#endif /* _SDP_OS_DEFS_H_ */

View file

@ -0,0 +1,26 @@
--- configure.orig 2015-05-29 18:30:41.474423097 +0200
+++ configure 2015-05-29 18:30:53.451550589 +0200
@@ -10966,8 +10966,8 @@ ac_have_llvm_pr8927="no"
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+ac_compile='${CC-cc} -c conftest.$ac_ext 1>&5'
+ac_link='${CC-cc} -o conftest${ac_exeext} conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
--- js/src/configure.orig 2015-05-29 18:31:25.049874012 +0200
+++ js/src/configure 2015-05-29 18:31:36.898995291 +0200
@@ -9820,8 +9820,8 @@ ac_have_llvm_pr8927="no"
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+ac_compile='${CC-cc} -c conftest.$ac_ext 1>&5'
+ac_link='${CC-cc} -o conftest${ac_exeext} conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross

View file

@ -0,0 +1,55 @@
--- 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

@ -0,0 +1,10 @@
--- 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

@ -0,0 +1,10 @@
--- 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

@ -0,0 +1,37 @@
--- 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,144 @@
--- toolkit.orig/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc 2014-03-15 05:19:36.000000000 +0000
+++ toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc 2014-04-17 10:24:33.793431933 +0000
@@ -45,6 +45,7 @@
#include <sys/mman.h>
#include <sys/stat.h>
#include <unistd.h>
+#include <libgen.h>
#include <iostream>
#include <set>
--- toolkit.orig/crashreporter/google-breakpad/src/common/stabs_reader.cc 2014-03-15 05:19:36.000000000 +0000
+++ toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc 2014-04-17 10:24:33.793431933 +0000
@@ -41,6 +41,10 @@
#include "common/using_std_string.h"
+#ifndef N_UNDF
+#define N_UNDF 0
+#endif
+
using std::vector;
namespace google_breakpad {
--- toolkit.orig/crashreporter/google-breakpad/src/common/stabs_reader.h 2014-03-15 05:19:36.000000000 +0000
+++ toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h 2014-04-17 10:24:33.793431933 +0000
@@ -53,9 +53,10 @@
#include <config.h>
#endif
-#ifdef HAVE_A_OUT_H
+#if 0
#include <a.out.h>
#endif
+
#ifdef HAVE_MACH_O_NLIST_H
#include <mach-o/nlist.h>
#endif
--- toolkit.orig/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h 2014-03-15 05:19:37.000000000 +0000
+++ toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h 2014-04-17 10:24:33.793431933 +0000
@@ -2813,7 +2813,7 @@
LSS_INLINE _syscall6(void*, mmap, void*, s,
size_t, l, int, p,
int, f, int, d,
- __off64_t, o)
+ off_t, o)
LSS_INLINE _syscall4(int, newfstatat, int, d,
const char *, p,
--- toolkit.orig/mozapps/update/common/updatedefines.h 2014-03-15 05:19:37.000000000 +0000
+++ toolkit/mozapps/update/common/updatedefines.h 2014-04-17 10:24:33.793431933 +0000
@@ -105,7 +105,7 @@
#ifdef SOLARIS
# include <sys/stat.h>
-#else
+#elif !defined(__linux__) || defined(__GLIBC__)
# include <fts.h>
#endif
# include <dirent.h>
--- toolkit.orig/mozapps/update/updater/updater.cpp 2014-03-15 05:19:37.000000000 +0000
+++ toolkit/mozapps/update/updater/updater.cpp 2014-04-17 10:24:33.796765327 +0000
@@ -3432,6 +3432,7 @@
int add_dir_entries(const NS_tchar *dirpath, ActionList *list)
{
int rv = OK;
+#if !defined(__linux__) || defined(__GLIBC__)
FTS *ftsdir;
FTSENT *ftsdirEntry;
NS_tchar searchpath[MAXPATHLEN];
@@ -3534,6 +3535,7 @@
}
fts_close(ftsdir);
+#endif
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

@ -0,0 +1,65 @@
--- tools/profiler/local_debug_info_symbolizer.cc
+++ tools/profiler/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/. */
+#include <sys/types.h>
#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
@@ -29,6 +29,8 @@
#ifndef TOOLS_PLATFORM_H_
#define TOOLS_PLATFORM_H_
+#include <sys/types.h>
+
#ifdef ANDROID
#include <android/log.h>
#else
--- tools/profiler/LulElf.cpp
+++ tools/profiler/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.
string BaseFileName(const string &filename) {
- // Lots of copies! basename's behavior is less than ideal.
- char *c_filename = strdup(filename.c_str());
- string base = basename(c_filename);
- free(c_filename);
+ // basename's behavior is less than ideal so avoid it
+ const char *c_filename = filename.c_str();
+ const char *p = strrchr(c_filename, '/');
+ string base = p ? p+1 : c_filename;
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
@@ -651,11 +651,13 @@ void OS::Startup() {
void TickSample::PopulateContext(void* aContext)
{
MOZ_ASSERT(aContext);
+#if defined(__GLIBC__)
ucontext_t* pContext = reinterpret_cast<ucontext_t*>(aContext);
if (!getcontext(pContext)) {
context = pContext;
SetSampleContext(this, aContext);
}
+#endif
}
void OS::SleepMicro(int microseconds)

View file

@ -0,0 +1,25 @@
--- 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

@ -0,0 +1,114 @@
# Template build file for 'firefox-esr'.
pkgname=firefox-esr
version=38.2.0
revision=1
wrksrc="mozilla-esr${version%%.*}"
short_desc="Lightweight gecko-based web browser"
maintainer="Juan RP <xtraeme@voidlinux.eu>"
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=55867254f21cfc610aa63c8aa0d7156df6eb4c0cb37ebac30259e4890170aacb
lib32disabled=yes
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
libevent-devel libnotify-devel libvpx-devel libXrender-devel
startup-notification-devel dbus-glib-devel alsa-lib-devel pulseaudio-devel
hunspell-devel libXcomposite-devel libSM-devel libXScrnSaver-devel
libXt-devel libXdamage-devel"
depends="nss>=3.17 desktop-file-utils hicolor-icon-theme"
conflicts="firefox>=0"
pre_configure() {
case "$XBPS_TARGET_MACHINE" in
*-musl)
$XBPS_FETCH_CMD http://git.alpinelinux.org/cgit/aports/plain/main/firefox/stab.h
mv stab.h toolkit/crashreporter/google-breakpad/src/
;;
esac
# configure script misdetects the preprocessor without an optimization level
sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure
# Google API key (see http://www.chromium.org/developers/how-tos/api-keys)
# Note: This is for Void Linux use ONLY.
_google_api_key="AIzaSyCIFdBA7eQP43R6kXRwTq7j6Mvj1ITze90"
echo -n "$_google_api_key" > google-api-key
[ ! -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
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"
;;
esac
mkdir -p /usr/lib/firefox
export LDFLAGS+=" -Wl,-rpath=/usr/lib/firefox"
cd xbps-build
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 \
--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 \
--disable-crashreporter --disable-cpp-exceptions --disable-javaxpcom \
--with-nspr-prefix=${XBPS_CROSS_BASE}/usr \
--with-nss-prefix=${XBPS_CROSS_BASE}/usr ${cross_args} \
--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
}
do_build() {
cd xbps-build
SHELL=/bin/bash make ${makejobs}
}
do_install() {
cd xbps-build
make DESTDIR=${DESTDIR} install
vinstall ${FILESDIR}/vendor.js 644 usr/lib/firefox/browser/defaults/preferences
vinstall ${FILESDIR}/firefox.desktop 644 usr/share/applications
for i in 16x16 22x22 24x24 32x32 48x48 256x256; do
vinstall ${wrksrc}/browser/branding/official/default${i%x*}.png 644 \
usr/share/icons/hicolor/${i}/apps firefox.png
done
# Use system-provided dictionaries
rm -rf ${DESTDIR}/usr/lib/firefox/{dictionaries,hyphenation}
ln -s /usr/share/hunspell ${DESTDIR}/usr/lib/firefox/dictionaries
ln -s /usr/share/hyphen ${DESTDIR}/usr/lib/firefox/hyphenation
# We don't want the development stuff
rm -rf ${DESTDIR}/usr/{include,lib/firefox-devel,share/idl}
# https://bugzilla.mozilla.org/show_bug.cgi?id=658850
ln -sf firefox ${DESTDIR}/usr/lib/firefox/firefox-bin
}

View file

@ -0,0 +1,2 @@
site="${MOZILLA_SITE}/firefox/releases/"
pattern="[\d.]+(?=esr)"

View file

@ -1,51 +0,0 @@
From 1668cb41f53ed2bad116a876f615fe133e7fb314 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jerry=20Lundstr=C3=B6m?= <lundstrom.jerry@gmail.com>
Date: Wed, 12 Aug 2015 11:07:25 +0200
Subject: [PATCH] Update supported Gecko version to 40.*. Fix 'Sandbox must
subsume sandboxPrototype' error by supplying the content window as prototype
if the Gecko version is 40 or above.
---
src/application.ini | 2 +-
src/modules/slLauncher.jsm | 11 ++++++++---
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/src/application.ini b/src/application.ini
index 46f151a..4fb267b 100644
--- src/application.ini
+++ src/application.ini
@@ -8,4 +8,4 @@ Copyright=Copyright 2012-2015 Laurent Jouanneau & Innophi
[Gecko]
MinVersion=17.0.0
-MaxVersion=39.*
+MaxVersion=40.*
diff --git a/src/modules/slLauncher.jsm b/src/modules/slLauncher.jsm
index e49e811..72e4004 100644
--- src/modules/slLauncher.jsm
+++ src/modules/slLauncher.jsm
@@ -22,6 +22,10 @@ const fileHandler = Cc["@mozilla.org/network/protocol;1?name=file"]
.getService(Ci.nsIFileProtocolHandler)
const systemPrincipal = Cc['@mozilla.org/systemprincipal;1']
.createInstance(Ci.nsIPrincipal)
+const appInfo = Cc["@mozilla.org/xre/app-info;1"]
+ .getService(Ci.nsIXULAppInfo);
+const versionComparator = Cc["@mozilla.org/xpcom/version-comparator;1"]
+ .getService(Ci.nsIVersionComparator);
/**
* this function retrieves various informations
@@ -92,9 +96,10 @@ var slLauncher = {
// prepare the sandbox to execute coffee script injected with injectJs
coffeeScriptSandbox = Cu.Sandbox(contentWindow,
{
- 'sandboxName': 'coffeescript',
- 'sandboxPrototype': {},
- 'wantXrays': true
+ sandboxName: 'coffeescript',
+ // XULrunner 40.0 and above handles sandboxPrototype different then before
+ sandboxPrototype: versionComparator.compare(appInfo.platformVersion, '40') < 0 ? {} : contentWindow,
+ wantXrays: true
});
let src = slUtils.readChromeFile("resource://slimerjs/coffee-script/extras/coffee-script.js");
Cu.evalInSandbox('var CoffeeScript;', coffeeScriptSandbox, 'ECMAv5', 'slLauncher::launchMainScript', 1);

View file

@ -5,7 +5,7 @@ revision=2
noarch=yes
wrksrc=$pkgname-RELEASE_$version
hostmakedepends="zip"
depends="bash firefox<41"
depends="bash firefox-esr<40"
short_desc="A scriptable browser for Firefox"
maintainer="Eivind Uggedal <eivind@uggedal.com>"
license="MPL-2.0, BSD"