From 2d33e18e0993712b5ddd3b490a02814a11fecd07 Mon Sep 17 00:00:00 2001 From: Chaoting Liu Date: Fri, 7 Sep 2018 16:44:44 +0200 Subject: [PATCH] firefox-kde: 62.0 --- ...ion.patch => 1002_fix_pie_detection.patch} | 2 +- .../1003_foritify_sources_properly.patch | 42 +++++++++ ...tch => 2000_system_harfbuzz_support.patch} | 22 ++--- ...ch => 2001_system_graphite2_support.patch} | 28 +++--- firefox-kde/2003_nICER_implicit_decls.patch | 93 ------------------- firefox-kde/2004_fix_lto_builds.patch | 17 ---- firefox-kde/PKGBUILD | 53 +++++------ firefox-kde/unity-menubar.patch | 84 ++++++++--------- 8 files changed, 135 insertions(+), 206 deletions(-) rename firefox-kde/{1004_fix_pie_detection.patch => 1002_fix_pie_detection.patch} (97%) create mode 100644 firefox-kde/1003_foritify_sources_properly.patch rename firefox-kde/{2000_system_harfbuzz.patch => 2000_system_harfbuzz_support.patch} (93%) rename firefox-kde/{2001_system_graphite2.patch => 2001_system_graphite2_support.patch} (93%) delete mode 100644 firefox-kde/2003_nICER_implicit_decls.patch delete mode 100644 firefox-kde/2004_fix_lto_builds.patch diff --git a/firefox-kde/1004_fix_pie_detection.patch b/firefox-kde/1002_fix_pie_detection.patch similarity index 97% rename from firefox-kde/1004_fix_pie_detection.patch rename to firefox-kde/1002_fix_pie_detection.patch index e24adf3..55b621c 100644 --- a/firefox-kde/1004_fix_pie_detection.patch +++ b/firefox-kde/1002_fix_pie_detection.patch @@ -5,7 +5,7 @@ CFLAGS must contain -fPIC when checking the linker diff --git a/build/autoconf/compiler-opts.m4 b/build/autoconf/compiler-opts.m4 --- a/build/autoconf/compiler-opts.m4 +++ b/build/autoconf/compiler-opts.m4 -@@ -205,23 +205,26 @@ MOZ_PIE= +@@ -216,23 +216,26 @@ fi MOZ_ARG_ENABLE_BOOL(pie, [ --enable-pie Enable Position Independent Executables], diff --git a/firefox-kde/1003_foritify_sources_properly.patch b/firefox-kde/1003_foritify_sources_properly.patch new file mode 100644 index 0000000..db69cfc --- /dev/null +++ b/firefox-kde/1003_foritify_sources_properly.patch @@ -0,0 +1,42 @@ +From: Jory A. Pratt + +Ensure we fortify properly, features.h is pulled in via fortification. + +diff --git a/config/system-headers.mozbuild b/config/system-headers.mozbuild +--- a/config/system-headers.mozbuild ++++ b/config/system-headers.mozbuild +@@ -224,17 +224,16 @@ system_headers = [ + 'Events.h', + 'exception', + 'exdisp.h', + 'ExDisp.h', + 'exe386.h', + 'execinfo.h', + 'extras.h', + 'fcntl.h', +- 'features.h', + 'fenv.h', + 'ffi.h', + 'fibdef.h', + 'File.h', + 'filehdr.h', + 'files.h', + 'Files.h', + 'FindDirectory.h', +diff --git a/media/webrtc/signaling/src/sdp/sipcc/sdp_os_defs.h b/media/webrtc/signaling/src/sdp/sipcc/sdp_os_defs.h +--- a/media/webrtc/signaling/src/sdp/sipcc/sdp_os_defs.h ++++ b/media/webrtc/signaling/src/sdp/sipcc/sdp_os_defs.h +@@ -15,13 +15,10 @@ + + /* Use operating system malloc */ + #define SDP_MALLOC(x) calloc(1, (x)) + #define SDP_FREE free + + typedef uint8_t tinybool; + typedef unsigned short ushort; + typedef unsigned long ulong; +-#ifndef __GNUC_STDC_INLINE__ +-#define inline +-#endif + + #endif /* _SDP_OS_DEFS_H_ */ diff --git a/firefox-kde/2000_system_harfbuzz.patch b/firefox-kde/2000_system_harfbuzz_support.patch similarity index 93% rename from firefox-kde/2000_system_harfbuzz.patch rename to firefox-kde/2000_system_harfbuzz_support.patch index 1f8b59f..cebcf9f 100644 --- a/firefox-kde/2000_system_harfbuzz.patch +++ b/firefox-kde/2000_system_harfbuzz_support.patch @@ -7,7 +7,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=847568 diff --git a/config/system-headers.mozbuild b/config/system-headers.mozbuild --- a/config/system-headers.mozbuild +++ b/config/system-headers.mozbuild -@@ -1227,16 +1227,23 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'andr +@@ -1228,16 +1228,23 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'andr 'utils/TypeHelpers.h', 'utils/Unicode.h', 'utils/Vector.h', @@ -34,7 +34,7 @@ diff --git a/config/system-headers.mozbuild b/config/system-headers.mozbuild diff --git a/dom/base/moz.build b/dom/base/moz.build --- a/dom/base/moz.build +++ b/dom/base/moz.build -@@ -472,16 +472,19 @@ include('/ipc/chromium/chromium-config.m +@@ -477,16 +477,19 @@ include('/ipc/chromium/chromium-config.m FINAL_LIBRARY = 'xul' if CONFIG['MOZ_BUILD_APP'] in ['browser', 'mobile/android', 'xulrunner']: @@ -107,7 +107,7 @@ diff --git a/gfx/moz.build b/gfx/moz.build diff --git a/gfx/skia/generate_mozbuild.py b/gfx/skia/generate_mozbuild.py --- a/gfx/skia/generate_mozbuild.py +++ b/gfx/skia/generate_mozbuild.py -@@ -132,16 +132,19 @@ if CONFIG['CC_TYPE'] == 'gcc': +@@ -143,16 +143,19 @@ if CONFIG['CC_TYPE'] == 'gcc': if CONFIG['CC_TYPE'] in ('clang', 'clang-cl'): CXXFLAGS += [ '-Wno-implicit-fallthrough', @@ -130,7 +130,7 @@ diff --git a/gfx/skia/generate_mozbuild.py b/gfx/skia/generate_mozbuild.py diff --git a/gfx/skia/moz.build b/gfx/skia/moz.build --- a/gfx/skia/moz.build +++ b/gfx/skia/moz.build -@@ -777,16 +777,19 @@ if CONFIG['CC_TYPE'] == 'gcc': +@@ -817,16 +817,19 @@ if CONFIG['CC_TYPE'] == 'gcc': if CONFIG['CC_TYPE'] in ('clang', 'clang-cl'): CXXFLAGS += [ '-Wno-implicit-fallthrough', @@ -153,7 +153,7 @@ diff --git a/gfx/skia/moz.build b/gfx/skia/moz.build diff --git a/gfx/thebes/moz.build b/gfx/thebes/moz.build --- a/gfx/thebes/moz.build +++ b/gfx/thebes/moz.build -@@ -270,11 +270,14 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('and +@@ -281,11 +281,14 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('and if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk3': CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS'] @@ -187,7 +187,7 @@ diff --git a/intl/unicharutil/util/moz.build b/intl/unicharutil/util/moz.build diff --git a/netwerk/dns/moz.build b/netwerk/dns/moz.build --- a/netwerk/dns/moz.build +++ b/netwerk/dns/moz.build -@@ -64,12 +64,15 @@ etld_data = GENERATED_FILES['etld_data.i +@@ -67,12 +67,15 @@ etld_data = GENERATED_FILES['etld_data.i etld_data.script = 'prepare_tlds.py' etld_data.inputs = ['effective_tld_names.dat'] @@ -206,7 +206,7 @@ diff --git a/netwerk/dns/moz.build b/netwerk/dns/moz.build diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build --- a/toolkit/library/moz.build +++ b/toolkit/library/moz.build -@@ -223,16 +223,19 @@ if CONFIG['SERVO_TARGET_DIR']: +@@ -233,16 +233,19 @@ if CONFIG['SERVO_TARGET_DIR']: OS_LIBS += ['-L%s' % CONFIG['SERVO_TARGET_DIR'], '-lgeckoservo'] if CONFIG['MOZ_SYSTEM_JPEG']: @@ -218,18 +218,18 @@ diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build +if CONFIG['MOZ_SYSTEM_HARFBUZZ']: + OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS'] + - if CONFIG['MOZ_SYSTEM_HUNSPELL']: - OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS'] - if CONFIG['MOZ_SYSTEM_LIBEVENT']: OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS'] if CONFIG['MOZ_SYSTEM_LIBVPX']: OS_LIBS += CONFIG['MOZ_LIBVPX_LIBS'] + + if not CONFIG['MOZ_TREE_PIXMAN']: + OS_LIBS += CONFIG['MOZ_PIXMAN_LIBS'] diff --git a/toolkit/moz.configure b/toolkit/moz.configure --- a/toolkit/moz.configure +++ b/toolkit/moz.configure -@@ -308,16 +308,26 @@ def freetype2_combined_info(fontconfig_i +@@ -331,16 +331,26 @@ def freetype2_combined_info(fontconfig_i return namespace( cflags=freetype2_info.cflags + fontconfig_info.cflags, libs=freetype2_info.libs + fontconfig_info.libs, diff --git a/firefox-kde/2001_system_graphite2.patch b/firefox-kde/2001_system_graphite2_support.patch similarity index 93% rename from firefox-kde/2001_system_graphite2.patch rename to firefox-kde/2001_system_graphite2_support.patch index e65c11a..96adb83 100644 --- a/firefox-kde/2001_system_graphite2.patch +++ b/firefox-kde/2001_system_graphite2_support.patch @@ -7,7 +7,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=847568 diff --git a/config/system-headers.mozbuild b/config/system-headers.mozbuild --- a/config/system-headers.mozbuild +++ b/config/system-headers.mozbuild -@@ -1234,16 +1234,22 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'andr +@@ -1235,16 +1235,22 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'andr if CONFIG['MOZ_SYSTEM_HARFBUZZ']: system_headers += [ @@ -112,7 +112,7 @@ diff --git a/gfx/moz.build b/gfx/moz.build diff --git a/gfx/thebes/moz.build b/gfx/thebes/moz.build --- a/gfx/thebes/moz.build +++ b/gfx/thebes/moz.build -@@ -268,16 +268,19 @@ CFLAGS += CONFIG['TK_CFLAGS'] +@@ -279,16 +279,19 @@ CFLAGS += CONFIG['TK_CFLAGS'] if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('android'): CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS'] @@ -136,7 +136,7 @@ diff --git a/gfx/thebes/moz.build b/gfx/thebes/moz.build diff --git a/old-configure.in b/old-configure.in --- a/old-configure.in +++ b/old-configure.in -@@ -4091,16 +4091,37 @@ if test "$USE_FC_FREETYPE"; then +@@ -3857,16 +3857,37 @@ if test "$USE_FC_FREETYPE"; then CPPFLAGS="$CPPFLAGS $FT2_CFLAGS $XCFLAGS" MOZ_CHECK_HEADERS([fontconfig/fcfreetype.h], , [AC_MSG_ERROR(Can't find header fontconfig/fcfreetype.h.)], [#include ]) @@ -177,30 +177,30 @@ diff --git a/old-configure.in b/old-configure.in diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build --- a/toolkit/library/moz.build +++ b/toolkit/library/moz.build -@@ -223,16 +223,19 @@ if CONFIG['SERVO_TARGET_DIR']: - OS_LIBS += ['-L%s' % CONFIG['SERVO_TARGET_DIR'], '-lgeckoservo'] - - if CONFIG['MOZ_SYSTEM_JPEG']: +@@ -236,16 +236,19 @@ if CONFIG['MOZ_SYSTEM_JPEG']: OS_LIBS += CONFIG['MOZ_JPEG_LIBS'] if CONFIG['MOZ_SYSTEM_PNG']: OS_LIBS += CONFIG['MOZ_PNG_LIBS'] -+if CONFIG['MOZ_SYSTEM_GRAPHITE2']: -+ OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS'] -+ if CONFIG['MOZ_SYSTEM_HARFBUZZ']: OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS'] - if CONFIG['MOZ_SYSTEM_HUNSPELL']: - OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS'] - ++if CONFIG['MOZ_SYSTEM_GRAPHITE2']: ++ OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS'] ++ if CONFIG['MOZ_SYSTEM_LIBEVENT']: OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS'] + + if CONFIG['MOZ_SYSTEM_LIBVPX']: + OS_LIBS += CONFIG['MOZ_LIBVPX_LIBS'] + + if not CONFIG['MOZ_TREE_PIXMAN']: + OS_LIBS += CONFIG['MOZ_PIXMAN_LIBS'] diff --git a/toolkit/moz.configure b/toolkit/moz.configure --- a/toolkit/moz.configure +++ b/toolkit/moz.configure -@@ -308,16 +308,30 @@ def freetype2_combined_info(fontconfig_i +@@ -331,16 +331,30 @@ def freetype2_combined_info(fontconfig_i return namespace( cflags=freetype2_info.cflags + fontconfig_info.cflags, libs=freetype2_info.libs + fontconfig_info.libs, diff --git a/firefox-kde/2003_nICER_implicit_decls.patch b/firefox-kde/2003_nICER_implicit_decls.patch deleted file mode 100644 index 407ac54..0000000 --- a/firefox-kde/2003_nICER_implicit_decls.patch +++ /dev/null @@ -1,93 +0,0 @@ -From: - -This commit fixes some implicit declarations in the nICEr thirt-party -component.The fixes apply to mozilla's modifications of nICEr rather than nICEr -upstream. Also of note, Mozilla bug 1374699 contains fixes and changes that deal -with these in addition to many other isues in a future firefox version, and -so this patch will not be upstreamed but rather dropped when it becomes obsolete -in firefox-58 or 59. - -diff --git a/media/mtransport/third_party/nICEr/src/ice/ice_component.c b/media/mtransport/third_party/nICEr/src/ice/ice_component.c ---- a/media/mtransport/third_party/nICEr/src/ice/ice_component.c -+++ b/media/mtransport/third_party/nICEr/src/ice/ice_component.c -@@ -49,17 +49,16 @@ static char *RCSSTRING __UNUSED__="$Id: - #include "nr_socket_multi_tcp.h" - #include "ice_reg.h" - #include "nr_crypto.h" - #include "r_time.h" - - static int nr_ice_component_stun_server_default_cb(void *cb_arg,nr_stun_server_ctx *stun_ctx,nr_socket *sock, nr_stun_server_request *req, int *dont_free, int *error); - static int nr_ice_pre_answer_request_destroy(nr_ice_pre_answer_request **parp); - void nr_ice_component_consent_schedule_consent_timer(nr_ice_component *comp); --void nr_ice_component_consent_destroy(nr_ice_component *comp); - - /* This function takes ownership of the contents of req (but not req itself) */ - static int nr_ice_pre_answer_request_create(nr_transport_addr *dst, nr_stun_server_request *req, nr_ice_pre_answer_request **parp) - { - int r, _status; - nr_ice_pre_answer_request *par = 0; - nr_stun_message_attribute *attr; - -diff --git a/media/mtransport/third_party/nICEr/src/ice/ice_component.h b/media/mtransport/third_party/nICEr/src/ice/ice_component.h ---- a/media/mtransport/third_party/nICEr/src/ice/ice_component.h -+++ b/media/mtransport/third_party/nICEr/src/ice/ice_component.h -@@ -80,16 +80,17 @@ struct nr_ice_component_ { - - STAILQ_ENTRY(nr_ice_component_)entry; - }; - - typedef STAILQ_HEAD(nr_ice_component_head_,nr_ice_component_) nr_ice_component_head; - - int nr_ice_component_create(struct nr_ice_media_stream_ *stream, int component_id, nr_ice_component **componentp); - int nr_ice_component_destroy(nr_ice_component **componentp); -+void nr_ice_component_consent_destroy(nr_ice_component *comp); - int nr_ice_component_initialize(struct nr_ice_ctx_ *ctx,nr_ice_component *component); - int nr_ice_component_maybe_prune_candidate(nr_ice_ctx *ctx, nr_ice_component *comp, nr_ice_candidate *c1, int *was_pruned); - int nr_ice_component_pair_candidate(nr_ice_peer_ctx *pctx, nr_ice_component *pcomp, nr_ice_candidate *lcand, int pair_all_remote); - int nr_ice_component_pair_candidates(nr_ice_peer_ctx *pctx, nr_ice_component *lcomp, nr_ice_component *pcomp); - int nr_ice_component_service_pre_answer_requests(nr_ice_peer_ctx *pctx, nr_ice_component *pcomp, char *username, int *serviced); - int nr_ice_component_nominated_pair(nr_ice_component *comp, nr_ice_cand_pair *pair); - int nr_ice_component_failed_pair(nr_ice_component *comp, nr_ice_cand_pair *pair); - int nr_ice_component_check_if_failed(nr_ice_component *comp); -diff --git a/media/mtransport/third_party/nICEr/src/stun/stun_client_ctx.c b/media/mtransport/third_party/nICEr/src/stun/stun_client_ctx.c ---- a/media/mtransport/third_party/nICEr/src/stun/stun_client_ctx.c -+++ b/media/mtransport/third_party/nICEr/src/stun/stun_client_ctx.c -@@ -39,16 +39,17 @@ static char *RCSSTRING __UNUSED__="$Id: - - #include - #include "stun.h" - #include "async_timer.h" - #include "registry.h" - #include "stun_reg.h" - #include "nr_crypto.h" - #include "r_time.h" -+#include "ice_ctx.h" - - static int nr_stun_client_send_request(nr_stun_client_ctx *ctx); - static void nr_stun_client_timer_expired_cb(NR_SOCKET s, int b, void *cb_arg); - static int nr_stun_client_get_password(void *arg, nr_stun_message *msg, Data **password); - - #define NR_STUN_TRANSPORT_ADDR_CHECK_WILDCARD 1 - #define NR_STUN_TRANSPORT_ADDR_CHECK_LOOPBACK 2 - -diff --git a/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c b/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c ---- a/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c -+++ b/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c -@@ -43,16 +43,17 @@ static char *RCSSTRING __UNUSED__="$Id: - #include - - #include "nr_api.h" - #include "r_time.h" - #include "async_timer.h" - #include "nr_socket_buffered_stun.h" - #include "stun.h" - #include "turn_client_ctx.h" -+#include "ice_ctx.h" - - int NR_LOG_TURN = 0; - - #define TURN_MAX_PENDING_BYTES 32000 - - #define TURN_RTO 100 /* Hardcoded RTO estimate */ - #define TURN_LIFETIME_REQUEST_SECONDS 3600 /* One hour */ - #define TURN_USECS_PER_S 1000000 diff --git a/firefox-kde/2004_fix_lto_builds.patch b/firefox-kde/2004_fix_lto_builds.patch deleted file mode 100644 index 5b16c8b..0000000 --- a/firefox-kde/2004_fix_lto_builds.patch +++ /dev/null @@ -1,17 +0,0 @@ -From: Jory A. Pratt -Modified: Luca Giambonini - -Enable to build with LTO support - -diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build ---- a/security/sandbox/linux/moz.build -+++ b/security/sandbox/linux/moz.build -@@ -100,7 +100,7 @@ - # from the function using it which breaks the build. Work around that by - # forcing there to be only one partition. - if '-flto' in CONFIG['OS_CXXFLAGS'] and CONFIG['CC_TYPE'] != 'clang': -- LDFLAGS += ['--param lto-partitions=1'] -+ LDFLAGS += ['--lto-partition=one'] - - DEFINES['NS_NO_XPCOM'] = True - DisableStlWrapping() diff --git a/firefox-kde/PKGBUILD b/firefox-kde/PKGBUILD index 5375fd2..2a2bac1 100644 --- a/firefox-kde/PKGBUILD +++ b/firefox-kde/PKGBUILD @@ -1,12 +1,12 @@ pkgname=firefox-kde -pkgver=61.0.2 +pkgver=62.0 pkgrel=1 pkgdesc="Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE" arch=('x86_64') license=('MPL' 'GPL' 'LGPL') url="https://www.mozilla.org/firefox/" depends=(gtk3 mozilla-common libxt startup-notification mime-types dbus-glib alsa-lib ffmpeg - libvpx libevent hunspell libproxy nss nspr pixman + libvpx libevent libproxy nss nspr pixman kio knotifications kwindowsystem ki18n) makedepends=(unzip zip diffutils python2 yasm mesa imake libpulse inetutils xorg-server-xvfb autoconf2.13 gtk2 gobject-introspection jack rust gconf @@ -14,10 +14,11 @@ makedepends=(unzip zip diffutils python2 yasm mesa imake libpulse inetutils xorg optdepends=('networkmanager: Location detection via available WiFi networks' 'libnotify: Notification integration' 'upower: Battery API' - 'firefox-i18n: for multilanguage support') + 'firefox-i18n: for multilanguage support' + 'hunspell: for spell check support') options=(!emptydirs !strip) screenshot="http://img864.imageshack.us/img864/5116/firefoxm.png" -provides=("firefox=${pkgver}" "kmozillahelper") +provides=("firefox=${pkgver}" "kmozillahelper=5.0.2") conflicts=('kmozillahelper') replaces=('kmozillahelper') # @@ -33,7 +34,7 @@ replaces=('kmozillahelper') # # Usually, we also port non-openSUSE specific patch together. # -_patchrev=a0c915e59e05 +_patchrev=18f97bd2c2bf _kmozillahelper_commit=2ca28e0 #v5.0.2 _patchurl=http://www.rosenauer.org/hg/mozilla/raw-file/$_patchrev source=("https://releases.mozilla.org/pub/firefox/releases/${pkgver}/source/${pkgname%%-kde}-${pkgver}.source.tar.xz" @@ -51,12 +52,10 @@ source=("https://releases.mozilla.org/pub/firefox/releases/${pkgver}/source/${pk "$_patchurl/mozilla-openaes-decl.patch" # Gentoo patch - 1004_fix_pie_detection.patch - 1005_fix_fortify_sources.patch - 2000_system_harfbuzz.patch - 2001_system_graphite2.patch - 2003_nICER_implicit_decls.patch - 2004_fix_lto_builds.patch + 1002_fix_pie_detection.patch + 1003_foritify_sources_properly.patch + 2000_system_harfbuzz_support.patch + 2001_system_graphite2_support.patch # Ubuntu patch unity-menubar.patch @@ -72,23 +71,21 @@ source=("https://releases.mozilla.org/pub/firefox/releases/${pkgver}/source/${pk #"$_patchurl/mozilla-prefer_plugin_pref.patch" removed from opensuse. reason: dropped mozilla-prefer_plugin_pref.patch as this feature is likely not worth maintaining further #"$_patchurl/mozilla-shared-nss-db.patch" shared by default now ) -sha256sums=('0bdecbbb2a955c9f4c5cd0b33acd1e47afcb6cd57ac89cf11257668e3cef202c' +sha256sums=('b3f850581f7d89655a05d5dc26ba010783934d86aa920399237f79dedd5daec9' 'SKIP' '6c2ea431c36afef67710547ae67e81975254309e9e1c82d8312f765caa950fe5' '1190f251471305f4c96a313b32aa66ee1549125300d7ce385356f45bd8ebcb3d' '7c3b3079e587fb5c7fd8725b4677efb270355c03c8d16513bbe619903038381e' - '336706c48f2a39eb3515227e97323a4933362d4f3b8f2d499f6e1ff843e1a18b' + 'c70835b481317d64b3c7f70c6feabd36bef67b5a54f3638aca8c9f31ad6087ca' '29acfc63f366510f471e395cc7a3815108072abda5851c48b64fdb894550408c' 'ef0f90c9134ef05b950f06a3ffbd699c2e5a5f99a4cdf9868e799534d68c204f' - 'a18680f62e07c3a217dcbd31d2b974db4a38eae8561bc1de65a5d725c1c42f9e' + 'ee1ee84425723bee11dfa16837e48b025b5cbf05ace861f8f170c0ea40230040' 'be7aa94f682dcb0feec3dd7c277d5d19e3c56fe3d4940203c942bbbefad6ed70' - '2b813ba66a3904b3e745d199479967dafc9b23e69db2238a932e013cdc21b91d' + '2b679a3cb082d73bec085b8529a56030a990106408f4d9e73915ec51f4c3259e' 'e5d8f0410ecd05119119e2d44a88fb5f1eb67a5b1035fd0a66b8cf167fb81c5d' - 'a850e98166d89f6541f04ac188c4bbdf075f2be601d3d6e88b17d20048ae5243' - '6d9a7d3059d9017c1d3c28b38f257fe99b48ebcb1d829d427db59f80826fdc89' - 'c39d22c4223c99181e1e828c1d6ba3bde035f497744ad423c60da91425ac4942' - 'd199e00089a407f1a08e1d547c822279afd1abbffa361fb471990413eeeb2862' - '47b9c634e511ec384e6984575428d50f2b6c31100f0f09b896d2602f7bd7d370') + '1e101b49faa804bd3fc6487c8e3cab4af7bd1f9aa32ad8199941739a6b3b71cb' + '4c75f71ba636934ded24eecb3a81f5ba6583e88db2dd9025c842aefc9c8ef216' + '9b5ef6e910e59054715a78d83a4d7ecf41cd8c202a7796a73f5fd6d53dc415be') # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) @@ -148,7 +145,6 @@ ac_add_options --with-distribution-id=org.chakralinux ac_add_options --enable-default-toolkit=cairo-gtk3 export MOZILLA_OFFICIAL=1 export MOZ_TELEMETRY_REPORTING=1 -export MOZ_ADDON_SIGNING=1 export MOZ_REQUIRE_SIGNING=1 # Keys @@ -166,7 +162,6 @@ ac_add_options --with-system-nspr ac_add_options --with-system-icu ac_add_options --with-system-png ac_add_options --enable-system-pixman -#ac_add_options --enable-system-hunspell #ac_add_options --enable-system-sqlite ac_add_options --enable-system-ffi ac_add_options --enable-libproxy @@ -195,12 +190,10 @@ END patch -Np0 -i "$srcdir/pgo-fix-missing-kdejs.patch" msg "Gentoo Patchset" - patch -Np1 -i $srcdir/1004_fix_pie_detection.patch - patch -Np1 -i $srcdir/1005_fix_fortify_sources.patch - patch -Np1 -i $srcdir/2000_system_harfbuzz.patch - patch -Np1 -i $srcdir/2001_system_graphite2.patch - patch -Np1 -i $srcdir/2003_nICER_implicit_decls.patch - patch -Np1 -i $srcdir/2004_fix_lto_builds.patch + patch -Np1 -i $srcdir/1002_fix_pie_detection.patch + patch -Np1 -i $srcdir/1003_foritify_sources_properly.patch + patch -Np1 -i $srcdir/2000_system_harfbuzz_support.patch + patch -Np1 -i $srcdir/2001_system_graphite2_support.patch msg "Ubuntu Patchset" patch -Np1 -i $srcdir/unity-menubar.patch @@ -266,6 +259,10 @@ pref("browser.shell.checkDefaultBrowser", false); // Don't disable our bundled extensions in the application directory pref("extensions.autoDisableScopes", 11); pref("extensions.shownSelectionUI", true); + +// Force HW acceleration +pref("layers.acceleration.force-enabled", true); +pref("webgl.force-enabled", true); END install -Dm644 kde.js "$pkgdir/usr/lib/firefox/browser/defaults/preferences/kde.js" diff --git a/firefox-kde/unity-menubar.patch b/firefox-kde/unity-menubar.patch index b0924f5..915433f 100644 --- a/firefox-kde/unity-menubar.patch +++ b/firefox-kde/unity-menubar.patch @@ -19,13 +19,13 @@ diff --git a/browser/base/content/browser-menubar.inc b/browser/base/content/bro + onpopupshowing="updateFileMenuUserContextUIVisibility('menu_newUserContext');"> menu { + -moz-binding: url("chrome://global/content/bindings/menu.xml#menu-menubar"); diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build +index d0edc29..a2fec84 100644 --- a/widget/gtk/moz.build +++ b/widget/gtk/moz.build -@@ -39,10 +39,18 @@ +@@ -39,10 +39,18 @@ UNIFIED_SOURCES += [ 'nsAppShell.cpp', 'nsBidiKeyboard.cpp', 'nsColorPicker.cpp', @@ -308,24 +309,23 @@ diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build 'nsNativeThemeGTK.cpp', 'nsSound.cpp', 'nsToolkit.cpp', -@@ -55,6 +63,8 @@ +@@ -55,6 +63,8 @@ UNIFIED_SOURCES += [ ] - + SOURCES += [ + 'nsMenu.cpp', # conflicts with X11 headers + 'nsNativeMenuService.cpp', 'nsWindow.cpp', # conflicts with X11 headers ] - -@@ -125,6 +135,7 @@ - + +@@ -125,6 +135,7 @@ FINAL_LIBRARY = 'xul' + LOCAL_INCLUDES += [ '/layout/generic', + '/layout/style', '/layout/xul', '/other-licenses/atk-1.0', '/toolkit/xre', - diff --git a/widget/gtk/nsDbusmenu.cpp b/widget/gtk/nsDbusmenu.cpp new file mode 100644 --- /dev/null @@ -838,7 +838,7 @@ new file mode 100644 + continue; + } + -+ AppendChild(Move(child)); ++ AppendChild(std::move(child)); + } +} + @@ -913,7 +913,7 @@ new file mode 100644 + EnsureNoPlaceholderItem(); + } + -+ nsMenuContainer::InsertChildAfter(Move(aChild), aPrevSibling, ++ nsMenuContainer::InsertChildAfter(std::move(aChild), aPrevSibling, + !IsInBatchedUpdate()); + StructureMutated(); +} @@ -925,7 +925,7 @@ new file mode 100644 + EnsureNoPlaceholderItem(); + } + -+ nsMenuContainer::AppendChild(Move(aChild), !IsInBatchedUpdate()); ++ nsMenuContainer::AppendChild(std::move(aChild), !IsInBatchedUpdate()); + StructureMutated(); +} + @@ -967,7 +967,7 @@ new file mode 100644 + UniquePtr child = CreateChild(aChild); + + if (child) { -+ InsertChildAfter(Move(child), aPrevSibling); ++ InsertChildAfter(std::move(child), aPrevSibling); + } + } else { + Build(); @@ -1713,7 +1713,7 @@ new file mode 100644 + continue; + } + -+ AppendChild(Move(child)); ++ AppendChild(std::move(child)); + } +} + @@ -1880,7 +1880,7 @@ new file mode 100644 + return; + } + -+ InsertChildAfter(Move(child), aPrevSibling); ++ InsertChildAfter(std::move(child), aPrevSibling); +} + +void @@ -1954,7 +1954,7 @@ new file mode 100644 + return nullptr; + } + -+ return Move(menubar); ++ return std::move(menubar); +} + +nsMenuObject::EType @@ -2235,7 +2235,7 @@ new file mode 100644 + } + + UniquePtr res = ctor(this, aContent); -+ return Move(res); ++ return std::move(res); +} + +size_t @@ -2298,7 +2298,7 @@ new file mode 100644 + index)); + } + -+ MOZ_ALWAYS_TRUE(mChildren.InsertElementAt(index, Move(aChild))); ++ MOZ_ALWAYS_TRUE(mChildren.InsertElementAt(index, std::move(aChild))); +} + +void @@ -2312,7 +2312,7 @@ new file mode 100644 + aChild->GetNativeData())); + } + -+ MOZ_ALWAYS_TRUE(mChildren.AppendElement(Move(aChild))); ++ MOZ_ALWAYS_TRUE(mChildren.AppendElement(std::move(aChild))); +} + +bool @@ -5334,10 +5334,10 @@ new file mode 100644 + NS_ENSURE_ARG(aParent); + NS_ENSURE_ARG(aMenuBarNode); + -+ if (aMenuBarNode->AsElement()->AttrValueIs(kNameSpaceID_None, -+ nsNativeMenuAtoms::_moz_menubarkeeplocal, -+ nsGkAtoms::_true, -+ eCaseMatters)) { ++ if (aMenuBarNode->AttrValueIs(kNameSpaceID_None, ++ nsNativeMenuAtoms::_moz_menubarkeeplocal, ++ nsGkAtoms::_true, ++ eCaseMatters)) { + return NS_OK; + } + @@ -5358,7 +5358,7 @@ new file mode 100644 + mMenuBars.AppendElement(menubar.get()); + RegisterNativeMenuBar(menubar.get()); + -+ static_cast(aParent)->SetMenuBar(Move(menubar)); ++ static_cast(aParent)->SetMenuBar(std::move(menubar)); + + return NS_OK; +} @@ -5497,7 +5497,7 @@ new file mode 100644 diff --git a/widget/gtk/nsWidgetFactory.cpp b/widget/gtk/nsWidgetFactory.cpp --- a/widget/gtk/nsWidgetFactory.cpp +++ b/widget/gtk/nsWidgetFactory.cpp -@@ -43,16 +43,18 @@ +@@ -44,16 +44,18 @@ #include "nsImageToPixbuf.h" #include "nsPrintDialogGTK.h" @@ -5516,7 +5516,7 @@ diff --git a/widget/gtk/nsWidgetFactory.cpp b/widget/gtk/nsWidgetFactory.cpp #include "mozilla/gfx/2D.h" #include "mozilla/widget/ScreenManager.h" #include -@@ -111,16 +113,19 @@ nsNativeThemeGTKConstructor(nsISupports +@@ -112,16 +114,19 @@ nsNativeThemeGTKConstructor(nsISupports namespace mozilla { namespace widget { // This constructor should really be shared with all platforms. @@ -5536,7 +5536,7 @@ diff --git a/widget/gtk/nsWidgetFactory.cpp b/widget/gtk/nsWidgetFactory.cpp NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsPrintDialogServiceGTK, Init) #endif -@@ -224,16 +229,17 @@ NS_DEFINE_NAMED_CID(NS_PRINTSESSION_CID) +@@ -225,16 +230,17 @@ NS_DEFINE_NAMED_CID(NS_PRINTSESSION_CID) NS_DEFINE_NAMED_CID(NS_DEVICE_CONTEXT_SPEC_CID); NS_DEFINE_NAMED_CID(NS_PRINTDIALOGSERVICE_CID); #endif @@ -5554,7 +5554,7 @@ diff --git a/widget/gtk/nsWidgetFactory.cpp b/widget/gtk/nsWidgetFactory.cpp { &kNS_APPSHELL_CID, false, nullptr, nsAppShellConstructor, Module::ALLOW_IN_GPU_PROCESS }, { &kNS_COLORPICKER_CID, false, nullptr, nsColorPickerConstructor, Module::MAIN_PROCESS_ONLY }, { &kNS_FILEPICKER_CID, false, nullptr, nsFilePickerConstructor, Module::MAIN_PROCESS_ONLY }, -@@ -260,16 +266,17 @@ static const mozilla::Module::CIDEntry k +@@ -261,16 +267,17 @@ static const mozilla::Module::CIDEntry k { &kNS_DEVICE_CONTEXT_SPEC_CID, false, nullptr, nsDeviceContextSpecGTKConstructor }, { &kNS_PRINTDIALOGSERVICE_CID, false, nullptr, nsPrintDialogServiceGTKConstructor }, #endif @@ -5572,7 +5572,7 @@ diff --git a/widget/gtk/nsWidgetFactory.cpp b/widget/gtk/nsWidgetFactory.cpp { "@mozilla.org/widgets/child_window/gtk;1", &kNS_CHILD_CID }, { "@mozilla.org/widget/appshell/gtk;1", &kNS_APPSHELL_CID, Module::ALLOW_IN_GPU_PROCESS }, { "@mozilla.org/colorpicker;1", &kNS_COLORPICKER_CID, Module::MAIN_PROCESS_ONLY }, -@@ -298,16 +305,17 @@ static const mozilla::Module::ContractID +@@ -299,16 +306,17 @@ static const mozilla::Module::ContractID { "@mozilla.org/gfx/devicecontextspec;1", &kNS_DEVICE_CONTEXT_SPEC_CID }, { NS_PRINTDIALOGSERVICE_CONTRACTID, &kNS_PRINTDIALOGSERVICE_CID }, #endif @@ -5611,7 +5611,7 @@ diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp #include "nsGtkUtils.h" #include "nsIObserverService.h" #include "mozilla/layers/LayersTypes.h" -@@ -5219,16 +5220,21 @@ nsWindow::SetWindowDecoration(nsBorderSt +@@ -5246,16 +5247,21 @@ nsWindow::SetWindowDecoration(nsBorderSt } void @@ -5622,7 +5622,7 @@ diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp +void +nsWindow::SetMenuBar(UniquePtr aMenuBar) { -+ mMenuBar = mozilla::Move(aMenuBar); ++ mMenuBar = std::move(aMenuBar); +} + bool @@ -5655,7 +5655,7 @@ diff --git a/widget/gtk/nsWindow.h b/widget/gtk/nsWindow.h #include "Units.h" extern mozilla::LazyLogModule gWidgetLog; -@@ -159,16 +161,18 @@ public: +@@ -173,16 +175,18 @@ public: uint16_t aDuration, nsISupports* aData, nsIRunnable* aCallback) override; @@ -5674,7 +5674,7 @@ diff --git a/widget/gtk/nsWindow.h b/widget/gtk/nsWindow.h // utility method, -1 if no change should be made, otherwise returns a // value that can be passed to gdk_window_set_decorations -@@ -632,11 +636,13 @@ private: +@@ -646,11 +650,13 @@ private: * all windows in a hierarchy. If the children are released after the top * level window is released, the children still have a valid pointer, * however, IME doesn't work at that time. @@ -5717,7 +5717,7 @@ diff --git a/widget/moz.build b/widget/moz.build diff --git a/xpfe/appshell/nsWebShellWindow.cpp b/xpfe/appshell/nsWebShellWindow.cpp --- a/xpfe/appshell/nsWebShellWindow.cpp +++ b/xpfe/appshell/nsWebShellWindow.cpp -@@ -62,17 +62,17 @@ +@@ -61,17 +61,17 @@ #include "mozilla/DebugOnly.h" #include "mozilla/EventDispatcher.h" #include "mozilla/MouseEvents.h"