pkgsrc/www/firefox60/options.mk
ryoon d708c97f69 www/firefox60: import firefox60-60.1.0
Mozilla Firefox is a free, open-source and cross-platform web browser
for Windows, Linux, MacOS X and many other operating systems.

It is fast and easy to use, and offers many advantages over other web
browsers, such as tabbed browsing and the ability to block pop-up
windows.

Firefox also offers excellent bookmark and history management, and it
can be extended by developers using industry standards such as XML,
CSS, JavaScript, C++, etc. Many extensions are available.

This package provides Firefox 60 ESR.

Securty fixes:
#CVE-2018-12359: Buffer overflow using computed size of canvas element
#CVE-2018-12360: Use-after-free when using focus()
#CVE-2018-12361: Integer overflow in SwizzleData
#CVE-2018-12362: Integer overflow in SSSE3 scaler
#CVE-2018-5156: Media recorder segmentation fault when track type is changed during capture
#CVE-2018-12363: Use-after-free when appending DOM nodes
#CVE-2018-12364: CSRF attacks through 307 redirects and NPAPI plugins
#CVE-2018-12365: Compromised IPC child process can list local filenames
#CVE-2018-12371: Integer overflow in Skia library during edge builder allocation
#CVE-2018-12366: Invalid data handling during QCMS transformations
#CVE-2018-12367: Timing attack mitigation of PerformanceNavigationTiming
#CVE-2018-12368: No warning when opening executable SettingContent-ms files
#CVE-2018-12369: WebExtension security permission checks bypassed by embedded experiments
#CVE-2018-5187: Memory safety bugs fixed in Firefox 60 and Firefox ESR 60.1
#CVE-2018-5188: Memory safety bugs fixed in Firefox 60, Firefox ESR 60.1, and Firefox ESR 52.9
2018-06-28 14:04:10 +00:00

107 lines
2.8 KiB
Makefile

# $NetBSD: options.mk,v 1.1 2018/06/28 14:04:10 ryoon Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.firefox60
PKG_SUPPORTED_OPTIONS= official-mozilla-branding
PKG_SUPPORTED_OPTIONS+= debug debug-info mozilla-jemalloc webrtc
PKG_SUPPORTED_OPTIONS+= alsa oss pulseaudio dbus
PKG_SUPPORTED_OPTIONS+= widevinecdm
PLIST_VARS+= gnome jemalloc debug
.if ${OPSYS} == "Linux"
PKG_SUGGESTED_OPTIONS+= pulseaudio mozilla-jemalloc dbus
.else
PKG_SUGGESTED_OPTIONS+= oss dbus
.endif
PKG_SUGGESTED_OPTIONS.Linux+= webrtc
.include "../../mk/bsd.options.mk"
.if !empty(PKG_OPTIONS:Malsa)
CONFIGURE_ARGS+= --enable-alsa
.include "../../audio/alsa-lib/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-alsa
.endif
.if !empty(PKG_OPTIONS:Moss)
CONFIGURE_ARGS+= --with-oss
.include "../../mk/oss.buildlink3.mk"
.endif
.if !empty(PKG_OPTIONS:Mmozilla-jemalloc)
PLIST.jemalloc= yes
CONFIGURE_ARGS+= --enable-jemalloc
CONFIGURE_ARGS+= --enable-replace-malloc
.else
CONFIGURE_ARGS+= --disable-jemalloc
.endif
.include "../../mk/compiler.mk"
.if !empty(PKGSRC_COMPILER:Mgcc)
.if ${CC_VERSION:S/gcc-//:S/.//g} >= 480
# Modern gcc does not run any "tracking" passes when compiling with -O0,
# which makes the generated debug info mostly useless. So explicitly
# request them.
O0TRACKING=-fvar-tracking-assignments -fvar-tracking
.endif
.endif
.if !empty(PKG_OPTIONS:Mdebug)
CONFIGURE_ARGS+= --enable-debug="-g -O0 ${O0TRACKING}"
CONFIGURE_ARGS+= --disable-optimize
CONFIGURE_ARGS+= --enable-debug-js-modules
CONFIGURE_ARGS+= --disable-install-strip
PLIST.debug= yes
.else
.if !empty(PKG_OPTIONS:Mdebug-info)
CONFIGURE_ARGS+= --enable-debug-symbols
CONFIGURE_ARGS+= --enable-optimize=-O0
.else
CONFIGURE_ARGS+= --disable-debug-symbols
.endif
CONFIGURE_ARGS+= --disable-debug
CONFIGURE_ARGS+= --enable-optimize=-O2
CONFIGURE_ARGS+= --enable-install-strip
.endif
.if !empty(PKG_OPTIONS:Mpulseaudio)
.include "../../audio/pulseaudio/buildlink3.mk"
CONFIGURE_ARGS+= --enable-pulseaudio
.else
CONFIGURE_ARGS+= --disable-pulseaudio
.endif
.if !empty(PKG_OPTIONS:Mdbus)
.include "../../sysutils/dbus-glib/buildlink3.mk"
CONFIGURE_ARGS+= --enable-dbus
.else
CONFIGURE_ARGS+= --disable-dbus
.endif
PLIST_VARS+= branding nobranding
.if !empty(PKG_OPTIONS:Mofficial-mozilla-branding)
CONFIGURE_ARGS+= --enable-official-branding
LICENSE= mozilla-trademark-license
RESTRICTED= Trademark holder prohibits distribution of modified versions.
NO_BIN_ON_CDROM= ${RESTRICTED}
NO_BIN_ON_FTP= ${RESTRICTED}
PLIST.branding= yes
.else
PLIST.nobranding= yes
.endif
PLIST_VARS+= webrtc
.if !empty(PKG_OPTIONS:Mwebrtc)
.include "../../graphics/libv4l/buildlink3.mk"
CONFIGURE_ARGS+= --enable-webrtc
PLIST.webrtc= yes
.else
CONFIGURE_ARGS+= --disable-webrtc
.endif
# Enable Google widevine CDM. This requires external libwidevinecdm.so.
.if !empty(PKG_OPTIONS:Mwidevinecdm)
CONFIGURE_ARGS+= --enable-eme=widevine
.endif