Fixes MFSA 2017-08/CVE-2017-5428, see https://www.mozilla.org/en-US/security/advisories/mfsa2017-08/ While here, add a patch from semarie@ (tested by and ok danj@) to tweak a last-minute change in the jit engine memory allocator that happened to fix a security issue in 52 branch (bug #1334933/CVE-2017-5400) - see https://hg.mozilla.org/releases/mozilla-esr52/rev/6b35bbf96b67. Sadly, this change resulted in a browser crashing at startup on OpenBSD with the default limits, because the jit engine tried to allocate 1Gb (previously 640Mb in #1334933, then 1Gb because of #1337561, see https://hg.mozilla.org/releases/mozilla-esr52/rev/65bb26d07408) and hit the default datasize ulimit of 768Mb. The patch makes it allocate 128Mb instead (as it's done on 32bit architectures), while a better (?) fix might be devised in bug #1347139. Generally speaking, if you see firefox crashing with ENOMEM errors, raise the datasize limit for your login class, write your own wrapper script to temporarly raise the limit when starting firefox, or stop using the modern web. Websites are ginormous, deal with it.
79 lines
2.4 KiB
Makefile
79 lines
2.4 KiB
Makefile
# $OpenBSD: Makefile,v 1.312 2017/03/20 19:35:15 landry Exp $
|
|
|
|
COMMENT = Mozilla web browser
|
|
|
|
# Don't forget to bump www/firefox-i18n after updates.
|
|
|
|
MOZILLA_VERSION = 52.0.1
|
|
MOZILLA_BRANCH = release
|
|
MOZILLA_PROJECT = firefox
|
|
MOZILLA_CODENAME = browser
|
|
BROKEN-sparc64 = xpcshell SIGBUS during fake
|
|
EXTRACT_SUFX = .tar.xz
|
|
|
|
SO_VERSION = 70.0
|
|
# NOTE: Must bump minor version if any shlib's are removed from the
|
|
# components dir to avoid pkg_add -r issues.
|
|
MOZILLA_LIBS = mozavcodec mozavutil mozgtk xul clearkey lgpllibs
|
|
|
|
CATEGORIES = www
|
|
|
|
# mozilla public license
|
|
PERMIT_PACKAGE_CDROM= Yes
|
|
|
|
# lots of logic in mozilla.port.mk
|
|
MODULES = www/mozilla devel/gettext lang/python
|
|
|
|
MODPY_RUNDEP = No
|
|
|
|
MODULES += lang/clang
|
|
MODCLANG_ARCHS = amd64 i386
|
|
MODCLANG_LANGS = c c++
|
|
|
|
# firefox >= 44 doesnt build with base libevent
|
|
MOZILLA_USE_BUNDLED_LIBEVENT = Yes
|
|
# firefox >= 46 defaults to gtk+3
|
|
MOZILLA_USE_GTK3 = Yes
|
|
|
|
WANTLIB += X11-xcb pixman-1 pthread-stubs xcb xcb-shm
|
|
|
|
# Regression tests are too hard to adapt to run here
|
|
NO_TEST = Yes
|
|
|
|
CONFIGURE_STYLE = simple
|
|
CONFIGURE_ARGS += --prefix=${PREFIX}
|
|
|
|
# to be able to link when building with clang on i386
|
|
.if ${MACHINE_ARCH} == "i386"
|
|
CONFIGURE_ARGS += --disable-debug-symbols
|
|
.endif
|
|
|
|
# relies on pulseaudio for sound and broken at runtime
|
|
#CONFIGURE_ARGS += --disable-webrtc
|
|
|
|
# bug 857628
|
|
CONFIGURE_ARGS += --enable-pie
|
|
|
|
post-install:
|
|
${SUBST_MAN} ${FILESDIR}/mozilla-firefox.1 \
|
|
${PREFIX}/man/man1/mozilla-firefox.1
|
|
cd ${PREFIX}/man/man1/ && ln -sf mozilla-firefox.1 firefox.1
|
|
cd ${PREFIX}/bin/ && ln -sf firefox mozilla-firefox
|
|
# install prefs
|
|
${INSTALL_DATA_DIR} ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/browser/defaults/preferences
|
|
${SUBST_DATA} ${FILESDIR}/all-openbsd.js \
|
|
${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/browser/defaults/preferences/all-openbsd.js
|
|
# install desktop file
|
|
${INSTALL_DATA_DIR} ${PREFIX}/share/applications/
|
|
${SUBST_DATA} ${FILESDIR}/${MOZILLA_PROJECT}.desktop \
|
|
${PREFIX}/share/applications/${MOZILLA_PROJECT}.desktop
|
|
# install icon for desktop file
|
|
${INSTALL_DATA_DIR} ${PREFIX}/share/pixmaps/
|
|
${INSTALL_DATA} ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/browser/icons/mozicon128.png \
|
|
${PREFIX}/share/pixmaps/firefox.png
|
|
|
|
# link default48.png to default.png to be used by default by non-icccm compliant wm
|
|
ln ${PREFIX}/lib/firefox-${MOZILLA_VER}/browser/chrome/icons/default/default{48,}.png
|
|
|
|
.include <bsd.port.mk>
|