Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.netbsd.org", Issuer "Postmaster NetBSD.org" (verified OK)) by mollari.NetBSD.org (Postfix) with ESMTPS id 6F90F7A20D for ; Thu, 27 Apr 2017 13:38:38 +0000 (UTC) Received: by mail.netbsd.org (Postfix, from userid 605) id 168A484DB0; Thu, 27 Apr 2017 13:38:38 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 8C65784D8C for ; Thu, 27 Apr 2017 13:38:37 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id h1tF8yFIXb18 for ; Thu, 27 Apr 2017 13:38:19 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.netbsd.org [199.233.217.197]) by mail.netbsd.org (Postfix) with ESMTP id 7A40784CE2 for ; Thu, 27 Apr 2017 13:38:19 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id 72F0AFBE4; Thu, 27 Apr 2017 13:38:19 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_1493300299121430" MIME-Version: 1.0 Date: Thu, 27 Apr 2017 13:38:19 +0000 From: "Ryo ONODERA" Subject: CVS commit: pkgsrc/mail/thunderbird45 To: pkgsrc-changes@NetBSD.org Reply-To: ryoon@netbsd.org X-Mailer: log_accum Message-Id: <20170427133819.72F0AFBE4@cvs.NetBSD.org> Sender: pkgsrc-changes-owner@NetBSD.org List-Id: pkgsrc-changes.NetBSD.org Precedence: bulk List-Unsubscribe: This is a multi-part message in MIME format. --_----------=_1493300299121430 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: ryoon Date: Thu Apr 27 13:38:19 UTC 2017 Added Files: pkgsrc/mail/thunderbird45: DESCR Makefile PLIST PLIST.lightning distinfo hacks.mk options.mk pkgsrc/mail/thunderbird45/files: desktop.in patch-ipc_src_Makefile pkgsrc/mail/thunderbird45/patches: patch-calendar_lightning_Makefile.in patch-calendar_lightning_build_universal.mk patch-calendar_providers_gdata_Makefile.in patch-ldap_c-sdk_include_portable.h patch-mail_app_nsMailApp.cpp patch-mail_components_shell_nsMailGNOMEIntegration.cpp patch-mail_installer_package-manifest.in patch-mail_installer_removed-files.in patch-mozilla_browser_branding_unofficial_locales_en-US_brand.dtd patch-mozilla_browser_installer_package-manifest.in patch-mozilla_build_autoconf_compiler-opts.m4 patch-mozilla_build_autoconf_nss.m4 patch-mozilla_build_gyp.mozbuild patch-mozilla_build_pgo_profileserver.py patch-mozilla_config_Makefile.in patch-mozilla_config_baseconfig.mk patch-mozilla_config_external_moz.build patch-mozilla_config_rules.mk patch-mozilla_config_stl__wrappers_ios patch-mozilla_config_stl__wrappers_ostream patch-mozilla_config_system-headers patch-mozilla_configure.in patch-mozilla_dom_base_DOMRequest.cpp patch-mozilla_dom_base_moz.build patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp patch-mozilla_dom_media_moz.build patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp patch-mozilla_dom_plugins_ipc_PluginModuleChild.h patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp patch-mozilla_dom_system_OSFileConstants.cpp patch-mozilla_extensions_spellcheck_hunspell_glue_mozHunspell.cpp patch-mozilla_gfx_cairo_libpixman_src_pixman-arm-neon-asm.S patch-mozilla_gfx_gl_GLContextProviderGLX.cpp patch-mozilla_gfx_graphite2_src_Bidi.cpp patch-mozilla_gfx_moz.build patch-mozilla_gfx_skia_generate__mozbuild.py patch-mozilla_gfx_skia_moz.build patch-mozilla_gfx_skia_skia_src_core_SkUtilsArm.cpp patch-mozilla_gfx_skia_skia_src_opts_SkBitmapProcState__opts__arm.cpp patch-mozilla_gfx_skia_skia_src_opts_memset.arm.S patch-mozilla_gfx_thebes_moz.build patch-mozilla_gfx_ycbcr_moz.build patch-mozilla_gfx_ycbcr_yuv__row__arm.S patch-mozilla_image_decoders_nsJPEGDecoder.cpp patch-mozilla_intl_hyphenation_glue_hnjalloc.h patch-mozilla_ipc_chromium_src_base_atomicops.h patch-mozilla_ipc_chromium_src_base_file__util__posix.cc patch-mozilla_ipc_chromium_src_base_message__loop.cc patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc patch-mozilla_ipc_chromium_src_base_platform__thread.h patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc patch-mozilla_ipc_chromium_src_base_process__util.h patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc patch-mozilla_ipc_chromium_src_base_process__util__posix.cc patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h patch-mozilla_ipc_chromium_src_base_sys__info__posix.cc patch-mozilla_ipc_chromium_src_base_time__posix.cc patch-mozilla_ipc_chromium_src_build_build__config.h patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h patch-mozilla_ipc_glue_GeckoChildProcessHost.cpp patch-mozilla_ipc_glue_StringUtil.cpp patch-mozilla_ipc_glue_moz.build patch-mozilla_js_src_configure.in patch-mozilla_js_src_ctypes_CTypes.h patch-mozilla_js_src_frontend_ParseMaps.cpp patch-mozilla_js_src_jit_LIR.cpp patch-mozilla_js_src_jit_MIR.cpp patch-mozilla_js_src_jit_arm_Architecture-arm.cpp patch-mozilla_js_src_jsdate.cpp patch-mozilla_js_src_jskwgen.cpp patch-mozilla_js_src_jsmath.cpp patch-mozilla_js_src_jsnativestack.cpp patch-mozilla_js_src_shell_jsoptparse.cpp patch-mozilla_js_src_vm_SPSProfiler.cpp patch-mozilla_js_xpconnect_src_XPCConvert.cpp patch-mozilla_js_xpconnect_src_xpcprivate.h patch-mozilla_media_libcubeb_src_cubeb.c patch-mozilla_media_libcubeb_src_cubeb__alsa.c patch-mozilla_media_libcubeb_src_cubeb__oss.c patch-mozilla_media_libcubeb_src_moz.build patch-mozilla_media_libpng_pngpriv.h patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp patch-mozilla_media_libstagefright_frameworks_av_include_media_stagefright_foundation_AString.h patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c patch-mozilla_media_libstagefright_system_core_liblog_logprint.c patch-mozilla_media_libtheora_lib_arm_armcpu.c patch-mozilla_media_libtheora_lib_info.c patch-mozilla_media_libtheora_moz.build patch-mozilla_media_libtremor_Makefile.in patch-mozilla_media_libtremor_moz.build patch-mozilla_media_libvorbis_Makefile.in patch-mozilla_media_libvorbis_lib_vorbis__info.c patch-mozilla_media_libvorbis_moz.build patch-mozilla_media_libyuv_include_libyuv_scale__row.h patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h patch-mozilla_media_openmax__dl_dl_api_armCOMM__s.h patch-mozilla_media_webrtc_signaling_test_common.build patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp patch-mozilla_memory_build_mozjemalloc__compat.c patch-mozilla_memory_mozalloc_mozalloc__abort.cpp patch-mozilla_memory_volatile_VolatileBufferOSX.cpp patch-mozilla_mfbt_Attributes.h patch-mozilla_mfbt_Poison.cpp patch-mozilla_modules_libjar_nsZipArchive.cpp patch-mozilla_modules_libpref_init_all.js patch-mozilla_mozglue_build_arm.cpp patch-mozilla_mozglue_build_arm.h patch-mozilla_netwerk_dns_moz.build patch-mozilla_storage_SQLiteMutex.h patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h patch-mozilla_toolkit_library_moz.build patch-mozilla_toolkit_mozapps_installer_packager.mk patch-mozilla_toolkit_mozapps_installer_packager.mk.orig patch-mozilla_toolkit_xre_glxtest.cpp patch-mozilla_toolkit_xre_nsAppRunner.cpp patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp patch-mozilla_webapprt_moz.build patch-mozilla_xpcom_base_nscore.h patch-mozilla_xpcom_build_PoisonIOInterposer.h patch-mozilla_xpcom_components_Module.h patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp patch-mozilla_xulrunner_installer_Makefile.in patch-mozilla_xulrunner_installer_libxul-embedding.pc.in patch-mozilla_xulrunner_installer_libxul.pc.in Log Message: Import thunderbird45-45.8.0 as mail/thunderbird45. Mozilla Thunderbird is a redesign of the Mozilla mail component. The goal is to produce a cross platform stand alone mail application using the XUL user interface language. This version uses the gtk2 toolkit. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 pkgsrc/mail/thunderbird45/DESCR \ pkgsrc/mail/thunderbird45/Makefile pkgsrc/mail/thunderbird45/PLIST \ pkgsrc/mail/thunderbird45/PLIST.lightning \ pkgsrc/mail/thunderbird45/distinfo pkgsrc/mail/thunderbird45/hacks.mk \ pkgsrc/mail/thunderbird45/options.mk cvs rdiff -u -r0 -r1.1 pkgsrc/mail/thunderbird45/files/desktop.in \ pkgsrc/mail/thunderbird45/files/patch-ipc_src_Makefile cvs rdiff -u -r0 -r1.1 \ pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_Makefile.in \ pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_build_universal.mk \ pkgsrc/mail/thunderbird45/patches/patch-calendar_providers_gdata_Makefile.in \ pkgsrc/mail/thunderbird45/patches/patch-ldap_c-sdk_include_portable.h \ pkgsrc/mail/thunderbird45/patches/patch-mail_app_nsMailApp.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mail_installer_package-manifest.in \ pkgsrc/mail/thunderbird45/patches/patch-mail_installer_removed-files.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_branding_unofficial_locales_en-US_brand.dtd \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_installer_package-manifest.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_compiler-opts.m4 \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_nss.m4 \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_gyp.mozbuild \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_pgo_profileserver.py \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_Makefile.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_baseconfig.mk \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_external_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_rules.mk \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ios \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ostream \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_system-headers \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_configure.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_DOMRequest.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_system_OSFileConstants.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_extensions_spellcheck_hunspell_glue_mozHunspell.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_cairo_libpixman_src_pixman-arm-neon-asm.S \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_gl_GLContextProviderGLX.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_graphite2_src_Bidi.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_generate__mozbuild.py \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_core_SkUtilsArm.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_SkBitmapProcState__opts__arm.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_memset.arm.S \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_thebes_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_yuv__row__arm.S \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_intl_hyphenation_glue_hnjalloc.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_atomicops.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_file__util__posix.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__loop.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__posix.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_sys__info__posix.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_time__posix.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_build_build__config.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_GeckoChildProcessHost.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_StringUtil.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_configure.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_ctypes_CTypes.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_frontend_ParseMaps.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_LIR.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_MIR.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_arm_Architecture-arm.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsdate.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jskwgen.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsmath.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsnativestack.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_shell_jsoptparse.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_vm_SPSProfiler.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_XPCConvert.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_xpcprivate.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__oss.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libpng_pngpriv.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_include_media_stagefright_foundation_AString.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_logprint.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_arm_armcpu.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_info.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_Makefile.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_Makefile.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_lib_vorbis__info.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libyuv_include_libyuv_scale__row.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_openmax__dl_dl_api_armCOMM__s.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_signaling_test_common.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_build_mozjemalloc__compat.c \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_volatile_VolatileBufferOSX.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Attributes.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Poison.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libjar_nsZipArchive.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libpref_init_all.js \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_netwerk_dns_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_storage_SQLiteMutex.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_library_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk.orig \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_glxtest.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsAppRunner.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_webapprt_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_base_nscore.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_components_Module.h \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_Makefile.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul-embedding.pc.in \ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul.pc.in Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_1493300299121430 Content-Disposition: inline Content-Length: 629518 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=utf-8 Added files: Index: pkgsrc/mail/thunderbird45/DESCR diff -u /dev/null pkgsrc/mail/thunderbird45/DESCR:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/DESCR Thu Apr 27 13:38:18 2017 @@ -0,0 +1,3 @@ +Mozilla Thunderbird is a redesign of the Mozilla mail component. The +goal is to produce a cross platform stand alone mail application using +the XUL user interface language. This version uses the gtk2 toolkit. Index: pkgsrc/mail/thunderbird45/Makefile diff -u /dev/null pkgsrc/mail/thunderbird45/Makefile:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/Makefile Thu Apr 27 13:38:18 2017 @@ -0,0 +1,95 @@ +# $NetBSD: Makefile,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +DISTNAME= thunderbird-${TB_VER}.source +PKGNAME= thunderbird45-${TB_VER} +TB_VER= 45.8.0 +CATEGORIES= mail +MASTER_SITES= ${MASTER_SITE_MOZILLA:=thunderbird/releases/${TB_VER}/source/} +EXTRACT_SUFX= .tar.xz + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= http://www.mozillamessaging.com/en-US/thunderbird/ +COMMENT= Organize, secure and customize your mail + +USE_TOOLS+= unzip pax +WRKSRC= ${WRKDIR}/${PKGNAME_NOREV:C/thunderbird45/thunderbird/} +MOZILLA_DIR= mozilla/ +PLIST_SRC+= ${PLIST_SRC_DFLT} + +CONFIG_GUESS_OVERRIDE+= ldap/sdks/c-sdk/config/autoconf/config.guess +CONFIG_SUB_OVERRIDE+= ldap/sdks/c-sdk/config/autoconf/config.sub + +CONFIGURE_ARGS+= --enable-application=mail +# Disable WebRTC support for Thunderbird unconditionally. +CONFIGURE_ARGS+= --disable-webrtc + +NOT_PAX_MPROTECT_SAFE+= lib/thunderbird45/thunderbird +NOT_PAX_MPROTECT_SAFE+= lib/thunderbird45/thunderbird-bin + +ALL_ENV+= MOZILLA_PKG_NAME=thunderbird45 + +.include "../../mk/bsd.prefs.mk" + +#SUBST_CLASSES+= ext-compat +#SUBST_STAGE.ext-compat= pre-configure +#SUBST_MESSAGE.ext-compat= Fixing extension compatibility +#SUBST_FILES.ext-compat= mailnews/extensions/enigmail/package/install.rdf +#SUBST_FILES.ext-compat+= calendar/*/install.rdf +#SUBST_FILES.ext-compat+= calendar/*/*/install.rdf +#SUBST_SED.ext-compat= -e 's,\(\).*<,\19.0<,g' + +SUBST_CLASSES+= sys-dic +SUBST_STAGE.sys-dic= pre-configure +SUBST_MESSAGE.sys-dic= Reference to system hunspell dictionaries. +SUBST_FILES.sys-dic= mozilla/extensions/spellcheck/hunspell/src/mozHunspell.cpp +SUBST_VARS.sys-dic= PREFIX + +CHECK_INTERPRETER_SKIP+=lib/thunderbird-sdk/sdk/bin/header.py +CHECK_INTERPRETER_SKIP+=lib/thunderbird-sdk/sdk/bin/typelib.py +CHECK_INTERPRETER_SKIP+=lib/thunderbird-sdk/sdk/bin/xpidl.py +CHECK_INTERPRETER_SKIP+=lib/thunderbird-sdk/sdk/bin/xpt.py + +pre-configure: + cd ${WRKSRC} && mkdir ${OBJDIR} + cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} autoconf + cd ${WRKSRC}/mozilla && ${SETENV} ${CONFIGURE_ENV} autoconf + cd ${WRKSRC}/mozilla/js/src && ${SETENV} ${CONFIGURE_ENV} autoconf + touch ${WRKSRC}/.mozconfig + +do-build: +# XXX for some reason it doesn't work unless -j is explicitly specified + cd ${WRKSRC}/${OBJDIR} && ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} -j${MAKE_JOBS:U1} + +MOZILLA=thunderbird45 +MOZILLA_NAME=thunderbird45 +post-build: + ${SED} -e 's|@MOZILLA@|${MOZILLA}|g' \ + -e 's|@MOZILLA_NAME@|${MOZILLA_NAME}|g' \ + -e 's|@MOZILLA_ICON@|${MOZILLA}.png|g' \ + < ${FILESDIR}/desktop.in \ + > ${WRKDIR}/desktop + +INSTALLATION_DIRS+= lib/${MOZILLA}/extensions +INSTALLATION_DIRS+= share/applications share/pixmaps +post-install: + ${INSTALL_DATA} ${WRKDIR}/desktop \ + ${DESTDIR}${PREFIX}/share/applications/${MOZILLA}.desktop + ${INSTALL_DATA} ${WRKSRC}/${OBJDIR}/dist/thunderbird/chrome/icons/default/default48.png \ + ${DESTDIR}${PREFIX}/share/pixmaps/${MOZILLA}.png + @${STEP_MSG} "Installing bundled thunderbird extensions." + rm -rf ${WRKDIR}/extensions + ${MKDIR} ${WRKDIR}/extensions + ${RUN} for e in ${XPI_FILES}; do \ + subdir="`${UNZIP_CMD} -c "$$e" install.rdf | awk '/^ / {sub(".*","");sub(".*","");print;exit;}'`" && \ + ${MKDIR} "${WRKDIR}/extensions/$$subdir" && \ + cd "${WRKDIR}/extensions/$$subdir" && \ + ${UNZIP_CMD} -aqo $$e; \ + done + cd ${WRKDIR}/extensions && pax -rw . \ + ${DESTDIR}${PREFIX}/lib/${MOZILLA}/extensions/. + rm -rf ${WRKDIR}/extensions + +.include "../../www/firefox45/mozilla-common.mk" +.include "options.mk" +.include "../../sysutils/desktop-file-utils/desktopdb.mk" +.include "../../mk/bsd.pkg.mk" Index: pkgsrc/mail/thunderbird45/PLIST diff -u /dev/null pkgsrc/mail/thunderbird45/PLIST:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/PLIST Thu Apr 27 13:38:18 2017 @@ -0,0 +1,3025 @@ +@comment $NetBSD: PLIST,v 1.1 2017/04/27 13:38:18 ryoon Exp $ +bin/thunderbird45 +lib/thunderbird45/application.ini +lib/thunderbird45/blocklist.xml +lib/thunderbird45/chrome.manifest +lib/thunderbird45/chrome/chat/content/chat/browserRequest.js +lib/thunderbird45/chrome/chat/content/chat/browserRequest.xul +lib/thunderbird45/chrome/chat/content/chat/conv.html +lib/thunderbird45/chrome/chat/content/chat/convbrowser.xml +lib/thunderbird45/chrome/chat/content/chat/imtooltip.css +lib/thunderbird45/chrome/chat/content/chat/imtooltip.xml +lib/thunderbird45/chrome/chat/skin/classic/chat/available-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/available.png +lib/thunderbird45/chrome/chat/skin/classic/chat/away-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/away.png +lib/thunderbird45/chrome/chat/skin/classic/chat/browserRequest.css +lib/thunderbird45/chrome/chat/skin/classic/chat/chat-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/chat-left-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/conv.css +lib/thunderbird45/chrome/chat/skin/classic/chat/icons/insecure.png +lib/thunderbird45/chrome/chat/skin/classic/chat/icons/secure.png +lib/thunderbird45/chrome/chat/skin/classic/chat/idle-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/idle.png +lib/thunderbird45/chrome/chat/skin/classic/chat/imtooltip.css +lib/thunderbird45/chrome/chat/skin/classic/chat/loading.png +lib/thunderbird45/chrome/chat/skin/classic/chat/mobile-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/mobile.png +lib/thunderbird45/chrome/chat/skin/classic/chat/offline-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/offline.png +lib/thunderbird45/chrome/chat/skin/classic/chat/prpl-generic/icon.png +lib/thunderbird45/chrome/chat/skin/classic/chat/prpl-generic/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/chat/prpl-generic/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/chat/prpl-unknown/icon.png +lib/thunderbird45/chrome/chat/skin/classic/chat/prpl-unknown/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/chat/prpl-unknown/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/chat/status.css +lib/thunderbird45/chrome/chat/skin/classic/chat/typed-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/typing-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/unknown-16.png +lib/thunderbird45/chrome/chat/skin/classic/chat/unknown.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/facebook/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/facebook/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/facebook/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/gtalk/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/gtalk/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/gtalk/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/irc/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/irc/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/irc/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/odnoklassniki/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/odnoklassniki/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/odnoklassniki/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/skype/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/skype/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/skype/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/twitter/icon-left.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/twitter/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/twitter/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/twitter/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/xmpp/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/xmpp/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/xmpp/icon48.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/yahoo/icon.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/yahoo/icon32.png +lib/thunderbird45/chrome/chat/skin/classic/prpl/yahoo/icon48.png +lib/thunderbird45/chrome/chrome.manifest +lib/thunderbird45/chrome/classic/skin/classic/communicator/communicator.css +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-cool.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-cry.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-embarassed.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-foot-in-mouth.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-frown.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-innocent.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-kiss.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-laughing.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-money-mouth.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-sealed.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-smile.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-surprised.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-tongue-out.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-undecided.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-wink.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/icons/smileys/smiley-yell.png +lib/thunderbird45/chrome/classic/skin/classic/communicator/smileys.css +lib/thunderbird45/chrome/classic/skin/classic/editor/EditorDialog.css +lib/thunderbird45/chrome/classic/skin/classic/editor/editor.css +lib/thunderbird45/chrome/classic/skin/classic/editor/icons/img-align-bottom.gif +lib/thunderbird45/chrome/classic/skin/classic/editor/icons/img-align-left.gif +lib/thunderbird45/chrome/classic/skin/classic/editor/icons/img-align-middle.gif +lib/thunderbird45/chrome/classic/skin/classic/editor/icons/img-align-right.gif +lib/thunderbird45/chrome/classic/skin/classic/editor/icons/img-align-top.gif +lib/thunderbird45/chrome/classic/skin/classic/messenger-newsblog/feed-subscriptions.css +lib/thunderbird45/chrome/classic/skin/classic/messenger-newsblog/icons/rss-feed.png +lib/thunderbird45/chrome/classic/skin/classic/messenger-newsblog/icons/server-rss.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/aboutNetError.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/aboutSupport.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountCentral.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountCreation.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountManage.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountWizard.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/account-settings.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/create-account.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/manage-filters.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/manage-imap.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/manage-newsgroups.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/manage-rss.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/offline-settings.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/read-messages.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/search-messages.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/accountcentral/write-message.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/activity.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/addItemIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/buttons.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/compactMailIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/copyMailIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/defaultEventIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/defaultProcessIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/defaultWarningIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/deleteMailIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/indexMailIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/moveMailIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/removeItemIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/sendMailIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/syncMailIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/activity/undoIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/abContactsPanel.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/abResultsPane.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/addressbook.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/cardDialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/abcard-large.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/abcard.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/ablist.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/addrbook.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/addressbook-toolbar.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/contact-generic-tiny.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/contact-generic.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/remote-addrbook-error.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/remote-addrbook.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/addressbook/icons/secure-remote-addrbook.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/attachmentList.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/browserRequest.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/chat.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/cloudfile/Hightail/check.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/cloudfile/Hightail/fileExceedsLimit.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/cloudfile/Hightail/settings.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/cloudfile/addAccountDialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/contactStarred.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/dialogs.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/downloads/aboutDownloads.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/downloads/download.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/editContactOverlay.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/filterDialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/folderMenus.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/folderPane.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/founder.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/glodaFacetView.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/half-operator.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow-dn-blue.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow-dn-grey.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-down-dim.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-down.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-left-dim.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-left.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-right-dim.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-right.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-up-dim.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/arrow-up.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/arrow/foldercycler-arrow.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/attachment-col.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/attachment-deleted-large.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/attachment-deleted.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/black_pin.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/blacklist.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/box-logo.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/cancel.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/cert-error.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/chat-toolbar.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/check.gif +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/close-button.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/columnpicker.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/connecting.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/dropmarker-hover.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/dropmarker.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/empty-search-results.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/error.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/exclude-selected.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/exclude.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/filterbar.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/flag-col.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/flag-col.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/folder-new-star.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/folder-pane.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/hightail.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/identity.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/insecure.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/junk-col.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/junk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/loading.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/mail-toolbar.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/message-ignored.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/message-list.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/message.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/multicolor.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/new-mail-alert.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/notchecked.gif +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/notloading.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/offline.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/online.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/phishing.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/readcol.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/red_pin.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/remote-blocked.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/row.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/search-arrow.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/secure.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/server.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/status-small.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/status.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/thread-col.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/thread-ignored.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/thread-watched.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/thread.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/tick.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/timeline-inverted.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/timeline.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/toolbarbutton-arrow-inverted.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/toolbarbutton-arrow.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/update.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/zoomout-hover.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/icons/zoomout.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/imAccountWizard.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/imAccounts.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/imMenulist.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/imRichlistbox.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/imageFilters.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/junkMail.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/mailWindow1.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/messageBody.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/messageHeader.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/messageQuotes.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/messageWindow.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/messenger.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/messengerLWTheme.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/messengercompose/compose-toolbar.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/messengercompose/format-buttons.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/messengercompose/linux-noise.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/messengercompose/messengercompose.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/msgSelectOffline.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/multimessageview.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/accountProvisioner.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/search.gif +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/search.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/spinner.gif +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/success-addons.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/success-border.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/success-compose.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailaccount/success-signature.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/newmailalert.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/noise.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/operator.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/aboutPreferences.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/advanced.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/alwaysAsk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/applications.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/attachments.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/auth-error.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/background.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/chat.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/composition.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/dialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/display.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/general.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/hover.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/preferences.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/privacy.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/security.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/preferences/selected.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/primaryToolbar.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/quickFilterBar.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/sanitizeDialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/searchBox.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/searchDialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/section_collapsed.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/section_expanded.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/accountProvisioner.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/addressbook.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/in-content/aboutPreferences.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/in-content/dialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/in-content/icons.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/mailWindow1.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/messageHeader.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/messenger.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/shared/tabmail.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/sharedPlatform.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/certFetchingStatus.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/hdrCryptoNotOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/hdrCryptoOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/hdrSignNotOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/hdrSignOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/hdrSignUnknown.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/sbCryptoNotOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/sbCryptoOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/sbSignNotOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/sbSignOk.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/icons/sbSignUnknown.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/msgCompSMIMEOverlay.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/msgCompSecurityInfo.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/msgHdrViewSMIMEOverlay.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/msgReadSMIMEOverlay.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/smime/msgReadSecurityInfo.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/starContact.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/starred48.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/subscribe.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabmail.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/active-middle.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/background-end.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/background-middle.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/background-start.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/dragIndicator.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/overflow-indicator.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/selected-end.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/selected-start.svg +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/stroke-end.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tabs/stroke-start.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/tagColors.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/tagbg.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/userIcon.png +lib/thunderbird45/chrome/classic/skin/classic/messenger/virtualFolderListDialog.css +lib/thunderbird45/chrome/classic/skin/classic/messenger/voice.png +lib/thunderbird45/chrome/comm/content/communicator/charsetOverlay.xul +lib/thunderbird45/chrome/comm/content/communicator/contentAreaClick.js +lib/thunderbird45/chrome/comm/content/communicator/labelsencodings.properties +lib/thunderbird45/chrome/comm/content/communicator/utilityOverlay.js +lib/thunderbird45/chrome/comm/content/communicator/utilityOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/ComposerCommands.js +lib/thunderbird45/chrome/comm/content/editor/EdAEAttributes.js +lib/thunderbird45/chrome/comm/content/editor/EdAECSSAttributes.js +lib/thunderbird45/chrome/comm/content/editor/EdAEHTMLAttributes.js +lib/thunderbird45/chrome/comm/content/editor/EdAEJSEAttributes.js +lib/thunderbird45/chrome/comm/content/editor/EdAdvancedEdit.js +lib/thunderbird45/chrome/comm/content/editor/EdAdvancedEdit.xul +lib/thunderbird45/chrome/comm/content/editor/EdButtonProps.js +lib/thunderbird45/chrome/comm/content/editor/EdButtonProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdColorPicker.js +lib/thunderbird45/chrome/comm/content/editor/EdColorPicker.xul +lib/thunderbird45/chrome/comm/content/editor/EdColorProps.js +lib/thunderbird45/chrome/comm/content/editor/EdColorProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdConvertToTable.js +lib/thunderbird45/chrome/comm/content/editor/EdConvertToTable.xul +lib/thunderbird45/chrome/comm/content/editor/EdDialogCommon.js +lib/thunderbird45/chrome/comm/content/editor/EdDialogOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/EdDictionary.js +lib/thunderbird45/chrome/comm/content/editor/EdDictionary.xul +lib/thunderbird45/chrome/comm/content/editor/EdFieldSetProps.js +lib/thunderbird45/chrome/comm/content/editor/EdFieldSetProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdFormProps.js +lib/thunderbird45/chrome/comm/content/editor/EdFormProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdHLineProps.js +lib/thunderbird45/chrome/comm/content/editor/EdHLineProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdImageOverlay.js +lib/thunderbird45/chrome/comm/content/editor/EdImageOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/EdImageProps.js +lib/thunderbird45/chrome/comm/content/editor/EdImageProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdInputImage.js +lib/thunderbird45/chrome/comm/content/editor/EdInputImage.xul +lib/thunderbird45/chrome/comm/content/editor/EdInputProps.js +lib/thunderbird45/chrome/comm/content/editor/EdInputProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdInsSrc.js +lib/thunderbird45/chrome/comm/content/editor/EdInsSrc.xul +lib/thunderbird45/chrome/comm/content/editor/EdInsertChars.js +lib/thunderbird45/chrome/comm/content/editor/EdInsertChars.xul +lib/thunderbird45/chrome/comm/content/editor/EdInsertMath.js +lib/thunderbird45/chrome/comm/content/editor/EdInsertMath.xul +lib/thunderbird45/chrome/comm/content/editor/EdInsertTOC.js +lib/thunderbird45/chrome/comm/content/editor/EdInsertTOC.xul +lib/thunderbird45/chrome/comm/content/editor/EdInsertTable.js +lib/thunderbird45/chrome/comm/content/editor/EdInsertTable.xul +lib/thunderbird45/chrome/comm/content/editor/EdLabelProps.js +lib/thunderbird45/chrome/comm/content/editor/EdLabelProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdLinkProps.js +lib/thunderbird45/chrome/comm/content/editor/EdLinkProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdListProps.js +lib/thunderbird45/chrome/comm/content/editor/EdListProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdNamedAnchorProps.js +lib/thunderbird45/chrome/comm/content/editor/EdNamedAnchorProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdPageProps.js +lib/thunderbird45/chrome/comm/content/editor/EdPageProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdReplace.js +lib/thunderbird45/chrome/comm/content/editor/EdReplace.xul +lib/thunderbird45/chrome/comm/content/editor/EdSelectProps.js +lib/thunderbird45/chrome/comm/content/editor/EdSelectProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdSpellCheck.js +lib/thunderbird45/chrome/comm/content/editor/EdSpellCheck.xul +lib/thunderbird45/chrome/comm/content/editor/EdTableProps.js +lib/thunderbird45/chrome/comm/content/editor/EdTableProps.xul +lib/thunderbird45/chrome/comm/content/editor/EdTextAreaProps.js +lib/thunderbird45/chrome/comm/content/editor/EdTextAreaProps.xul +lib/thunderbird45/chrome/comm/content/editor/EditorContent.css +lib/thunderbird45/chrome/comm/content/editor/TeXZilla.js +lib/thunderbird45/chrome/comm/content/editor/editor.js +lib/thunderbird45/chrome/comm/content/editor/editorApplicationOverlay.js +lib/thunderbird45/chrome/comm/content/editor/editorMailOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/editorNavigatorOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/editorOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/editorSmileyOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/editorTasksOverlay.xul +lib/thunderbird45/chrome/comm/content/editor/editorUtilities.js +lib/thunderbird45/chrome/comm/content/editor/images/tag-anchor.gif +lib/thunderbird45/chrome/devtools/modules/devtools/acorn/acorn.js +lib/thunderbird45/chrome/devtools/modules/devtools/acorn/acorn_loose.js +lib/thunderbird45/chrome/devtools/modules/devtools/acorn/walk.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/actor-registry.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/addon.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/animation.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/call-watcher.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/canvas.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/child-process.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/childtab.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/chrome.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/common.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/csscoverage.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/device.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/director-manager.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/director-registry.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/eventlooplag.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/framerate.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/gcli.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/heap-snapshot-file.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters.css +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/auto-refresh.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/box-model.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/css-transform.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/geometry-editor.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/measuring-tool.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/rect.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/rulers.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/selector.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/simple-outline.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/highlighters/utils/markup.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/inspector.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/layout.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/memory.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/memprof.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/monitor.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/object.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/performance-entries.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/performance-recording.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/performance.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/preference.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/pretty-print-worker.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/process.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/profiler.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/promises.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/root.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/script.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/settings.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/storage.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/string.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/styleeditor.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/styles.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/stylesheets.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/timeline.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/ScriptStore.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/TabSources.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/actor-registry-utils.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/audionodes.json +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/automation-timeline.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/make-debugger.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/map-uri-to-addon-id.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/stack.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/utils/walker-search.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/webapps.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/webaudio.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/webbrowser.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/webconsole.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/webgl.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/actors/worker.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/child.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/content-globals.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/content-server.jsm +lib/thunderbird45/chrome/devtools/modules/devtools/server/main.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/performance/framerate.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/performance/memory.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/performance/profiler.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/performance/recorder.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/performance/timeline.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/protocol.js +lib/thunderbird45/chrome/devtools/modules/devtools/server/worker.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/DevToolsUtils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/Loader.jsm +lib/thunderbird45/chrome/devtools/modules/devtools/shared/Parser.jsm +lib/thunderbird45/chrome/devtools/modules/devtools/shared/apps/Devices.jsm +lib/thunderbird45/chrome/devtools/modules/devtools/shared/apps/Simulator.jsm +lib/thunderbird45/chrome/devtools/modules/devtools/shared/apps/app-actor-front.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/async-storage.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/async-utils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/client/connection-manager.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/client/main.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/content-observer.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/css-color.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/deprecated-sync-thenables.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/discovery/discovery.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/event-emitter.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/event-parsers.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/Templater.jsm +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/addon.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/appcache.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/calllog.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/cmd.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/cookie.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/csscoverage.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/folder.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/highlight.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/index.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/inject.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/jsb.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/listen.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/measure.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/media.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/pagemod.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/paintflashing.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/qsa.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/restart.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/rulers.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/screenshot.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/security.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/commands/tools.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/cli.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/clear.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/commands.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/connect.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/context.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/exec.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/global.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/help.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/intro.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/lang.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/mocks.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/pref.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/preflist.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/test.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/connectors/connectors.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/basic.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/converters.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/html.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/terminal.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/fields/delegate.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/fields/fields.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/fields/selection.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/index.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/l10n.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/command.html +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/command.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/javascript.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/languages.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/mozui/completer.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/mozui/inputter.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/mozui/tooltip.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/settings.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/system.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/array.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/boolean.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/command.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/date.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/delegate.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/file.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/fileparser.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/javascript.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/node.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/number.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/resource.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/selection.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/setting.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/string.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/types.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/union.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/url.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/focus.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/history.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/intro.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/menu.css +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/menu.html +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/menu.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/view.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/domtemplate.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/fileparser.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/filesystem.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/host.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/l10n.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/legacy.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/prism.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/spell.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/util.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/heapsnapshot/CensusUtils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/heapsnapshot/DominatorTreeNode.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/heapsnapshot/HeapAnalysesClient.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/heapsnapshot/HeapAnalysesWorker.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/heapsnapshot/HeapSnapshotFileUtils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/heapsnapshot/census-tree-node.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/indentation.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/jsbeautify/beautify.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/jsbeautify/lib/sanitytest.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/jsbeautify/lib/urlencode_unpacker.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-css.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-html.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-js.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-tests.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/layout/utils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/path.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/performance/process-communication.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/performance/recording-common.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/performance/recording-utils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/pretty-fast/pretty-fast.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/qrcode/decoder/index.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/qrcode/encoder/index.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/qrcode/index.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/security/auth.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/security/cert.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/security/prompt.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/security/socket.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/sourcemap/source-map.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/styleinspector/css-logic.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/system.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/touch/simulator-content.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/touch/simulator.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/transport/packets.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/transport/stream-utils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/transport/transport.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/client.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/js-property-provider.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/network-helper.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/network-monitor.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/server-logger-monitor.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/server-logger.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/utils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/webconsole/worker-utils.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/worker/helper.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/worker/loader.js +lib/thunderbird45/chrome/devtools/modules/devtools/shared/worker/worker.js +${PLIST.nobranding}lib/thunderbird45/chrome/en-US/locale/branding/brand.dtd +${PLIST.nobranding}lib/thunderbird45/chrome/en-US/locale/branding/brand.properties +${PLIST.branding}lib/thunderbird45/chrome/en-US/locale/en-US/branding/brand.dtd +${PLIST.branding}lib/thunderbird45/chrome/en-US/locale/en-US/branding/brand.properties +lib/thunderbird45/chrome/en-US/locale/en-US/alerts/alert.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/alerts/alert.properties +lib/thunderbird45/chrome/en-US/locale/en-US/autoconfig/autoconfig.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/accounts.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/commands.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/contacts.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/conversations.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/facebook.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/imtooltip.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/irc.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/logger.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/skype.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/status.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/twitter.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/xmpp.properties +lib/thunderbird45/chrome/en-US/locale/en-US/chat/yahoo.properties +lib/thunderbird45/chrome/en-US/locale/en-US/communicator/utilityOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/cookie/cookieAcceptDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/cookie/cookieAcceptDialog.properties +lib/thunderbird45/chrome/en-US/locale/en-US/devtools/shared/csscoverage.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/devtools/shared/csscoverage.properties +lib/thunderbird45/chrome/en-US/locale/en-US/devtools/shared/debugger.properties +lib/thunderbird45/chrome/en-US/locale/en-US/devtools/shared/gcli.properties +lib/thunderbird45/chrome/en-US/locale/en-US/devtools/shared/gclicommands.properties +lib/thunderbird45/chrome/en-US/locale/en-US/devtools/shared/styleinspector.properties +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EdAdvancedEdit.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EdColorPicker.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EdConvertToTable.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EdDialogOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EdNamedAnchorProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorButtonProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorColorProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorFieldSetProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorFormProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorHLineProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorImageProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorInputProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorInsertChars.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorInsertMath.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorInsertSource.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorInsertTOC.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorInsertTable.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorLabelProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorLinkProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorListProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorPersonalDictionary.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorReplace.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorSelectProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorSpellCheck.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorTableProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/EditorTextAreaProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/editor.properties +lib/thunderbird45/chrome/en-US/locale/en-US/editor/editorOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/editor/editorSmileyOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/formautofill/requestAutocomplete.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/mac/accessible.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/mac/intl.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/mac/platformKeys.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/unix/accessible.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/unix/intl.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/unix/platformKeys.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/win/accessible.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/win/intl.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-platform/win/platformKeys.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global-region/region.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/AccessFu.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/about.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutAbout.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutNetworking.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutReader.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutRights.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutServiceWorkers.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutServiceWorkers.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutSupport.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutSupport.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutTelemetry.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutTelemetry.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/aboutWebrtc.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/appPicker.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/appstrings.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/autocomplete.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/brand.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/browser.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/charsetMenu.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/charsetMenu.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/commonDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/commonDialogs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/config.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/config.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/console.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/console.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/contentAreaCommands.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/crashes.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/crashes.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/css.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/customizeToolbar.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/customizeToolbar.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/dateFormat.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/datetimepicker.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/dialog.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/dialogOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/dom/dom.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/editMenuOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/fallbackMenubar.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/filefield.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/filepicker.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/filepicker.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/findbar.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/findbar.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/finddialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/finddialog.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/global-strres.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/global.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/globalKeys.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/headsUpDisplay.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/intl.css +lib/thunderbird45/chrome/en-US/locale/en-US/global/intl.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/keys.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/languageNames.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/layout/HtmlForm.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/layout/MediaDocument.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/layout/htmlparser.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/layout/xmlparser.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/layout_errors.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/mathml/mathml.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/mozilla.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/netError.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/netErrorApp.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/notification.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/nsWebBrowserPersist.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/plugins.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/preferences.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/printPageSetup.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/printPreview.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/printPreviewProgress.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/printProgress.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/printdialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/printdialog.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/printing.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/printjoboptions.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/regionNames.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/resetProfile.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/resetProfile.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/search/search.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/security/caps.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/security/csp.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/security/security.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/svg/svg.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/textcontext.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/tree.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/videocontrols.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/viewSource.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/viewSource.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/webapps.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/wizard.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/wizard.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/xbl.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/xml/prettyprint.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/global/xslt/xslt.properties +lib/thunderbird45/chrome/en-US/locale/en-US/global/xul.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-mapi/mapi.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-newsblog/am-newsblog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-newsblog/feed-subscriptions.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-newsblog/newsblog.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-region/region.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/certFetchingStatus.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgCompSMIMEOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgCompSMIMEOverlay.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgCompSecurityInfo.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgCompSecurityInfo.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgReadSMIMEOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgReadSMIMEOverlay.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgReadSecurityInfo.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger-smime/msgSecurityInfo.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/AccountManager.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/AccountWizard.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/CustomHeaders.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/FilterEditor.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/FilterListDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/SearchDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/aboutDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/aboutDownloads.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/aboutRights.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/aboutRights.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/aboutSupportMail.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/aboutSupportMail.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/accountCreation.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/accountCreation.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/accountCreationModel.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/accountCreationUtil.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/activity.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/activity.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addbuddy.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/abAddressBookNameDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/abCardOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/abContactsPanel.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/abMailListDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/abMainWindow.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/abNewCardDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/abResultsPaneOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/addressBook.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/ldapAutoCompErrs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/pref-directory-add.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/pref-directory.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/addressbook/replicationProgress.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-addressing.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-advanced.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-archiveoptions.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-copies.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-identities-list.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-identity-edit.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-im.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-junk.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-main.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-mdn.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-mdn.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-offline.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-server-advanced.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-server-top.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-serverwithnoidentities.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-smime.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/am-smime.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/appleMailImportMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/baseMenuOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/charsetTitles.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/chat.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/chat.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Box/auth.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Box/management.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Box/settings.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Hightail/fileExceeds2GB.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Hightail/fileExceedsLimit.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Hightail/fileExceedsQuota.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Hightail/management.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/Hightail/settings.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/addAccountDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/cloudfile/management.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/configEditorOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/custom.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/customizeToolbarOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/downloadheaders.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/downloads/settingsChange.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/downloadsOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/editContactOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/editContactOverlay.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/eudoraImportMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/fieldMapImport.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/filter.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/folderProps.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/folderWidgets.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/folderpane.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/gloda.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/glodaComplete.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/glodaFacetView.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/glodaFacetView.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/imAccountWizard.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/imAccounts.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/imAccounts.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/imapMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/importDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/importMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/joinChat.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/junkLog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/junkMailInfo.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/localMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/mailEditorOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/mailOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/mailViewList.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/mailViewSetup.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/mailviews.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/markByDate.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messenger.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messenger.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/addressingWidgetOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/askSendFormat.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/askSendFormat.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/composeMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/mailComposeEditorOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/messengercompose.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/sendProgress.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/messengercompose/sendProgress.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/migration/migration.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/migration/migration.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/mime.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/mimeheader.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/msgAccountCentral.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/msgHdrViewOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/msgPrintEngine.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/msgSynchronize.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/msgViewPickerOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/msgmdn.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/multimessageview.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/multimessageview.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/netError.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/newFolderDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/newTagDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/newmailaccount/accountProvisioner.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/newmailaccount/accountProvisioner.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/news.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/oeImportMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/offline.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/offlineStartup.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/outlookImportMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/pgpmime.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/advanced.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/applicationManager.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/applicationManager.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/applications.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/applications.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/attachmentReminder.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/chat.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/colors.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/compose.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/connection.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/cookies.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/display.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/dockoptions.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/fonts.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/general.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/notifications.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/offline.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/permissions.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/preferences.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/preferences.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/privacy.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/receipts.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/security.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/preferences/sendoptions.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/prefs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/quickFilterBar.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/renameFolderDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/safeMode.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/sanitize.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/search-attributes.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/search-operators.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/search.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchIntegrationDefault.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchIntegrationMac.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchIntegrationWin.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchTermOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/amazondotcom.xml +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/aol-web-search.xml +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/bing.xml +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/eBay.xml +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/list.txt +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/twitter.xml +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/wikipedia.xml +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/searchplugins/yahoo.xml +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/shutdownWindow.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/smime.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/smtpEditOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/subscribe.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/subscribe.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/systemIntegrationDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/tabmail.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/taskbar.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/telemetry.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/templateUtils.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/textImportMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/vCardImportMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/viewLog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/viewZoomOverlay.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/virtualFolderListDialog.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/virtualFolderProperties.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/messenger/wmImportMsgs.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/downloads/downloads.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/downloads/downloads.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/downloads/settingsChange.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/downloads/unknownContentType.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/downloads/unknownContentType.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/about.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/blocklist.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/extensions.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/extensions.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/newaddon.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/newaddon.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/selectAddons.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/selectAddons.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/update.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/extensions/update.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/handling/handling.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/handling/handling.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/preferences/changemp.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/preferences/preferences.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/preferences/removemp.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/profile/createProfileWizard.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/profile/profileSelection.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/profile/profileSelection.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/update/history.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/update/updates.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/update/updates.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/xpinstall/xpinstallConfirm.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/mozapps/xpinstall/xpinstallConfirm.properties +lib/thunderbird45/chrome/en-US/locale/en-US/mozldap/ldap.properties +lib/thunderbird45/chrome/en-US/locale/en-US/necko/necko.properties +lib/thunderbird45/chrome/en-US/locale/en-US/passwordmgr/passwordManager.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/passwordmgr/passwordmgr.properties +lib/thunderbird45/chrome/en-US/locale/en-US/pipnss/nsserrors.properties +lib/thunderbird45/chrome/en-US/locale/en-US/pipnss/pipnss.properties +lib/thunderbird45/chrome/en-US/locale/en-US/pippki/certManager.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/pippki/deviceManager.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/pippki/pippki.dtd +lib/thunderbird45/chrome/en-US/locale/en-US/pippki/pippki.properties +lib/thunderbird45/chrome/en-US/locale/en-US/places/places.properties +lib/thunderbird45/chrome/en-US/locale/en-US/pluginproblem/pluginproblem.dtd +lib/thunderbird45/chrome/gloda/content/glodacomplete.css +lib/thunderbird45/chrome/gloda/content/glodacomplete.xml +lib/thunderbird45/chrome/gloda/content/overlay.js +lib/thunderbird45/chrome/gloda/content/thunderbirdOverlay.xul +lib/thunderbird45/chrome/icons/default/default16.png +lib/thunderbird45/chrome/icons/default/default22.png +lib/thunderbird45/chrome/icons/default/default24.png +lib/thunderbird45/chrome/icons/default/default256.png +lib/thunderbird45/chrome/icons/default/default32.png +lib/thunderbird45/chrome/icons/default/default48.png +lib/thunderbird45/chrome/messenger/content/branding/about-background.png +lib/thunderbird45/chrome/messenger/content/branding/about-logo.png +lib/thunderbird45/chrome/messenger/content/branding/about-wordmark.png +lib/thunderbird45/chrome/messenger/content/branding/about.png +lib/thunderbird45/chrome/messenger/content/branding/aboutDialog.css +lib/thunderbird45/chrome/messenger/content/branding/icon48.png +lib/thunderbird45/chrome/messenger/content/branding/icon64.png +lib/thunderbird45/chrome/messenger/content/messagebody/addressbook/print.css +lib/thunderbird45/chrome/messenger/content/messenger-smime/certFetchingStatus.js +lib/thunderbird45/chrome/messenger/content/messenger-smime/certFetchingStatus.xul +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgCompSMIMEOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgCompSMIMEOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgCompSecurityInfo.js +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgCompSecurityInfo.xul +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgHdrViewSMIMEOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgHdrViewSMIMEOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgReadSMIMEOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgReadSMIMEOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgReadSecurityInfo.js +lib/thunderbird45/chrome/messenger/content/messenger-smime/msgReadSecurityInfo.xul +lib/thunderbird45/chrome/messenger/content/messenger/ABSearchDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/ABSearchDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/AccountManager.js +lib/thunderbird45/chrome/messenger/content/messenger/AccountManager.xul +lib/thunderbird45/chrome/messenger/content/messenger/AccountWizard.js +lib/thunderbird45/chrome/messenger/content/messenger/AccountWizard.xul +lib/thunderbird45/chrome/messenger/content/messenger/CustomHeaders.js +lib/thunderbird45/chrome/messenger/content/messenger/CustomHeaders.xul +lib/thunderbird45/chrome/messenger/content/messenger/EdSpellCheckOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/EdSpellCheckOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/FilterEditor.js +lib/thunderbird45/chrome/messenger/content/messenger/FilterEditor.xul +lib/thunderbird45/chrome/messenger/content/messenger/FilterListDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/FilterListDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/SearchDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/SearchDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/SmtpServerEdit.js +lib/thunderbird45/chrome/messenger/content/messenger/SmtpServerEdit.xul +lib/thunderbird45/chrome/messenger/content/messenger/about-support/a11y.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/aboutSupport.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/about-support/accounts.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/export.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/extensions.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/gfx.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/hide-private.css +lib/thunderbird45/chrome/messenger/content/messenger/about-support/init.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/js.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/libversions.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/overlay.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/overlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/about-support/prefs.js +lib/thunderbird45/chrome/messenger/content/messenger/about-support/show-private.css +lib/thunderbird45/chrome/messenger/content/messenger/aboutDialog.css +lib/thunderbird45/chrome/messenger/content/messenger/aboutDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/aboutDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/aboutRights.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/accountUtils.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/MyBadCertHandler.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/accountConfig.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/createInBackend.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/emailWizard.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/emailWizard.xul +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/fetchConfig.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/fetchhttp.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/guessConfig.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/readFromXML.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/sanitizeDatatypes.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/util.js +lib/thunderbird45/chrome/messenger/content/messenger/accountcreation/verifyConfig.js +lib/thunderbird45/chrome/messenger/content/messenger/activity.js +lib/thunderbird45/chrome/messenger/content/messenger/activity.xml +lib/thunderbird45/chrome/messenger/content/messenger/activity.xul +lib/thunderbird45/chrome/messenger/content/messenger/activityBinding.css +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abAddressBookNameDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abAddressBookNameDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abCardOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abCardOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abCardViewOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abCommon.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abContactsPanel.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abContactsPanel.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abDragDrop.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abEditCardDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abEditListDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abMailListDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abMailListDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abNewCardDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abResultsPane.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abResultsPaneOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/abTrees.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/addrbookWidgets.xml +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/addressbook.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/addressbook.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/pref-directory-add.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/pref-directory-add.xul +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/pref-editdirectories.js +lib/thunderbird45/chrome/messenger/content/messenger/addressbook/pref-editdirectories.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-addressing.js +lib/thunderbird45/chrome/messenger/content/messenger/am-addressing.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-addressingOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-archiveoptions.js +lib/thunderbird45/chrome/messenger/content/messenger/am-archiveoptions.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-copies.js +lib/thunderbird45/chrome/messenger/content/messenger/am-copies.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-copiesOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-help.js +lib/thunderbird45/chrome/messenger/content/messenger/am-identities-list.js +lib/thunderbird45/chrome/messenger/content/messenger/am-identities-list.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-identity-edit.js +lib/thunderbird45/chrome/messenger/content/messenger/am-identity-edit.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-im.js +lib/thunderbird45/chrome/messenger/content/messenger/am-im.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-junk.js +lib/thunderbird45/chrome/messenger/content/messenger/am-junk.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-main.js +lib/thunderbird45/chrome/messenger/content/messenger/am-main.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-mdn.js +lib/thunderbird45/chrome/messenger/content/messenger/am-mdn.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-offline.js +lib/thunderbird45/chrome/messenger/content/messenger/am-offline.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-prefs.js +lib/thunderbird45/chrome/messenger/content/messenger/am-server-advanced.js +lib/thunderbird45/chrome/messenger/content/messenger/am-server-advanced.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-server-top.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-server.js +lib/thunderbird45/chrome/messenger/content/messenger/am-server.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-serverwithnoidentities.js +lib/thunderbird45/chrome/messenger/content/messenger/am-serverwithnoidentities.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-smime.js +lib/thunderbird45/chrome/messenger/content/messenger/am-smime.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-smimeIdentityEditOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-smimeOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/am-smtp.js +lib/thunderbird45/chrome/messenger/content/messenger/am-smtp.xul +lib/thunderbird45/chrome/messenger/content/messenger/amUtils.js +lib/thunderbird45/chrome/messenger/content/messenger/aw-accname.js +lib/thunderbird45/chrome/messenger/content/messenger/aw-accounttype.js +lib/thunderbird45/chrome/messenger/content/messenger/aw-done.js +lib/thunderbird45/chrome/messenger/content/messenger/aw-identity.js +lib/thunderbird45/chrome/messenger/content/messenger/aw-incoming.js +lib/thunderbird45/chrome/messenger/content/messenger/aw-outgoing.js +lib/thunderbird45/chrome/messenger/content/messenger/baseMenuOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/browserRequest.js +lib/thunderbird45/chrome/messenger/content/messenger/browserRequest.xul +lib/thunderbird45/chrome/messenger/content/messenger/charsetList.css +lib/thunderbird45/chrome/messenger/content/messenger/charsetList.xml +lib/thunderbird45/chrome/messenger/content/messenger/chat/addbuddy.js +lib/thunderbird45/chrome/messenger/content/messenger/chat/addbuddy.xul +lib/thunderbird45/chrome/messenger/content/messenger/chat/badgebutton.xml +lib/thunderbird45/chrome/messenger/content/messenger/chat/chat-messenger-overlay.js +lib/thunderbird45/chrome/messenger/content/messenger/chat/chat-messenger-overlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/chat/chat.css +lib/thunderbird45/chrome/messenger/content/messenger/chat/imAccount.xml +lib/thunderbird45/chrome/messenger/content/messenger/chat/imAccountWizard.js +lib/thunderbird45/chrome/messenger/content/messenger/chat/imAccountWizard.xul +lib/thunderbird45/chrome/messenger/content/messenger/chat/imAccounts.css +lib/thunderbird45/chrome/messenger/content/messenger/chat/imAccounts.js +lib/thunderbird45/chrome/messenger/content/messenger/chat/imAccounts.xul +lib/thunderbird45/chrome/messenger/content/messenger/chat/imContextMenu.js +lib/thunderbird45/chrome/messenger/content/messenger/chat/imStatusSelector.js +lib/thunderbird45/chrome/messenger/content/messenger/chat/imcontact.xml +lib/thunderbird45/chrome/messenger/content/messenger/chat/imconv.xml +lib/thunderbird45/chrome/messenger/content/messenger/chat/imconversation.xml +lib/thunderbird45/chrome/messenger/content/messenger/chat/imgroup.xml +lib/thunderbird45/chrome/messenger/content/messenger/chat/joinchat.js +lib/thunderbird45/chrome/messenger/content/messenger/chat/joinchat.xul +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Box/management.js +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Box/management.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Box/settings.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceeds2GB.xul +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceedsLimit.xul +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceedsQuota.js +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceedsQuota.xul +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/management.js +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/management.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/settings.js +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/Hightail/settings.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/addAccountDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/addAccountDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/attachment-24.png +lib/thunderbird45/chrome/messenger/content/messenger/cloudfile/emptySettings.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/commandglue.js +lib/thunderbird45/chrome/messenger/content/messenger/composerOverlay.css +lib/thunderbird45/chrome/messenger/content/messenger/configEditorOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/customizeToolbarOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/dateFormat.js +lib/thunderbird45/chrome/messenger/content/messenger/devtools/dbg-messenger-overlay.js +lib/thunderbird45/chrome/messenger/content/messenger/devtools/dbg-messenger-overlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/downloadheaders.js +lib/thunderbird45/chrome/messenger/content/messenger/downloadheaders.xul +lib/thunderbird45/chrome/messenger/content/messenger/downloads/aboutDownloads.css +lib/thunderbird45/chrome/messenger/content/messenger/downloads/aboutDownloads.js +lib/thunderbird45/chrome/messenger/content/messenger/downloads/aboutDownloads.xul +lib/thunderbird45/chrome/messenger/content/messenger/downloads/download.xml +lib/thunderbird45/chrome/messenger/content/messenger/downloadsOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/editContactOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/editContactOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/extraCustomizeItems.xul +lib/thunderbird45/chrome/messenger/content/messenger/fieldMapImport.js +lib/thunderbird45/chrome/messenger/content/messenger/fieldMapImport.xul +lib/thunderbird45/chrome/messenger/content/messenger/folderDisplay.js +lib/thunderbird45/chrome/messenger/content/messenger/folderPane.js +lib/thunderbird45/chrome/messenger/content/messenger/folderProps.js +lib/thunderbird45/chrome/messenger/content/messenger/folderProps.xul +lib/thunderbird45/chrome/messenger/content/messenger/folderWidgets.xml +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetBindings.css +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetBindings.xml +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetTab.js +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetView.css +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetView.js +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetView.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetViewWrapper.xul +lib/thunderbird45/chrome/messenger/content/messenger/glodaFacetVis.js +lib/thunderbird45/chrome/messenger/content/messenger/hiddenWindow.js +lib/thunderbird45/chrome/messenger/content/messenger/hiddenWindow.xul +lib/thunderbird45/chrome/messenger/content/messenger/importDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/importDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/ispUtils.js +lib/thunderbird45/chrome/messenger/content/messenger/jsTreeView.js +lib/thunderbird45/chrome/messenger/content/messenger/junkCommands.js +lib/thunderbird45/chrome/messenger/content/messenger/junkLog.js +lib/thunderbird45/chrome/messenger/content/messenger/junkLog.xul +lib/thunderbird45/chrome/messenger/content/messenger/junkMailInfo.xul +lib/thunderbird45/chrome/messenger/content/messenger/license.html +lib/thunderbird45/chrome/messenger/content/messenger/mail-offline.js +lib/thunderbird45/chrome/messenger/content/messenger/mail3PaneWindowCommands.js +lib/thunderbird45/chrome/messenger/content/messenger/mailCommands.js +lib/thunderbird45/chrome/messenger/content/messenger/mailContextMenus.js +lib/thunderbird45/chrome/messenger/content/messenger/mailCore.js +lib/thunderbird45/chrome/messenger/content/messenger/mailOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/mailTabs.js +lib/thunderbird45/chrome/messenger/content/messenger/mailViewList.js +lib/thunderbird45/chrome/messenger/content/messenger/mailViewList.xul +lib/thunderbird45/chrome/messenger/content/messenger/mailViewSetup.js +lib/thunderbird45/chrome/messenger/content/messenger/mailViewSetup.xul +lib/thunderbird45/chrome/messenger/content/messenger/mailWidgets.xml +lib/thunderbird45/chrome/messenger/content/messenger/mailWindow.js +lib/thunderbird45/chrome/messenger/content/messenger/mailWindowOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/mailWindowOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/markByDate.js +lib/thunderbird45/chrome/messenger/content/messenger/markByDate.xul +lib/thunderbird45/chrome/messenger/content/messenger/messageDisplay.js +lib/thunderbird45/chrome/messenger/content/messenger/messageWindow.js +lib/thunderbird45/chrome/messenger/content/messenger/messageWindow.xul +lib/thunderbird45/chrome/messenger/content/messenger/messenger.css +lib/thunderbird45/chrome/messenger/content/messenger/messenger.xul +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/EdImageOverlayOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/MsgComposeCommands.js +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/addressingWidgetOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/askSendFormat.js +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/askSendFormat.xul +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/bigFileObserver.js +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/cloudAttachmentLinkManager.js +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/mailComposeEditorOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/menulistCompactBindings.xml +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/messengercompose.xul +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/sendProgress.js +lib/thunderbird45/chrome/messenger/content/messenger/messengercompose/sendProgress.xul +lib/thunderbird45/chrome/messenger/content/messenger/migration/migration.js +lib/thunderbird45/chrome/messenger/content/messenger/migration/migration.xul +lib/thunderbird45/chrome/messenger/content/messenger/msgAccountCentral.js +lib/thunderbird45/chrome/messenger/content/messenger/msgAccountCentral.xul +lib/thunderbird45/chrome/messenger/content/messenger/msgFolderPickerOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/msgHdrViewOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/msgHdrViewOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/msgMail3PaneWindow.js +lib/thunderbird45/chrome/messenger/content/messenger/msgPrintEngine.js +lib/thunderbird45/chrome/messenger/content/messenger/msgPrintEngine.xul +lib/thunderbird45/chrome/messenger/content/messenger/msgSelectOffline.xul +lib/thunderbird45/chrome/messenger/content/messenger/msgSynchronize.js +lib/thunderbird45/chrome/messenger/content/messenger/msgSynchronize.xul +lib/thunderbird45/chrome/messenger/content/messenger/msgViewNavigation.js +lib/thunderbird45/chrome/messenger/content/messenger/msgViewPickerOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/multimessageview.css +lib/thunderbird45/chrome/messenger/content/messenger/multimessageview.js +lib/thunderbird45/chrome/messenger/content/messenger/multimessageview.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/multimessageview_print.css +lib/thunderbird45/chrome/messenger/content/messenger/newFolderDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/newFolderDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/newTagDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/newTagDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/newmailaccount/accountProvisioner.js +lib/thunderbird45/chrome/messenger/content/messenger/newmailaccount/accountProvisioner.xhtml +lib/thunderbird45/chrome/messenger/content/messenger/newmailaccount/accountProvisionerTab.js +lib/thunderbird45/chrome/messenger/content/messenger/newmailaccount/uriListener.js +lib/thunderbird45/chrome/messenger/content/messenger/newmailalert.css +lib/thunderbird45/chrome/messenger/content/messenger/newmailalert.js +lib/thunderbird45/chrome/messenger/content/messenger/newmailalert.xul +lib/thunderbird45/chrome/messenger/content/messenger/nsContextMenu.js +lib/thunderbird45/chrome/messenger/content/messenger/nsDragAndDrop.js +lib/thunderbird45/chrome/messenger/content/messenger/phishingDetector.js +lib/thunderbird45/chrome/messenger/content/messenger/plugins.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/aboutPreferences.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/actionsshared.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/advanced.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/advanced.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/applicationManager.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/applicationManager.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/applications.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/applications.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/attachmentReminder.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/attachmentReminder.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/chat.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/chat.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/colors.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/compose.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/compose.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/connection.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/connection.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/cookies.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/cookies.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/display.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/display.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/downloads.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/fonts.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/fonts.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/general.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/general.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/handlers.css +lib/thunderbird45/chrome/messenger/content/messenger/preferences/handlers.xml +lib/thunderbird45/chrome/messenger/content/messenger/preferences/notifications.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/offline.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/offline.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/permissions.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/permissions.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/preferences.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/preferences.xml +lib/thunderbird45/chrome/messenger/content/messenger/preferences/preferences.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/preferencesTab.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/preferencesTab.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/privacy.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/privacy.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/receipts.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/receipts.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/security.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/security.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/sendoptions.js +lib/thunderbird45/chrome/messenger/content/messenger/preferences/sendoptions.xul +lib/thunderbird45/chrome/messenger/content/messenger/preferences/subdialogs.js +lib/thunderbird45/chrome/messenger/content/messenger/protovis-r2.6-modded.js +lib/thunderbird45/chrome/messenger/content/messenger/quickFilterBar.css +lib/thunderbird45/chrome/messenger/content/messenger/quickFilterBar.js +lib/thunderbird45/chrome/messenger/content/messenger/quickFilterBar.xul +lib/thunderbird45/chrome/messenger/content/messenger/renameFolderDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/renameFolderDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/retention.js +lib/thunderbird45/chrome/messenger/content/messenger/safeMode.js +lib/thunderbird45/chrome/messenger/content/messenger/safeMode.xul +lib/thunderbird45/chrome/messenger/content/messenger/sanitize.js +lib/thunderbird45/chrome/messenger/content/messenger/sanitize.xul +lib/thunderbird45/chrome/messenger/content/messenger/sanitizeDialog.css +lib/thunderbird45/chrome/messenger/content/messenger/sanitizeDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/search.xml +lib/thunderbird45/chrome/messenger/content/messenger/search/searchOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/search/searchOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/searchBar.js +lib/thunderbird45/chrome/messenger/content/messenger/searchTermOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/searchTermOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/searchWidgets.xml +lib/thunderbird45/chrome/messenger/content/messenger/selectionsummaries.js +lib/thunderbird45/chrome/messenger/content/messenger/sharedsummary.css +lib/thunderbird45/chrome/messenger/content/messenger/shareglue.js +lib/thunderbird45/chrome/messenger/content/messenger/shutdownWindow.js +lib/thunderbird45/chrome/messenger/content/messenger/shutdownWindow.xul +lib/thunderbird45/chrome/messenger/content/messenger/smtpEditOverlay.js +lib/thunderbird45/chrome/messenger/content/messenger/smtpEditOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/specialTabs.js +lib/thunderbird45/chrome/messenger/content/messenger/specialTabs.xul +lib/thunderbird45/chrome/messenger/content/messenger/subscribe.js +lib/thunderbird45/chrome/messenger/content/messenger/subscribe.xul +lib/thunderbird45/chrome/messenger/content/messenger/systemIntegrationDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/systemIntegrationDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/tabmail.css +lib/thunderbird45/chrome/messenger/content/messenger/tabmail.xml +lib/thunderbird45/chrome/messenger/content/messenger/threadPane.js +lib/thunderbird45/chrome/messenger/content/messenger/threadPaneColumnPicker.xml +lib/thunderbird45/chrome/messenger/content/messenger/toolbarIconColor.js +lib/thunderbird45/chrome/messenger/content/messenger/viewLog.js +lib/thunderbird45/chrome/messenger/content/messenger/viewLog.xul +lib/thunderbird45/chrome/messenger/content/messenger/viewSourceOverlay.xul +lib/thunderbird45/chrome/messenger/content/messenger/virtualFolderListDialog.js +lib/thunderbird45/chrome/messenger/content/messenger/virtualFolderListDialog.xul +lib/thunderbird45/chrome/messenger/content/messenger/virtualFolderProperties.js +lib/thunderbird45/chrome/messenger/content/messenger/virtualFolderProperties.xul +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Bitmaps/minus-hover.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Bitmaps/minus.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Bitmaps/plus-hover.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Bitmaps/plus.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Footer.html +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Incoming/Content.html +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Incoming/Context.html +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Incoming/NextContent.html +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Incoming/buddy_icon.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Info.plist +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/NextStatus.html +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Outgoing/buddy_icon.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/Status.html +lib/thunderbird45/chrome/messenger/skin/classic/messenger/messages/main.css +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/angry.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/confused.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/cool.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/cry.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/embarrassed.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/grin.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/heart.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/manga_annoyed.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/manga_embarrassed.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/manga_smile.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/manga_stunned.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/manga_tired.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/sad.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/shocked.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/slant.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/slant2.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/smile.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/sp_laugh.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/straight_face.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/theme.js +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/tongue.png +lib/thunderbird45/chrome/messenger/skin/classic/messenger/smileys/wink.png +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/Feed.js +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/FeedItem.js +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/am-newsblog.js +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/am-newsblog.xul +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/feed-parser.js +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/feed-subscriptions.js +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/feed-subscriptions.xul +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/feedAccountWizard.js +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/feedAccountWizard.xul +lib/thunderbird45/chrome/newsblog/content/messenger-newsblog/newsblogOverlay.js +lib/thunderbird45/chrome/pippki/content/pippki/CAOverlay.xul +lib/thunderbird45/chrome/pippki/content/pippki/MineOverlay.xul +lib/thunderbird45/chrome/pippki/content/pippki/OrphanOverlay.xul +lib/thunderbird45/chrome/pippki/content/pippki/OthersOverlay.xul +lib/thunderbird45/chrome/pippki/content/pippki/WebSitesOverlay.xul +lib/thunderbird45/chrome/pippki/content/pippki/certDump.xul +lib/thunderbird45/chrome/pippki/content/pippki/certManager.js +lib/thunderbird45/chrome/pippki/content/pippki/certManager.xul +lib/thunderbird45/chrome/pippki/content/pippki/certViewer.xul +lib/thunderbird45/chrome/pippki/content/pippki/certpicker.js +lib/thunderbird45/chrome/pippki/content/pippki/certpicker.xul +lib/thunderbird45/chrome/pippki/content/pippki/changepassword.xul +lib/thunderbird45/chrome/pippki/content/pippki/choosetoken.js +lib/thunderbird45/chrome/pippki/content/pippki/choosetoken.xul +lib/thunderbird45/chrome/pippki/content/pippki/clientauthask.js +lib/thunderbird45/chrome/pippki/content/pippki/clientauthask.xul +lib/thunderbird45/chrome/pippki/content/pippki/createCertInfo.js +lib/thunderbird45/chrome/pippki/content/pippki/createCertInfo.xul +lib/thunderbird45/chrome/pippki/content/pippki/deletecert.js +lib/thunderbird45/chrome/pippki/content/pippki/deletecert.xul +lib/thunderbird45/chrome/pippki/content/pippki/device_manager.js +lib/thunderbird45/chrome/pippki/content/pippki/device_manager.xul +lib/thunderbird45/chrome/pippki/content/pippki/downloadcert.js +lib/thunderbird45/chrome/pippki/content/pippki/downloadcert.xul +lib/thunderbird45/chrome/pippki/content/pippki/editcacert.xul +lib/thunderbird45/chrome/pippki/content/pippki/editcerts.js +lib/thunderbird45/chrome/pippki/content/pippki/exceptionDialog.js +lib/thunderbird45/chrome/pippki/content/pippki/exceptionDialog.xul +lib/thunderbird45/chrome/pippki/content/pippki/load_device.xul +lib/thunderbird45/chrome/pippki/content/pippki/password.js +lib/thunderbird45/chrome/pippki/content/pippki/pippki.js +lib/thunderbird45/chrome/pippki/content/pippki/protectedAuth.js +lib/thunderbird45/chrome/pippki/content/pippki/protectedAuth.xul +lib/thunderbird45/chrome/pippki/content/pippki/resetpassword.js +lib/thunderbird45/chrome/pippki/content/pippki/resetpassword.xul +lib/thunderbird45/chrome/pippki/content/pippki/setp12password.xul +lib/thunderbird45/chrome/pippki/content/pippki/viewCertDetails.js +lib/thunderbird45/chrome/pippki/content/pippki/viewCertDetails.xul +lib/thunderbird45/chrome/toolkit/content/cookie/cookieAcceptDialog.js +lib/thunderbird45/chrome/toolkit/content/cookie/cookieAcceptDialog.xul +lib/thunderbird45/chrome/toolkit/content/extensions/ext-alarms.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-backgroundPage.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-cookies.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-extension.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-i18n.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-idle.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-notifications.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-runtime.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-storage.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-test.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-webNavigation.js +lib/thunderbird45/chrome/toolkit/content/extensions/ext-webRequest.js +lib/thunderbird45/chrome/toolkit/content/extensions/schemas/cookies.json +lib/thunderbird45/chrome/toolkit/content/extensions/schemas/extension_types.json +lib/thunderbird45/chrome/toolkit/content/extensions/schemas/web_navigation.json +lib/thunderbird45/chrome/toolkit/content/extensions/schemas/web_request.json +lib/thunderbird45/chrome/toolkit/content/formautofill/requestAutocomplete.js +lib/thunderbird45/chrome/toolkit/content/formautofill/requestAutocomplete.xhtml +lib/thunderbird45/chrome/toolkit/content/gfxsanity/gfxFrameScript.js +lib/thunderbird45/chrome/toolkit/content/gfxsanity/sanityparent.html +lib/thunderbird45/chrome/toolkit/content/gfxsanity/sanitytest.html +lib/thunderbird45/chrome/toolkit/content/gfxsanity/videotest.mp4 +lib/thunderbird45/chrome/toolkit/content/global/BrowserElementChild.js +lib/thunderbird45/chrome/toolkit/content/global/BrowserElementChildPreload.js +lib/thunderbird45/chrome/toolkit/content/global/BrowserElementCopyPaste.js +lib/thunderbird45/chrome/toolkit/content/global/BrowserElementPanning.js +lib/thunderbird45/chrome/toolkit/content/global/BrowserElementPanningAPZDisabled.js +lib/thunderbird45/chrome/toolkit/content/global/TopLevelVideoDocument.js +lib/thunderbird45/chrome/toolkit/content/global/XPCNativeWrapper.js +lib/thunderbird45/chrome/toolkit/content/global/about.js +lib/thunderbird45/chrome/toolkit/content/global/about.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutAbout.js +lib/thunderbird45/chrome/toolkit/content/global/aboutAbout.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutCache.js +lib/thunderbird45/chrome/toolkit/content/global/aboutMemory.css +lib/thunderbird45/chrome/toolkit/content/global/aboutMemory.js +lib/thunderbird45/chrome/toolkit/content/global/aboutMemory.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutNetworking.js +lib/thunderbird45/chrome/toolkit/content/global/aboutNetworking.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutRights.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutServiceWorkers.js +lib/thunderbird45/chrome/toolkit/content/global/aboutServiceWorkers.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutSupport.js +lib/thunderbird45/chrome/toolkit/content/global/aboutSupport.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutTelemetry.css +lib/thunderbird45/chrome/toolkit/content/global/aboutTelemetry.js +lib/thunderbird45/chrome/toolkit/content/global/aboutTelemetry.xhtml +lib/thunderbird45/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.css +lib/thunderbird45/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.js +lib/thunderbird45/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.xhtml +lib/thunderbird45/chrome/toolkit/content/global/accessibility/AccessFu.css +lib/thunderbird45/chrome/toolkit/content/global/accessibility/clicked.ogg +lib/thunderbird45/chrome/toolkit/content/global/accessibility/content-script.js +lib/thunderbird45/chrome/toolkit/content/global/accessibility/virtual_cursor_key.ogg +lib/thunderbird45/chrome/toolkit/content/global/accessibility/virtual_cursor_move.ogg +lib/thunderbird45/chrome/toolkit/content/global/alerts/alert.css +lib/thunderbird45/chrome/toolkit/content/global/alerts/alert.js +lib/thunderbird45/chrome/toolkit/content/global/alerts/alert.xul +lib/thunderbird45/chrome/toolkit/content/global/appPicker.js +lib/thunderbird45/chrome/toolkit/content/global/appPicker.xul +lib/thunderbird45/chrome/toolkit/content/global/autocomplete.css +lib/thunderbird45/chrome/toolkit/content/global/backgroundPageThumbsContent.js +lib/thunderbird45/chrome/toolkit/content/global/bindings/autocomplete.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/browser.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/button.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/checkbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/colorpicker.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/datetimepicker.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/dialog.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/editor.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/expander.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/filefield.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/findbar.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/general.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/groupbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/listbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/menu.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/menulist.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/notification.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/numberbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/popup.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/preferences.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/progressmeter.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/radio.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/remote-browser.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/resizer.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/richlistbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/scale.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/scrollbar.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/scrollbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/spinbuttons.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/splitter.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/stringbundle.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/tabbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/text.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/textbox.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/toolbar.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/toolbarbutton.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/tree.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/videocontrols.css +lib/thunderbird45/chrome/toolkit/content/global/bindings/videocontrols.xml +lib/thunderbird45/chrome/toolkit/content/global/bindings/wizard.xml +lib/thunderbird45/chrome/toolkit/content/global/browser-child.js +lib/thunderbird45/chrome/toolkit/content/global/browser-content.js +lib/thunderbird45/chrome/toolkit/content/global/buildconfig.html +lib/thunderbird45/chrome/toolkit/content/global/commonDialog.css +lib/thunderbird45/chrome/toolkit/content/global/commonDialog.js +lib/thunderbird45/chrome/toolkit/content/global/commonDialog.xul +lib/thunderbird45/chrome/toolkit/content/global/config.js +lib/thunderbird45/chrome/toolkit/content/global/config.xul +lib/thunderbird45/chrome/toolkit/content/global/console.css +lib/thunderbird45/chrome/toolkit/content/global/console.js +lib/thunderbird45/chrome/toolkit/content/global/console.xul +lib/thunderbird45/chrome/toolkit/content/global/consoleBindings.xml +lib/thunderbird45/chrome/toolkit/content/global/contentAreaUtils.js +lib/thunderbird45/chrome/toolkit/content/global/customizeToolbar.css +lib/thunderbird45/chrome/toolkit/content/global/customizeToolbar.js +lib/thunderbird45/chrome/toolkit/content/global/customizeToolbar.xul +lib/thunderbird45/chrome/toolkit/content/global/devicestorage.properties +lib/thunderbird45/chrome/toolkit/content/global/dialogOverlay.js +lib/thunderbird45/chrome/toolkit/content/global/dialogOverlay.xul +lib/thunderbird45/chrome/toolkit/content/global/directionDetector.html +lib/thunderbird45/chrome/toolkit/content/global/editMenuOverlay.js +lib/thunderbird45/chrome/toolkit/content/global/editMenuOverlay.xul +lib/thunderbird45/chrome/toolkit/content/global/extensions.js +lib/thunderbird45/chrome/toolkit/content/global/filepicker.js +lib/thunderbird45/chrome/toolkit/content/global/filepicker.properties +lib/thunderbird45/chrome/toolkit/content/global/filepicker.xul +lib/thunderbird45/chrome/toolkit/content/global/findUtils.js +lib/thunderbird45/chrome/toolkit/content/global/finddialog.js +lib/thunderbird45/chrome/toolkit/content/global/finddialog.xul +lib/thunderbird45/chrome/toolkit/content/global/forms.js +lib/thunderbird45/chrome/toolkit/content/global/globalOverlay.js +lib/thunderbird45/chrome/toolkit/content/global/globalOverlay.xul +lib/thunderbird45/chrome/toolkit/content/global/inlineSpellCheckUI.js +lib/thunderbird45/chrome/toolkit/content/global/license.html +lib/thunderbird45/chrome/toolkit/content/global/manifestMessages.js +lib/thunderbird45/chrome/toolkit/content/global/menulist.css +lib/thunderbird45/chrome/toolkit/content/global/minimal-xul.css +lib/thunderbird45/chrome/toolkit/content/global/mozilla.xhtml +lib/thunderbird45/chrome/toolkit/content/global/netError.xhtml +lib/thunderbird45/chrome/toolkit/content/global/notfound.wav +lib/thunderbird45/chrome/toolkit/content/global/nsClipboard.js +lib/thunderbird45/chrome/toolkit/content/global/nsDragAndDrop.js +lib/thunderbird45/chrome/toolkit/content/global/nsUserSettings.js +lib/thunderbird45/chrome/toolkit/content/global/platformHTMLBindings.xml +lib/thunderbird45/chrome/toolkit/content/global/plugins.css +lib/thunderbird45/chrome/toolkit/content/global/plugins.html +lib/thunderbird45/chrome/toolkit/content/global/preload.js +lib/thunderbird45/chrome/toolkit/content/global/printPageSetup.js +lib/thunderbird45/chrome/toolkit/content/global/printPageSetup.xul +lib/thunderbird45/chrome/toolkit/content/global/printPreviewBindings.xml +lib/thunderbird45/chrome/toolkit/content/global/printPreviewProgress.js +lib/thunderbird45/chrome/toolkit/content/global/printPreviewProgress.xul +lib/thunderbird45/chrome/toolkit/content/global/printProgress.js +lib/thunderbird45/chrome/toolkit/content/global/printProgress.xul +lib/thunderbird45/chrome/toolkit/content/global/printUtils.js +lib/thunderbird45/chrome/toolkit/content/global/printdialog.js +lib/thunderbird45/chrome/toolkit/content/global/printdialog.xul +lib/thunderbird45/chrome/toolkit/content/global/printjoboptions.js +lib/thunderbird45/chrome/toolkit/content/global/printjoboptions.xul +lib/thunderbird45/chrome/toolkit/content/global/process-content.js +lib/thunderbird45/chrome/toolkit/content/global/reader/aboutReader.html +lib/thunderbird45/chrome/toolkit/content/global/reader/aboutReader.js +lib/thunderbird45/chrome/toolkit/content/global/remote-test-ipc.js +lib/thunderbird45/chrome/toolkit/content/global/resetProfile.css +lib/thunderbird45/chrome/toolkit/content/global/resetProfile.js +lib/thunderbird45/chrome/toolkit/content/global/resetProfile.xul +lib/thunderbird45/chrome/toolkit/content/global/resetProfileProgress.xul +lib/thunderbird45/chrome/toolkit/content/global/select-child.js +lib/thunderbird45/chrome/toolkit/content/global/selectDialog.js +lib/thunderbird45/chrome/toolkit/content/global/selectDialog.xul +lib/thunderbird45/chrome/toolkit/content/global/strres.js +lib/thunderbird45/chrome/toolkit/content/global/svg/svgBindings.xml +lib/thunderbird45/chrome/toolkit/content/global/tabprompts.css +lib/thunderbird45/chrome/toolkit/content/global/tabprompts.xml +lib/thunderbird45/chrome/toolkit/content/global/test-ipc.xul +lib/thunderbird45/chrome/toolkit/content/global/textbox.css +lib/thunderbird45/chrome/toolkit/content/global/treeUtils.js +lib/thunderbird45/chrome/toolkit/content/global/viewPartialSource.js +lib/thunderbird45/chrome/toolkit/content/global/viewPartialSource.xul +lib/thunderbird45/chrome/toolkit/content/global/viewSource-content.js +lib/thunderbird45/chrome/toolkit/content/global/viewSource.css +lib/thunderbird45/chrome/toolkit/content/global/viewSource.js +lib/thunderbird45/chrome/toolkit/content/global/viewSource.xul +lib/thunderbird45/chrome/toolkit/content/global/viewSourceUtils.js +lib/thunderbird45/chrome/toolkit/content/global/viewZoomOverlay.js +lib/thunderbird45/chrome/toolkit/content/global/xml/XMLMonoPrint.css +lib/thunderbird45/chrome/toolkit/content/global/xml/XMLPrettyPrint.css +lib/thunderbird45/chrome/toolkit/content/global/xml/XMLPrettyPrint.xml +lib/thunderbird45/chrome/toolkit/content/global/xml/XMLPrettyPrint.xsl +lib/thunderbird45/chrome/toolkit/content/global/xul.css +lib/thunderbird45/chrome/toolkit/content/mozapps/downloads/DownloadProgressListener.js +lib/thunderbird45/chrome/toolkit/content/mozapps/downloads/download.xml +lib/thunderbird45/chrome/toolkit/content/mozapps/downloads/downloads.css +lib/thunderbird45/chrome/toolkit/content/mozapps/downloads/downloads.js +lib/thunderbird45/chrome/toolkit/content/mozapps/downloads/downloads.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/downloads/helperApps.js +lib/thunderbird45/chrome/toolkit/content/mozapps/downloads/unknownContentType.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/OpenH264-license.txt +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/about.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/about.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/blocklist.css +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/blocklist.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/blocklist.xml +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/blocklist.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/eula.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/eula.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/extensions.css +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/extensions.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/extensions.xml +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/extensions.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/gmpPrefs.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/list.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/list.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/newaddon.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/newaddon.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/pluginPrefs.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/selectAddons.css +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/selectAddons.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/selectAddons.xml +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/selectAddons.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/setting.xml +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/update.js +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/update.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/extensions/updateinfo.xsl +lib/thunderbird45/chrome/toolkit/content/mozapps/handling/dialog.js +lib/thunderbird45/chrome/toolkit/content/mozapps/handling/dialog.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/handling/handler.css +lib/thunderbird45/chrome/toolkit/content/mozapps/handling/handler.xml +lib/thunderbird45/chrome/toolkit/content/mozapps/preferences/changemp.js +lib/thunderbird45/chrome/toolkit/content/mozapps/preferences/changemp.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/preferences/fontbuilder.js +lib/thunderbird45/chrome/toolkit/content/mozapps/preferences/removemp.js +lib/thunderbird45/chrome/toolkit/content/mozapps/preferences/removemp.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/profile/createProfileWizard.js +lib/thunderbird45/chrome/toolkit/content/mozapps/profile/createProfileWizard.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/profile/profileSelection.js +lib/thunderbird45/chrome/toolkit/content/mozapps/profile/profileSelection.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/xpinstall/xpinstallConfirm.css +lib/thunderbird45/chrome/toolkit/content/mozapps/xpinstall/xpinstallConfirm.js +lib/thunderbird45/chrome/toolkit/content/mozapps/xpinstall/xpinstallConfirm.xul +lib/thunderbird45/chrome/toolkit/content/mozapps/xpinstall/xpinstallItem.xml +lib/thunderbird45/chrome/toolkit/content/passwordmgr/login.xml +lib/thunderbird45/chrome/toolkit/content/passwordmgr/passwordManager.js +lib/thunderbird45/chrome/toolkit/content/passwordmgr/passwordManager.xul +lib/thunderbird45/chrome/toolkit/content/passwordmgr/passwordManagerCommon.js +lib/thunderbird45/chrome/toolkit/content/passwordmgr/passwordManagerExceptions.js +lib/thunderbird45/chrome/toolkit/content/passwordmgr/passwordManagerExceptions.xul +lib/thunderbird45/chrome/toolkit/content/passwordmgr/recipes.json +lib/thunderbird45/chrome/toolkit/content/satchel/formSubmitListener.js +lib/thunderbird45/chrome/toolkit/content/xbl-marquee/xbl-marquee.css +lib/thunderbird45/chrome/toolkit/content/xbl-marquee/xbl-marquee.xml +lib/thunderbird45/chrome/toolkit/pluginproblem/pluginFinderBinding.css +lib/thunderbird45/chrome/toolkit/pluginproblem/pluginProblem.xml +lib/thunderbird45/chrome/toolkit/pluginproblem/pluginProblemBinding.css +lib/thunderbird45/chrome/toolkit/pluginproblem/pluginProblemContent.css +lib/thunderbird45/chrome/toolkit/res/arrow-left.gif +lib/thunderbird45/chrome/toolkit/res/arrow-right.gif +lib/thunderbird45/chrome/toolkit/res/arrow.gif +lib/thunderbird45/chrome/toolkit/res/arrowd-left.gif +lib/thunderbird45/chrome/toolkit/res/arrowd-right.gif +lib/thunderbird45/chrome/toolkit/res/arrowd.gif +lib/thunderbird45/chrome/toolkit/res/broken-image.png +lib/thunderbird45/chrome/toolkit/res/charsetData.properties +lib/thunderbird45/chrome/toolkit/res/counterstyles.css +lib/thunderbird45/chrome/toolkit/res/forms.css +lib/thunderbird45/chrome/toolkit/res/hiddenWindow.html +lib/thunderbird45/chrome/toolkit/res/html.css +lib/thunderbird45/chrome/toolkit/res/loading-image.png +lib/thunderbird45/chrome/toolkit/res/mathml.css +lib/thunderbird45/chrome/toolkit/res/noframes.css +lib/thunderbird45/chrome/toolkit/res/noscript.css +lib/thunderbird45/chrome/toolkit/res/number-control.css +lib/thunderbird45/chrome/toolkit/res/plaintext.css +lib/thunderbird45/chrome/toolkit/res/quirk.css +lib/thunderbird45/chrome/toolkit/res/ua.css +lib/thunderbird45/chrome/toolkit/res/viewsource.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/Filepicker.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/about.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/aboutCache.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/aboutCacheEntry.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/aboutMemory.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/aboutReader.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/aboutReaderContent.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/aboutReaderControls.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/aboutSupport.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/alerts/alert-common.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/alerts/alert.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/appPicker.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-dn-dis.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-dn-hov.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-dn-sharp.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-dn.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-down.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-lft-dis.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-lft-sharp-end.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-lft-sharp.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-lft.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-rit-dis.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-rit-sharp-end.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-rit-sharp.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-rit.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-up-dis.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-up-hov.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-up-sharp.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/arrow-up.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/panelarrow-horizontal-themed.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/panelarrow-horizontal.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/panelarrow-vertical-themed.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/arrow/panelarrow-vertical.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/autocomplete.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/button.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/checkbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/checkbox/cbox-check-dis.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/checkbox/cbox-check.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/colorpicker.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/commonDialog.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/config.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/console/console-error-caret.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/console/console-error-dash.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/console/console-toolbar.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/console/console.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/console/console.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/console/itemSelected.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/customizeToolbar.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/datetimepicker.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/dialog.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/dirListing/dirListing.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/dirListing/folder.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/dirListing/local.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/dirListing/remote.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/dirListing/up.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/dropmarker.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/expander.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/filefield.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/filepicker.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/findBar.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/global.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/globalBindings.xml +lib/thunderbird45/chrome/toolkit/skin/classic/global/groupbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Authentication.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Close.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Error.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Landscape.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Minimize.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Portrait.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Print-preview.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Question.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Restore.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Search-close.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Search-glass.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/Warning.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/autocomplete-search.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/autoscroll.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/blacklist_favicon.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/blacklist_large.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/close-inverted.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/close-inverted@2x.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/close.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/close.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/close@2x.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/collapse.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/error-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/error-64.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/expand.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/find-arrows.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/folder-item.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/info.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/information-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/information-24.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/information-32.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/loading-inverted.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/loading-inverted@2x.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/loading_16.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/panelarrow-horizontal.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/panelarrow-vertical.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/question-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/question-64.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/resizer-rtl.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/resizer.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/sslWarning.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/tabprompts-bgtexture.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/warning-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/warning-64.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/warning-large.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/warning.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/webapps-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/webapps-64.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/icons/windowControls.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/in-content/check-partial.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/in-content/check.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/in-content/common.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/in-content/dropdown.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/in-content/help-glyph.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/in-content/info-pages.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/in-content/radio.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/linkTree.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/listbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/TopLevelImageDocument.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/TopLevelVideoDocument.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/clicktoplay-bgtexture.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/error.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/fullscreenButton.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/imagedoc-darknoise.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/imagedoc-lightnoise.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/muteButton.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/noAudio.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/pauseButton.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/playButton.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/scrubberThumb.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/scrubberThumbWide.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/stalled.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/throbber.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/unmuteButton.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/videoClickToPlayButton.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/videocontrols.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/volume-empty.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/media/volume-full.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/menu.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/menu/shared-menu-check-active.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/menu/shared-menu-check-black.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/menu/shared-menu-check-hover.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/menu/shared-menu-check.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/menu/shared-menu-check@2x.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/menulist.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/netError.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/notification.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/numberbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/passwordmgr.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/popup.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/preferences.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/printPageSetup.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/printPreview.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/printpreview/arrow-left-end.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/printpreview/arrow-left.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/printpreview/arrow-right-end.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/printpreview/arrow-right.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/progressmeter.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/radio.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/radio/radio-check-dis.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/radio/radio-check.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Add-24x24.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Close-24x24.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Delete-24x24.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Minus-24x24.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Plus-24x24.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Reading-List-24x24.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Type-Controls-24x24.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/RM-Type-Controls-Arrow.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/reader/pocket.svg +lib/thunderbird45/chrome/toolkit/skin/classic/global/resizer.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/richlistbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/scale.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/scrollbar/slider.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/scrollbars.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/scrollbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/spinbuttons.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/splitter.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/splitter/grip-bottom.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/splitter/grip-left.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/splitter/grip-right.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/splitter/grip-top.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/tabbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/tabprompts.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/textbox.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/toolbar.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/toolbar/chevron-inverted.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/toolbar/chevron.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/toolbar/spring.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/toolbarbutton.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree.css +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree/columnpicker.gif +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree/sort-asc-classic.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree/sort-asc.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree/sort-dsc-classic.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree/sort-dsc.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree/twisty-clsd.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/tree/twisty-open.png +lib/thunderbird45/chrome/toolkit/skin/classic/global/wizard.css +lib/thunderbird45/chrome/toolkit/skin/classic/help/Toolbar-rtl.png +lib/thunderbird45/chrome/toolkit/skin/classic/help/Toolbar.png +lib/thunderbird45/chrome/toolkit/skin/classic/help/Weblink-rtl.png +lib/thunderbird45/chrome/toolkit/skin/classic/help/Weblink.png +lib/thunderbird45/chrome/toolkit/skin/classic/help/helpFileLayout.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/aboutNetworking.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/aboutServiceWorkers.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/downloads/downloadButtons.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/downloads/downloadIcon.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/downloads/downloads.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/downloads/unknownContentType.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/about.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-error.svg +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-info-negative.svg +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-info-positive.svg +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-warning.svg +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/blocklist.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/cancel.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/category-available.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/category-discover.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/category-plugins.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/category-recent.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/category-search.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/category-service.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/dictionaryGeneric-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/dictionaryGeneric.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/discover-logo.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/eula.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/experimentGeneric.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/extensionGeneric-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/extensionGeneric.svg +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/extensions.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/heart.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/localeGeneric.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/navigation.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/newaddon.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/rating-not-won.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/rating-won.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/selectAddons.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/themeGeneric-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/themeGeneric.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/update.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/extensions/utilities.svg +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/formautofill/requestAutocomplete.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/handling/handling.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/passwordmgr/key-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/passwordmgr/key-64.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/places/defaultFavicon.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/places/defaultFavicon@2x.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginActivate.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginBlocked.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginClose.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginCrashed.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginDisabled.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginDownload.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginMissing.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginStripe.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/pluginBlocked-64.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/pluginBlocked.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/pluginHelp-16.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/plugins/pluginProblem.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/profile/profileSelection.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/profile/profileicon.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/update/downloadButtons.png +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/update/updates.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/viewsource/viewsource.css +lib/thunderbird45/chrome/toolkit/skin/classic/mozapps/xpinstall/xpinstallConfirm.css +lib/thunderbird45/components/AppsService.js +lib/thunderbird45/components/BrowserElementParent.js +lib/thunderbird45/components/ColorAnalyzer.js +lib/thunderbird45/components/ConsoleAPIStorage.js +lib/thunderbird45/components/ContactManager.js +lib/thunderbird45/components/ContentProcessSingleton.js +lib/thunderbird45/components/DownloadLegacy.js +lib/thunderbird45/components/DownloadsStartup.js +lib/thunderbird45/components/FeedProcessor.js +lib/thunderbird45/components/FormAutofillContentService.js +lib/thunderbird45/components/FormAutofillStartup.js +lib/thunderbird45/components/FormHistoryStartup.js +lib/thunderbird45/components/InstallPackagedWebapp.js +lib/thunderbird45/components/MainProcessSingleton.js +lib/thunderbird45/components/NetworkGeolocationProvider.js +lib/thunderbird45/components/PACGenerator.js +lib/thunderbird45/components/PackagedAppUtils.js +lib/thunderbird45/components/PageThumbsProtocol.js +lib/thunderbird45/components/PermissionSettings.js +lib/thunderbird45/components/PlacesCategoriesStarter.js +lib/thunderbird45/components/PresentationDeviceInfoManager.js +lib/thunderbird45/components/Push.js +lib/thunderbird45/components/PushNotificationService.js +lib/thunderbird45/components/SettingsManager.js +lib/thunderbird45/components/SiteSpecificUserAgent.js +lib/thunderbird45/components/TCPPresentationServer.js +lib/thunderbird45/components/TelemetryStartup.js +lib/thunderbird45/components/UnifiedComplete.js +lib/thunderbird45/components/Webapps.js +lib/thunderbird45/components/XULStore.js +lib/thunderbird45/components/aboutRedirector.js +lib/thunderbird45/components/addonManager.js +lib/thunderbird45/components/amContentHandler.js +lib/thunderbird45/components/amInstallTrigger.js +lib/thunderbird45/components/amWebInstallListener.js +lib/thunderbird45/components/captivedetect.js +lib/thunderbird45/components/components.manifest +lib/thunderbird45/components/contentAreaDropListener.js +lib/thunderbird45/components/crypto-SDR.js +lib/thunderbird45/components/facebook.js +lib/thunderbird45/components/folderLookupService.js +lib/thunderbird45/components/glautocomp.js +lib/thunderbird45/components/gtalk.js +lib/thunderbird45/components/htmlMenuBuilder.js +lib/thunderbird45/components/imAccounts.js +lib/thunderbird45/components/imCommands.js +lib/thunderbird45/components/imContacts.js +lib/thunderbird45/components/imConversations.js +lib/thunderbird45/components/imCore.js +lib/thunderbird45/components/imIncomingServer.js +lib/thunderbird45/components/imProtocolInfo.js +lib/thunderbird45/components/interfaces.xpt +lib/thunderbird45/components/irc.js +lib/thunderbird45/components/jsconsole-clhandler.js +lib/thunderbird45/components/jsmimeemitter.js +lib/thunderbird45/components/logger.js +lib/thunderbird45/components/mailContentHandler.js +lib/thunderbird45/components/mailGlue.js +lib/thunderbird45/components/mdn-service.js +lib/thunderbird45/components/messageWakeupService.js +lib/thunderbird45/components/mimeJSComponents.js +lib/thunderbird45/components/msgAsyncPrompter.js +lib/thunderbird45/components/msgOAuth2Module.js +lib/thunderbird45/components/newMailNotificationService.js +lib/thunderbird45/components/newsblog.js +lib/thunderbird45/components/nsAbAutoCompleteMyDomain.js +lib/thunderbird45/components/nsAbAutoCompleteSearch.js +lib/thunderbird45/components/nsAbLDAPAttributeMap.js +lib/thunderbird45/components/nsAbLDAPAutoCompleteSearch.js +lib/thunderbird45/components/nsActivity.js +lib/thunderbird45/components/nsActivityManager.js +lib/thunderbird45/components/nsActivityManagerUI.js +lib/thunderbird45/components/nsAsyncShutdown.js +lib/thunderbird45/components/nsBlocklistService.js +lib/thunderbird45/components/nsBox.js +lib/thunderbird45/components/nsContentDispatchChooser.js +lib/thunderbird45/components/nsContentPrefService.js +lib/thunderbird45/components/nsCrashMonitor.js +lib/thunderbird45/components/nsDefaultCLH.js +lib/thunderbird45/components/nsFilePicker.js +lib/thunderbird45/components/nsFormAutoComplete.js +lib/thunderbird45/components/nsFormHistory.js +lib/thunderbird45/components/nsHandlerService.js +lib/thunderbird45/components/nsHelperAppDlg.js +lib/thunderbird45/components/nsHightail.js +lib/thunderbird45/components/nsINIProcessor.js +lib/thunderbird45/components/nsInputListAutoComplete.js +lib/thunderbird45/components/nsLDAPProtocolHandler.js +lib/thunderbird45/components/nsLivemarkService.js +lib/thunderbird45/components/nsLoginInfo.js +lib/thunderbird45/components/nsLoginManager.js +lib/thunderbird45/components/nsLoginManagerPrompter.js +lib/thunderbird45/components/nsMailDefaultHandler.js +lib/thunderbird45/components/nsMailNewsCommandLineHandler.js +lib/thunderbird45/components/nsMsgTraitService.js +lib/thunderbird45/components/nsNewsAutoCompleteSearch.js +lib/thunderbird45/components/nsPlacesAutoComplete.js +lib/thunderbird45/components/nsPlacesExpiration.js +lib/thunderbird45/components/nsPrompter.js +lib/thunderbird45/components/nsSMTPProtocolHandler.js +lib/thunderbird45/components/nsSearchService.js +lib/thunderbird45/components/nsSearchSuggestions.js +lib/thunderbird45/components/nsSetDefaultMail.js +lib/thunderbird45/components/nsTaggingService.js +lib/thunderbird45/components/nsTerminatorTelemetry.js +lib/thunderbird45/components/nsURLFormatter.js +lib/thunderbird45/components/nsUpdateTimerManager.js +lib/thunderbird45/components/nsUrlClassifierHashCompleter.js +lib/thunderbird45/components/nsUrlClassifierLib.js +lib/thunderbird45/components/nsUrlClassifierListManager.js +lib/thunderbird45/components/nsWebHandlerApp.js +lib/thunderbird45/components/offlineStartup.js +lib/thunderbird45/components/simpleServices.js +lib/thunderbird45/components/skype.js +lib/thunderbird45/components/smileProtocolHandler.js +lib/thunderbird45/components/smime-service.js +lib/thunderbird45/components/steelApplication.js +lib/thunderbird45/components/storage-json.js +lib/thunderbird45/components/twitter.js +lib/thunderbird45/components/txEXSLTRegExFunctions.js +lib/thunderbird45/components/xmpp.js +lib/thunderbird45/components/yahoo.js +lib/thunderbird45/defaults/autoconfig/prefcalls.js +lib/thunderbird45/defaults/messenger/mailViews.dat +lib/thunderbird45/defaults/pref/all-im.js +lib/thunderbird45/defaults/pref/all-l10n.js +lib/thunderbird45/defaults/pref/all-thunderbird.js +lib/thunderbird45/defaults/pref/channel-prefs.js +lib/thunderbird45/defaults/pref/chat-prefs.js +lib/thunderbird45/defaults/pref/composer.js +lib/thunderbird45/defaults/pref/mailnews.js +lib/thunderbird45/defaults/pref/mdn.js +lib/thunderbird45/defaults/pref/smime.js +lib/thunderbird45/defaults/pref/thunderbird-branding.js +lib/thunderbird45/defaults/profile/localstore.rdf +lib/thunderbird45/defaults/profile/mimeTypes.rdf +lib/thunderbird45/defaults/profile/prefs.js +lib/thunderbird45/dependentlibs.list +lib/thunderbird45/dictionaries/en-US.aff +lib/thunderbird45/dictionaries/en-US.dic +lib/thunderbird45/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon.png +lib/thunderbird45/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon64.png +lib/thunderbird45/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf +lib/thunderbird45/greprefs.js +lib/thunderbird45/hyphenation/hyph_af.dic +lib/thunderbird45/hyphenation/hyph_bg.dic +lib/thunderbird45/hyphenation/hyph_ca.dic +lib/thunderbird45/hyphenation/hyph_cy.dic +lib/thunderbird45/hyphenation/hyph_da.dic +lib/thunderbird45/hyphenation/hyph_de-1901.dic +lib/thunderbird45/hyphenation/hyph_de-1996.dic +lib/thunderbird45/hyphenation/hyph_de-CH.dic +lib/thunderbird45/hyphenation/hyph_en_US.dic +lib/thunderbird45/hyphenation/hyph_eo.dic +lib/thunderbird45/hyphenation/hyph_es.dic +lib/thunderbird45/hyphenation/hyph_et.dic +lib/thunderbird45/hyphenation/hyph_fi.dic +lib/thunderbird45/hyphenation/hyph_fr.dic +lib/thunderbird45/hyphenation/hyph_gl.dic +lib/thunderbird45/hyphenation/hyph_hr.dic +lib/thunderbird45/hyphenation/hyph_hsb.dic +lib/thunderbird45/hyphenation/hyph_hu.dic +lib/thunderbird45/hyphenation/hyph_ia.dic +lib/thunderbird45/hyphenation/hyph_is.dic +lib/thunderbird45/hyphenation/hyph_it.dic +lib/thunderbird45/hyphenation/hyph_kmr.dic +lib/thunderbird45/hyphenation/hyph_la.dic +lib/thunderbird45/hyphenation/hyph_lt.dic +lib/thunderbird45/hyphenation/hyph_mn.dic +lib/thunderbird45/hyphenation/hyph_nb.dic +lib/thunderbird45/hyphenation/hyph_nl.dic +lib/thunderbird45/hyphenation/hyph_nn.dic +lib/thunderbird45/hyphenation/hyph_pl.dic +lib/thunderbird45/hyphenation/hyph_pt.dic +lib/thunderbird45/hyphenation/hyph_ru.dic +lib/thunderbird45/hyphenation/hyph_sh.dic +lib/thunderbird45/hyphenation/hyph_sl.dic +lib/thunderbird45/hyphenation/hyph_sv.dic +lib/thunderbird45/hyphenation/hyph_tr.dic +lib/thunderbird45/hyphenation/hyph_uk.dic +lib/thunderbird45/isp/Bogofilter.sfd +lib/thunderbird45/isp/DSPAM.sfd +lib/thunderbird45/isp/POPFile.sfd +lib/thunderbird45/isp/SpamAssassin.sfd +lib/thunderbird45/isp/SpamPal.sfd +lib/thunderbird45/isp/movemail.rdf +lib/thunderbird45/isp/rss.rdf +lib/thunderbird45/libldap60.so +lib/thunderbird45/libldif60.so +lib/thunderbird45/liblgpllibs.so +lib/thunderbird45/libmozsqlite3.so +lib/thunderbird45/libprldap60.so +lib/thunderbird45/libxul.so +lib/thunderbird45/modules/ABQueryUtils.jsm +lib/thunderbird45/modules/AboutReader.jsm +lib/thunderbird45/modules/ActivitiesService.jsm +lib/thunderbird45/modules/ActivitiesServiceFilter.jsm +lib/thunderbird45/modules/AddonManager.jsm +lib/thunderbird45/modules/AlarmDB.jsm +lib/thunderbird45/modules/AlarmService.jsm +lib/thunderbird45/modules/AppConstants.jsm +lib/thunderbird45/modules/AppDownloadManager.jsm +lib/thunderbird45/modules/AppsServiceChild.jsm +lib/thunderbird45/modules/AppsUtils.jsm +lib/thunderbird45/modules/ArrayBufferUtils.jsm +lib/thunderbird45/modules/AsyncShutdown.jsm +lib/thunderbird45/modules/AsyncSpellCheckTestHelper.jsm +lib/thunderbird45/modules/AutoCompleteE10S.jsm +lib/thunderbird45/modules/BackgroundPageThumbs.jsm +lib/thunderbird45/modules/Battery.jsm +lib/thunderbird45/modules/BigInteger.jsm +lib/thunderbird45/modules/BinarySearch.jsm +lib/thunderbird45/modules/BookmarkHTMLUtils.jsm +lib/thunderbird45/modules/BookmarkJSONUtils.jsm +lib/thunderbird45/modules/Bookmarks.jsm +lib/thunderbird45/modules/BrowserElementPromptService.jsm +lib/thunderbird45/modules/BrowserUtils.jsm +lib/thunderbird45/modules/CertUtils.jsm +lib/thunderbird45/modules/CharsetMenu.jsm +lib/thunderbird45/modules/ChromeManifestParser.jsm +lib/thunderbird45/modules/ClientID.jsm +lib/thunderbird45/modules/ClusterLib.js +lib/thunderbird45/modules/ColorAnalyzer_worker.js +lib/thunderbird45/modules/ColorConversion.js +lib/thunderbird45/modules/CommonDialog.jsm +lib/thunderbird45/modules/CompatWarning.jsm +lib/thunderbird45/modules/Console.jsm +lib/thunderbird45/modules/ContactDB.jsm +lib/thunderbird45/modules/ContactService.jsm +lib/thunderbird45/modules/ContentPrefInstance.jsm +lib/thunderbird45/modules/ContentPrefService2.jsm +lib/thunderbird45/modules/ContentPrefServiceChild.jsm +lib/thunderbird45/modules/ContentPrefServiceParent.jsm +lib/thunderbird45/modules/ContentPrefStore.jsm +lib/thunderbird45/modules/ContentPrefUtils.jsm +lib/thunderbird45/modules/CrashMonitor.jsm +lib/thunderbird45/modules/Credentials.jsm +lib/thunderbird45/modules/DOMRequestHelper.jsm +lib/thunderbird45/modules/DataStoreChangeNotifier.jsm +lib/thunderbird45/modules/DataStoreCursorImpl.jsm +lib/thunderbird45/modules/DataStoreDB.jsm +lib/thunderbird45/modules/DeferredSave.jsm +lib/thunderbird45/modules/DeferredTask.jsm +lib/thunderbird45/modules/Deprecated.jsm +lib/thunderbird45/modules/DownloadCore.jsm +lib/thunderbird45/modules/DownloadImport.jsm +lib/thunderbird45/modules/DownloadIntegration.jsm +lib/thunderbird45/modules/DownloadLastDir.jsm +lib/thunderbird45/modules/DownloadList.jsm +lib/thunderbird45/modules/DownloadPaths.jsm +lib/thunderbird45/modules/DownloadStore.jsm +lib/thunderbird45/modules/DownloadTaskbarProgress.jsm +lib/thunderbird45/modules/DownloadUIHelper.jsm +lib/thunderbird45/modules/DownloadUtils.jsm +lib/thunderbird45/modules/Downloads.jsm +lib/thunderbird45/modules/Extension.jsm +lib/thunderbird45/modules/ExtensionContent.jsm +lib/thunderbird45/modules/ExtensionManagement.jsm +lib/thunderbird45/modules/ExtensionStorage.jsm +lib/thunderbird45/modules/ExtensionUtils.jsm +lib/thunderbird45/modules/FeedUtils.jsm +lib/thunderbird45/modules/FileUtils.jsm +lib/thunderbird45/modules/Finder.jsm +lib/thunderbird45/modules/ForgetAboutSite.jsm +lib/thunderbird45/modules/FormAutofill.jsm +lib/thunderbird45/modules/FormAutofillIntegration.jsm +lib/thunderbird45/modules/FormData.jsm +lib/thunderbird45/modules/FormHistory.jsm +lib/thunderbird45/modules/FrameWorker.jsm +lib/thunderbird45/modules/FrameWorkerContent.js +lib/thunderbird45/modules/FreeSpaceWatcher.jsm +lib/thunderbird45/modules/FxAccounts.jsm +lib/thunderbird45/modules/FxAccountsClient.jsm +lib/thunderbird45/modules/FxAccountsCommon.js +lib/thunderbird45/modules/FxAccountsOAuthClient.jsm +lib/thunderbird45/modules/FxAccountsOAuthGrantClient.jsm +lib/thunderbird45/modules/FxAccountsProfile.jsm +lib/thunderbird45/modules/FxAccountsProfileClient.jsm +lib/thunderbird45/modules/FxAccountsStorage.jsm +lib/thunderbird45/modules/FxAccountsWebChannel.jsm +lib/thunderbird45/modules/GMPInstallManager.jsm +lib/thunderbird45/modules/GMPUtils.jsm +lib/thunderbird45/modules/Geometry.jsm +lib/thunderbird45/modules/History.jsm +lib/thunderbird45/modules/Http.jsm +lib/thunderbird45/modules/IOUtils.js +lib/thunderbird45/modules/ISO8601DateUtils.jsm +lib/thunderbird45/modules/ImageObjectProcessor.jsm +lib/thunderbird45/modules/ImportExport.jsm +lib/thunderbird45/modules/IndexedDBHelper.jsm +lib/thunderbird45/modules/InlineSpellChecker.jsm +lib/thunderbird45/modules/InlineSpellCheckerContent.jsm +lib/thunderbird45/modules/InsecurePasswordUtils.jsm +lib/thunderbird45/modules/InterAppCommService.jsm +lib/thunderbird45/modules/JXON.js +lib/thunderbird45/modules/Keyboard.jsm +lib/thunderbird45/modules/Langpacks.jsm +lib/thunderbird45/modules/LightweightThemeConsumer.jsm +lib/thunderbird45/modules/LightweightThemeManager.jsm +lib/thunderbird45/modules/LoadContextInfo.jsm +lib/thunderbird45/modules/Locale.jsm +lib/thunderbird45/modules/Log.jsm +lib/thunderbird45/modules/LoginHelper.jsm +lib/thunderbird45/modules/LoginImport.jsm +lib/thunderbird45/modules/LoginManagerContent.jsm +lib/thunderbird45/modules/LoginManagerParent.jsm +lib/thunderbird45/modules/LoginRecipes.jsm +lib/thunderbird45/modules/LoginStore.jsm +lib/thunderbird45/modules/MailConsts.js +lib/thunderbird45/modules/MailUtils.js +lib/thunderbird45/modules/ManifestFinder.jsm +lib/thunderbird45/modules/ManifestObtainer.jsm +lib/thunderbird45/modules/ManifestProcessor.jsm +lib/thunderbird45/modules/MatchPattern.jsm +lib/thunderbird45/modules/MessageBroadcaster.jsm +lib/thunderbird45/modules/MessagePortBase.jsm +lib/thunderbird45/modules/MessagePortWorker.js +lib/thunderbird45/modules/Microformats.js +lib/thunderbird45/modules/MozSocialAPI.jsm +lib/thunderbird45/modules/MsgHdrSyntheticView.js +lib/thunderbird45/modules/NativeApp.jsm +lib/thunderbird45/modules/NetUtil.jsm +lib/thunderbird45/modules/NewTabUtils.jsm +lib/thunderbird45/modules/NormalizedMap.jsm +lib/thunderbird45/modules/NotificationDB.jsm +lib/thunderbird45/modules/OAuth2.jsm +lib/thunderbird45/modules/OAuth2Providers.jsm +lib/thunderbird45/modules/OSCrypto.jsm +lib/thunderbird45/modules/ObjectUtils.jsm +lib/thunderbird45/modules/OfflineCacheInstaller.jsm +lib/thunderbird45/modules/OperatorApps.jsm +lib/thunderbird45/modules/PageMenu.jsm +lib/thunderbird45/modules/PageMetadata.jsm +lib/thunderbird45/modules/PageThumbUtils.jsm +lib/thunderbird45/modules/PageThumbs.jsm +lib/thunderbird45/modules/PageThumbsWorker.js +lib/thunderbird45/modules/PerfMeasurement.jsm +lib/thunderbird45/modules/PermissionSettings.jsm +lib/thunderbird45/modules/PermissionsInstaller.jsm +lib/thunderbird45/modules/PermissionsTable.jsm +lib/thunderbird45/modules/PermissionsUtils.jsm +lib/thunderbird45/modules/PhoneNumber.jsm +lib/thunderbird45/modules/PhoneNumberMetaData.jsm +lib/thunderbird45/modules/PhoneNumberNormalizer.jsm +lib/thunderbird45/modules/PhoneNumberUtils.jsm +lib/thunderbird45/modules/PlacesBackups.jsm +lib/thunderbird45/modules/PlacesDBUtils.jsm +lib/thunderbird45/modules/PlacesRemoteTabsAutocompleteProvider.jsm +lib/thunderbird45/modules/PlacesSearchAutocompleteProvider.jsm +lib/thunderbird45/modules/PlacesTransactions.jsm +lib/thunderbird45/modules/PlacesUtils.jsm +lib/thunderbird45/modules/PluralForm.jsm +lib/thunderbird45/modules/PopupNotifications.jsm +lib/thunderbird45/modules/Preferences.jsm +lib/thunderbird45/modules/Prefetcher.jsm +lib/thunderbird45/modules/PresentationDeviceInfoManager.jsm +lib/thunderbird45/modules/PrivateBrowsingUtils.jsm +lib/thunderbird45/modules/ProfileAge.jsm +lib/thunderbird45/modules/Promise-backend.js +lib/thunderbird45/modules/Promise.jsm +lib/thunderbird45/modules/PromiseMessage.jsm +lib/thunderbird45/modules/PromiseUtils.jsm +lib/thunderbird45/modules/PromiseWorker.jsm +lib/thunderbird45/modules/PropertyListUtils.jsm +lib/thunderbird45/modules/PushCrypto.jsm +lib/thunderbird45/modules/PushDB.jsm +lib/thunderbird45/modules/PushRecord.jsm +lib/thunderbird45/modules/PushService.jsm +lib/thunderbird45/modules/PushServiceChildPreload.jsm +lib/thunderbird45/modules/PushServiceHttp2.jsm +lib/thunderbird45/modules/PushServiceWebSocket.jsm +lib/thunderbird45/modules/ReaderMode.jsm +lib/thunderbird45/modules/RemoteAddonsChild.jsm +lib/thunderbird45/modules/RemoteAddonsParent.jsm +lib/thunderbird45/modules/RemoteController.jsm +lib/thunderbird45/modules/RemoteDebuggerServer.jsm +lib/thunderbird45/modules/RemoteFinder.jsm +lib/thunderbird45/modules/RemotePageManager.jsm +lib/thunderbird45/modules/RemoteSecurityUI.jsm +lib/thunderbird45/modules/RemoteWebProgress.jsm +lib/thunderbird45/modules/RequestAutocompleteUI.jsm +lib/thunderbird45/modules/RequestSyncApp.jsm +lib/thunderbird45/modules/RequestSyncService.jsm +lib/thunderbird45/modules/RequestSyncTask.jsm +lib/thunderbird45/modules/ResetProfile.jsm +lib/thunderbird45/modules/ResourceStatsDB.jsm +lib/thunderbird45/modules/ResourceStatsService.jsm +lib/thunderbird45/modules/RokuApp.jsm +lib/thunderbird45/modules/SafeBrowsing.jsm +lib/thunderbird45/modules/Schemas.jsm +lib/thunderbird45/modules/ScriptPreloader.jsm +lib/thunderbird45/modules/ScrollPosition.jsm +lib/thunderbird45/modules/SearchIntegration.js +lib/thunderbird45/modules/SearchStaticData.jsm +lib/thunderbird45/modules/SearchSuggestionController.jsm +lib/thunderbird45/modules/SelectContentHelper.jsm +lib/thunderbird45/modules/SelectParentHelper.jsm +lib/thunderbird45/modules/Services.jsm +lib/thunderbird45/modules/SessionRecorder.jsm +lib/thunderbird45/modules/SettingsDB.jsm +lib/thunderbird45/modules/SettingsRequestManager.jsm +lib/thunderbird45/modules/SharedPromptUtils.jsm +lib/thunderbird45/modules/ShimWaiver.jsm +lib/thunderbird45/modules/ShortcutUtils.jsm +lib/thunderbird45/modules/SimpleServiceDiscovery.jsm +lib/thunderbird45/modules/Sntp.jsm +lib/thunderbird45/modules/SocialService.jsm +lib/thunderbird45/modules/SpatialNavigation.jsm +lib/thunderbird45/modules/Sqlite.jsm +lib/thunderbird45/modules/StoreTrustAnchor.jsm +lib/thunderbird45/modules/StringBundle.js +lib/thunderbird45/modules/SystemMessagePermissionsChecker.jsm +lib/thunderbird45/modules/SystemUpdateService.jsm +lib/thunderbird45/modules/Task.jsm +lib/thunderbird45/modules/TelemetryArchive.jsm +lib/thunderbird45/modules/TelemetryController.jsm +lib/thunderbird45/modules/TelemetryEnvironment.jsm +lib/thunderbird45/modules/TelemetryLog.jsm +lib/thunderbird45/modules/TelemetryReportingPolicy.jsm +lib/thunderbird45/modules/TelemetrySend.jsm +lib/thunderbird45/modules/TelemetrySession.jsm +lib/thunderbird45/modules/TelemetryStopwatch.jsm +lib/thunderbird45/modules/TelemetryStorage.jsm +lib/thunderbird45/modules/TelemetryTimestamps.jsm +lib/thunderbird45/modules/TelemetryUtils.jsm +lib/thunderbird45/modules/ThirdPartyCookieProbe.jsm +lib/thunderbird45/modules/Timer.jsm +lib/thunderbird45/modules/Troubleshoot.jsm +lib/thunderbird45/modules/UITelemetry.jsm +lib/thunderbird45/modules/UpdateUtils.jsm +lib/thunderbird45/modules/UserAgentOverrides.jsm +lib/thunderbird45/modules/UserAgentUpdates.jsm +lib/thunderbird45/modules/UserCustomizations.jsm +lib/thunderbird45/modules/ValueExtractor.jsm +lib/thunderbird45/modules/ViewSourceBrowser.jsm +lib/thunderbird45/modules/WebChannel.jsm +lib/thunderbird45/modules/WebNavigation.jsm +lib/thunderbird45/modules/WebNavigationContent.js +lib/thunderbird45/modules/WebRequest.jsm +lib/thunderbird45/modules/WebRequestCommon.jsm +lib/thunderbird45/modules/WebRequestContent.js +lib/thunderbird45/modules/WebappOSUtils.jsm +lib/thunderbird45/modules/Webapps.jsm +lib/thunderbird45/modules/WindowDraggingUtils.jsm +lib/thunderbird45/modules/Windows8WindowFrameColor.jsm +lib/thunderbird45/modules/WorkerAPI.jsm +lib/thunderbird45/modules/XPCOMUtils.jsm +lib/thunderbird45/modules/XPathGenerator.jsm +lib/thunderbird45/modules/XULRootActor.js +lib/thunderbird45/modules/ZipUtils.jsm +lib/thunderbird45/modules/aboutSupport.js +lib/thunderbird45/modules/aboutSupportUnix.js +lib/thunderbird45/modules/accessibility/AccessFu.jsm +lib/thunderbird45/modules/accessibility/Constants.jsm +lib/thunderbird45/modules/accessibility/ContentControl.jsm +lib/thunderbird45/modules/accessibility/EventManager.jsm +lib/thunderbird45/modules/accessibility/Gestures.jsm +lib/thunderbird45/modules/accessibility/OutputGenerator.jsm +lib/thunderbird45/modules/accessibility/PointerAdapter.jsm +lib/thunderbird45/modules/accessibility/Presentation.jsm +lib/thunderbird45/modules/accessibility/Traversal.jsm +lib/thunderbird45/modules/accessibility/Utils.jsm +lib/thunderbird45/modules/activity/activityModules.js +lib/thunderbird45/modules/activity/alertHook.js +lib/thunderbird45/modules/activity/autosync.js +lib/thunderbird45/modules/activity/glodaIndexer.js +lib/thunderbird45/modules/activity/moveCopy.js +lib/thunderbird45/modules/activity/pop3Download.js +lib/thunderbird45/modules/activity/sendLater.js +lib/thunderbird45/modules/addons/AddonConstants.jsm +lib/thunderbird45/modules/addons/AddonLogging.jsm +lib/thunderbird45/modules/addons/AddonRepository.jsm +lib/thunderbird45/modules/addons/AddonRepository_SQLiteMigrator.jsm +lib/thunderbird45/modules/addons/AddonUpdateChecker.jsm +lib/thunderbird45/modules/addons/Content.js +lib/thunderbird45/modules/addons/GMPProvider.jsm +lib/thunderbird45/modules/addons/LightweightThemeImageOptimizer.jsm +lib/thunderbird45/modules/addons/PluginProvider.jsm +lib/thunderbird45/modules/addons/ProductAddonChecker.jsm +lib/thunderbird45/modules/addons/SpellCheckDictionaryBootstrap.js +lib/thunderbird45/modules/addons/WebExtensionBootstrap.js +lib/thunderbird45/modules/addons/XPIProvider.jsm +lib/thunderbird45/modules/addons/XPIProviderUtils.js +lib/thunderbird45/modules/appIdleManager.js +lib/thunderbird45/modules/attachmentChecker.js +lib/thunderbird45/modules/chatHandler.jsm +lib/thunderbird45/modules/chatNotifications.jsm +lib/thunderbird45/modules/cloudFileAccounts.js +lib/thunderbird45/modules/commonjs/dev/debuggee.js +lib/thunderbird45/modules/commonjs/dev/frame-script.js +lib/thunderbird45/modules/commonjs/dev/panel.js +lib/thunderbird45/modules/commonjs/dev/panel/view.js +lib/thunderbird45/modules/commonjs/dev/ports.js +lib/thunderbird45/modules/commonjs/dev/theme.js +lib/thunderbird45/modules/commonjs/dev/theme/hooks.js +lib/thunderbird45/modules/commonjs/dev/toolbox.js +lib/thunderbird45/modules/commonjs/dev/utils.js +lib/thunderbird45/modules/commonjs/dev/volcan.js +lib/thunderbird45/modules/commonjs/diffpatcher/diff.js +lib/thunderbird45/modules/commonjs/diffpatcher/index.js +lib/thunderbird45/modules/commonjs/diffpatcher/patch.js +lib/thunderbird45/modules/commonjs/diffpatcher/rebase.js +lib/thunderbird45/modules/commonjs/diffpatcher/test/common.js +lib/thunderbird45/modules/commonjs/diffpatcher/test/diff.js +lib/thunderbird45/modules/commonjs/diffpatcher/test/index.js +lib/thunderbird45/modules/commonjs/diffpatcher/test/patch.js +lib/thunderbird45/modules/commonjs/diffpatcher/test/tap.js +lib/thunderbird45/modules/commonjs/framescript/FrameScriptManager.jsm +lib/thunderbird45/modules/commonjs/framescript/content.jsm +lib/thunderbird45/modules/commonjs/framescript/context-menu.js +lib/thunderbird45/modules/commonjs/framescript/manager.js +lib/thunderbird45/modules/commonjs/framescript/util.js +lib/thunderbird45/modules/commonjs/index.js +lib/thunderbird45/modules/commonjs/jetpack-id/index.js +lib/thunderbird45/modules/commonjs/method/core.js +lib/thunderbird45/modules/commonjs/method/test/browser.js +lib/thunderbird45/modules/commonjs/method/test/common.js +lib/thunderbird45/modules/commonjs/mozilla-toolkit-versioning/index.js +lib/thunderbird45/modules/commonjs/mozilla-toolkit-versioning/lib/utils.js +lib/thunderbird45/modules/commonjs/node/os.js +lib/thunderbird45/modules/commonjs/sdk/addon/bootstrap.js +lib/thunderbird45/modules/commonjs/sdk/addon/events.js +lib/thunderbird45/modules/commonjs/sdk/addon/host.js +lib/thunderbird45/modules/commonjs/sdk/addon/installer.js +lib/thunderbird45/modules/commonjs/sdk/addon/manager.js +lib/thunderbird45/modules/commonjs/sdk/addon/runner.js +lib/thunderbird45/modules/commonjs/sdk/addon/window.js +lib/thunderbird45/modules/commonjs/sdk/base64.js +lib/thunderbird45/modules/commonjs/sdk/browser/events.js +lib/thunderbird45/modules/commonjs/sdk/clipboard.js +lib/thunderbird45/modules/commonjs/sdk/console/plain-text.js +lib/thunderbird45/modules/commonjs/sdk/console/traceback.js +lib/thunderbird45/modules/commonjs/sdk/content/content-worker.js +lib/thunderbird45/modules/commonjs/sdk/content/content.js +lib/thunderbird45/modules/commonjs/sdk/content/context-menu.js +lib/thunderbird45/modules/commonjs/sdk/content/events.js +lib/thunderbird45/modules/commonjs/sdk/content/l10n-html.js +lib/thunderbird45/modules/commonjs/sdk/content/loader.js +lib/thunderbird45/modules/commonjs/sdk/content/mod.js +lib/thunderbird45/modules/commonjs/sdk/content/page-mod.js +lib/thunderbird45/modules/commonjs/sdk/content/page-worker.js +lib/thunderbird45/modules/commonjs/sdk/content/sandbox.js +lib/thunderbird45/modules/commonjs/sdk/content/sandbox/events.js +lib/thunderbird45/modules/commonjs/sdk/content/tab-events.js +lib/thunderbird45/modules/commonjs/sdk/content/thumbnail.js +lib/thunderbird45/modules/commonjs/sdk/content/utils.js +lib/thunderbird45/modules/commonjs/sdk/content/worker-child.js +lib/thunderbird45/modules/commonjs/sdk/content/worker.js +lib/thunderbird45/modules/commonjs/sdk/context-menu.js +lib/thunderbird45/modules/commonjs/sdk/context-menu/context.js +lib/thunderbird45/modules/commonjs/sdk/context-menu/core.js +lib/thunderbird45/modules/commonjs/sdk/context-menu/readers.js +lib/thunderbird45/modules/commonjs/sdk/context-menu@2.js +lib/thunderbird45/modules/commonjs/sdk/core/disposable.js +lib/thunderbird45/modules/commonjs/sdk/core/heritage.js +lib/thunderbird45/modules/commonjs/sdk/core/namespace.js +lib/thunderbird45/modules/commonjs/sdk/core/observer.js +lib/thunderbird45/modules/commonjs/sdk/core/promise.js +lib/thunderbird45/modules/commonjs/sdk/core/reference.js +lib/thunderbird45/modules/commonjs/sdk/deprecated/api-utils.js +lib/thunderbird45/modules/commonjs/sdk/deprecated/events/assembler.js +lib/thunderbird45/modules/commonjs/sdk/deprecated/sync-worker.js +lib/thunderbird45/modules/commonjs/sdk/deprecated/unit-test-finder.js +lib/thunderbird45/modules/commonjs/sdk/deprecated/unit-test.js +lib/thunderbird45/modules/commonjs/sdk/deprecated/window-utils.js +lib/thunderbird45/modules/commonjs/sdk/dom/events-shimmed.js +lib/thunderbird45/modules/commonjs/sdk/dom/events.js +lib/thunderbird45/modules/commonjs/sdk/dom/events/keys.js +lib/thunderbird45/modules/commonjs/sdk/event/chrome.js +lib/thunderbird45/modules/commonjs/sdk/event/core.js +lib/thunderbird45/modules/commonjs/sdk/event/dom.js +lib/thunderbird45/modules/commonjs/sdk/event/target.js +lib/thunderbird45/modules/commonjs/sdk/event/utils.js +lib/thunderbird45/modules/commonjs/sdk/frame/hidden-frame.js +lib/thunderbird45/modules/commonjs/sdk/frame/utils.js +lib/thunderbird45/modules/commonjs/sdk/fs/path.js +lib/thunderbird45/modules/commonjs/sdk/hotkeys.js +lib/thunderbird45/modules/commonjs/sdk/indexed-db.js +lib/thunderbird45/modules/commonjs/sdk/input/browser.js +lib/thunderbird45/modules/commonjs/sdk/input/customizable-ui.js +lib/thunderbird45/modules/commonjs/sdk/input/frame.js +lib/thunderbird45/modules/commonjs/sdk/input/system.js +lib/thunderbird45/modules/commonjs/sdk/io/buffer.js +lib/thunderbird45/modules/commonjs/sdk/io/byte-streams.js +lib/thunderbird45/modules/commonjs/sdk/io/file.js +lib/thunderbird45/modules/commonjs/sdk/io/fs.js +lib/thunderbird45/modules/commonjs/sdk/io/stream.js +lib/thunderbird45/modules/commonjs/sdk/io/text-streams.js +lib/thunderbird45/modules/commonjs/sdk/keyboard/hotkeys.js +lib/thunderbird45/modules/commonjs/sdk/keyboard/observer.js +lib/thunderbird45/modules/commonjs/sdk/keyboard/utils.js +lib/thunderbird45/modules/commonjs/sdk/l10n.js +lib/thunderbird45/modules/commonjs/sdk/l10n/core.js +lib/thunderbird45/modules/commonjs/sdk/l10n/html.js +lib/thunderbird45/modules/commonjs/sdk/l10n/json/core.js +lib/thunderbird45/modules/commonjs/sdk/l10n/loader.js +lib/thunderbird45/modules/commonjs/sdk/l10n/locale.js +lib/thunderbird45/modules/commonjs/sdk/l10n/plural-rules.js +lib/thunderbird45/modules/commonjs/sdk/l10n/prefs.js +lib/thunderbird45/modules/commonjs/sdk/l10n/properties/core.js +lib/thunderbird45/modules/commonjs/sdk/lang/functional.js +lib/thunderbird45/modules/commonjs/sdk/lang/functional/concurrent.js +lib/thunderbird45/modules/commonjs/sdk/lang/functional/core.js +lib/thunderbird45/modules/commonjs/sdk/lang/functional/helpers.js +lib/thunderbird45/modules/commonjs/sdk/lang/type.js +lib/thunderbird45/modules/commonjs/sdk/lang/weak-set.js +lib/thunderbird45/modules/commonjs/sdk/loader/cuddlefish.js +lib/thunderbird45/modules/commonjs/sdk/loader/sandbox.js +lib/thunderbird45/modules/commonjs/sdk/messaging.js +lib/thunderbird45/modules/commonjs/sdk/model/core.js +lib/thunderbird45/modules/commonjs/sdk/net/url.js +lib/thunderbird45/modules/commonjs/sdk/net/xhr.js +lib/thunderbird45/modules/commonjs/sdk/notifications.js +lib/thunderbird45/modules/commonjs/sdk/output/system.js +lib/thunderbird45/modules/commonjs/sdk/page-mod.js +lib/thunderbird45/modules/commonjs/sdk/page-mod/match-pattern.js +lib/thunderbird45/modules/commonjs/sdk/page-worker.js +lib/thunderbird45/modules/commonjs/sdk/panel.js +lib/thunderbird45/modules/commonjs/sdk/panel/events.js +lib/thunderbird45/modules/commonjs/sdk/panel/utils.js +lib/thunderbird45/modules/commonjs/sdk/passwords.js +lib/thunderbird45/modules/commonjs/sdk/passwords/utils.js +lib/thunderbird45/modules/commonjs/sdk/places/bookmarks.js +lib/thunderbird45/modules/commonjs/sdk/places/contract.js +lib/thunderbird45/modules/commonjs/sdk/places/events.js +lib/thunderbird45/modules/commonjs/sdk/places/favicon.js +lib/thunderbird45/modules/commonjs/sdk/places/history.js +lib/thunderbird45/modules/commonjs/sdk/places/host/host-bookmarks.js +lib/thunderbird45/modules/commonjs/sdk/places/host/host-query.js +lib/thunderbird45/modules/commonjs/sdk/places/host/host-tags.js +lib/thunderbird45/modules/commonjs/sdk/places/utils.js +lib/thunderbird45/modules/commonjs/sdk/platform/xpcom.js +lib/thunderbird45/modules/commonjs/sdk/preferences/event-target.js +lib/thunderbird45/modules/commonjs/sdk/preferences/native-options.js +lib/thunderbird45/modules/commonjs/sdk/preferences/service.js +lib/thunderbird45/modules/commonjs/sdk/preferences/utils.js +lib/thunderbird45/modules/commonjs/sdk/private-browsing.js +lib/thunderbird45/modules/commonjs/sdk/private-browsing/utils.js +lib/thunderbird45/modules/commonjs/sdk/querystring.js +lib/thunderbird45/modules/commonjs/sdk/remote/child.js +lib/thunderbird45/modules/commonjs/sdk/remote/core.js +lib/thunderbird45/modules/commonjs/sdk/remote/parent.js +lib/thunderbird45/modules/commonjs/sdk/remote/utils.js +lib/thunderbird45/modules/commonjs/sdk/request.js +lib/thunderbird45/modules/commonjs/sdk/selection.js +lib/thunderbird45/modules/commonjs/sdk/self.js +lib/thunderbird45/modules/commonjs/sdk/simple-prefs.js +lib/thunderbird45/modules/commonjs/sdk/simple-storage.js +lib/thunderbird45/modules/commonjs/sdk/stylesheet/style.js +lib/thunderbird45/modules/commonjs/sdk/stylesheet/utils.js +lib/thunderbird45/modules/commonjs/sdk/system.js +lib/thunderbird45/modules/commonjs/sdk/system/child_process.js +lib/thunderbird45/modules/commonjs/sdk/system/child_process/subprocess.js +lib/thunderbird45/modules/commonjs/sdk/system/child_process/subprocess_worker_unix.js +lib/thunderbird45/modules/commonjs/sdk/system/child_process/subprocess_worker_win.js +lib/thunderbird45/modules/commonjs/sdk/system/environment.js +lib/thunderbird45/modules/commonjs/sdk/system/events-shimmed.js +lib/thunderbird45/modules/commonjs/sdk/system/events.js +lib/thunderbird45/modules/commonjs/sdk/system/globals.js +lib/thunderbird45/modules/commonjs/sdk/system/process.js +lib/thunderbird45/modules/commonjs/sdk/system/runtime.js +lib/thunderbird45/modules/commonjs/sdk/system/unload.js +lib/thunderbird45/modules/commonjs/sdk/system/xul-app.js +lib/thunderbird45/modules/commonjs/sdk/system/xul-app.jsm +lib/thunderbird45/modules/commonjs/sdk/tab/events.js +lib/thunderbird45/modules/commonjs/sdk/tabs.js +lib/thunderbird45/modules/commonjs/sdk/tabs/common.js +lib/thunderbird45/modules/commonjs/sdk/tabs/events.js +lib/thunderbird45/modules/commonjs/sdk/tabs/helpers.js +lib/thunderbird45/modules/commonjs/sdk/tabs/namespace.js +lib/thunderbird45/modules/commonjs/sdk/tabs/observer.js +lib/thunderbird45/modules/commonjs/sdk/tabs/tab-fennec.js +lib/thunderbird45/modules/commonjs/sdk/tabs/tab-firefox.js +lib/thunderbird45/modules/commonjs/sdk/tabs/tab.js +lib/thunderbird45/modules/commonjs/sdk/tabs/tabs-firefox.js +lib/thunderbird45/modules/commonjs/sdk/tabs/utils.js +lib/thunderbird45/modules/commonjs/sdk/tabs/worker.js +lib/thunderbird45/modules/commonjs/sdk/test.js +lib/thunderbird45/modules/commonjs/sdk/test/assert.js +lib/thunderbird45/modules/commonjs/sdk/test/harness.js +lib/thunderbird45/modules/commonjs/sdk/test/httpd.js +lib/thunderbird45/modules/commonjs/sdk/test/loader.js +lib/thunderbird45/modules/commonjs/sdk/test/memory.js +lib/thunderbird45/modules/commonjs/sdk/test/options.js +lib/thunderbird45/modules/commonjs/sdk/test/runner.js +lib/thunderbird45/modules/commonjs/sdk/test/utils.js +lib/thunderbird45/modules/commonjs/sdk/timers.js +lib/thunderbird45/modules/commonjs/sdk/ui.js +lib/thunderbird45/modules/commonjs/sdk/ui/button/action.js +lib/thunderbird45/modules/commonjs/sdk/ui/button/contract.js +lib/thunderbird45/modules/commonjs/sdk/ui/button/toggle.js +lib/thunderbird45/modules/commonjs/sdk/ui/button/view.js +lib/thunderbird45/modules/commonjs/sdk/ui/button/view/events.js +lib/thunderbird45/modules/commonjs/sdk/ui/component.js +lib/thunderbird45/modules/commonjs/sdk/ui/frame.js +lib/thunderbird45/modules/commonjs/sdk/ui/frame/model.js +lib/thunderbird45/modules/commonjs/sdk/ui/frame/view.html +lib/thunderbird45/modules/commonjs/sdk/ui/frame/view.js +lib/thunderbird45/modules/commonjs/sdk/ui/id.js +lib/thunderbird45/modules/commonjs/sdk/ui/sidebar.js +lib/thunderbird45/modules/commonjs/sdk/ui/sidebar/actions.js +lib/thunderbird45/modules/commonjs/sdk/ui/sidebar/contract.js +lib/thunderbird45/modules/commonjs/sdk/ui/sidebar/namespace.js +lib/thunderbird45/modules/commonjs/sdk/ui/sidebar/utils.js +lib/thunderbird45/modules/commonjs/sdk/ui/sidebar/view.js +lib/thunderbird45/modules/commonjs/sdk/ui/state.js +lib/thunderbird45/modules/commonjs/sdk/ui/state/events.js +lib/thunderbird45/modules/commonjs/sdk/ui/toolbar.js +lib/thunderbird45/modules/commonjs/sdk/ui/toolbar/model.js +lib/thunderbird45/modules/commonjs/sdk/ui/toolbar/view.js +lib/thunderbird45/modules/commonjs/sdk/uri/resource.js +lib/thunderbird45/modules/commonjs/sdk/url.js +lib/thunderbird45/modules/commonjs/sdk/url/utils.js +lib/thunderbird45/modules/commonjs/sdk/util/array.js +lib/thunderbird45/modules/commonjs/sdk/util/collection.js +lib/thunderbird45/modules/commonjs/sdk/util/contract.js +lib/thunderbird45/modules/commonjs/sdk/util/deprecate.js +lib/thunderbird45/modules/commonjs/sdk/util/dispatcher.js +lib/thunderbird45/modules/commonjs/sdk/util/list.js +lib/thunderbird45/modules/commonjs/sdk/util/match-pattern.js +lib/thunderbird45/modules/commonjs/sdk/util/object.js +lib/thunderbird45/modules/commonjs/sdk/util/rules.js +lib/thunderbird45/modules/commonjs/sdk/util/sequence.js +lib/thunderbird45/modules/commonjs/sdk/util/uuid.js +lib/thunderbird45/modules/commonjs/sdk/view/core.js +lib/thunderbird45/modules/commonjs/sdk/window/browser.js +lib/thunderbird45/modules/commonjs/sdk/window/events.js +lib/thunderbird45/modules/commonjs/sdk/window/helpers.js +lib/thunderbird45/modules/commonjs/sdk/window/namespace.js +lib/thunderbird45/modules/commonjs/sdk/window/utils.js +lib/thunderbird45/modules/commonjs/sdk/windows.js +lib/thunderbird45/modules/commonjs/sdk/windows/fennec.js +lib/thunderbird45/modules/commonjs/sdk/windows/firefox.js +lib/thunderbird45/modules/commonjs/sdk/windows/observer.js +lib/thunderbird45/modules/commonjs/sdk/windows/tabs-fennec.js +lib/thunderbird45/modules/commonjs/sdk/worker/utils.js +lib/thunderbird45/modules/commonjs/sdk/zip/utils.js +lib/thunderbird45/modules/commonjs/test.js +lib/thunderbird45/modules/commonjs/toolkit/loader.js +lib/thunderbird45/modules/commonjs/toolkit/require.js +lib/thunderbird45/modules/ctypes.jsm +lib/thunderbird45/modules/dbViewWrapper.js +lib/thunderbird45/modules/debug.js +lib/thunderbird45/modules/devtools/Console.jsm +lib/thunderbird45/modules/devtools/Loader.jsm +lib/thunderbird45/modules/devtools/Simulator.jsm +lib/thunderbird45/modules/devtools/dbg-client.jsm +lib/thunderbird45/modules/devtools/dbg-server.jsm +lib/thunderbird45/modules/devtools/event-emitter.js +lib/thunderbird45/modules/devtools/shared/Console.jsm +lib/thunderbird45/modules/devtools/shared/Loader.jsm +lib/thunderbird45/modules/devtools/shared/apps/Simulator.jsm +lib/thunderbird45/modules/displayNameUtils.js +lib/thunderbird45/modules/distribution.js +lib/thunderbird45/modules/editorUtilities.jsm +lib/thunderbird45/modules/errUtils.js +lib/thunderbird45/modules/extraMimeParsers.jsm +lib/thunderbird45/modules/folderUtils.jsm +lib/thunderbird45/modules/gloda/collection.js +lib/thunderbird45/modules/gloda/connotent.js +lib/thunderbird45/modules/gloda/databind.js +lib/thunderbird45/modules/gloda/datamodel.js +lib/thunderbird45/modules/gloda/datastore.js +lib/thunderbird45/modules/gloda/dbview.js +lib/thunderbird45/modules/gloda/everybody.js +lib/thunderbird45/modules/gloda/explattr.js +lib/thunderbird45/modules/gloda/facet.js +lib/thunderbird45/modules/gloda/fundattr.js +lib/thunderbird45/modules/gloda/gloda.js +lib/thunderbird45/modules/gloda/index_ab.js +lib/thunderbird45/modules/gloda/index_msg.js +lib/thunderbird45/modules/gloda/indexer.js +lib/thunderbird45/modules/gloda/log4moz.js +lib/thunderbird45/modules/gloda/mimeTypeCategories.js +lib/thunderbird45/modules/gloda/mimemsg.js +lib/thunderbird45/modules/gloda/msg_search.js +lib/thunderbird45/modules/gloda/noun_freetag.js +lib/thunderbird45/modules/gloda/noun_mimetype.js +lib/thunderbird45/modules/gloda/noun_tag.js +lib/thunderbird45/modules/gloda/public.js +lib/thunderbird45/modules/gloda/query.js +lib/thunderbird45/modules/gloda/suffixtree.js +lib/thunderbird45/modules/gloda/utils.js +lib/thunderbird45/modules/hiddenWindow.jsm +lib/thunderbird45/modules/hostnameUtils.jsm +lib/thunderbird45/modules/identity/FirefoxAccounts.jsm +lib/thunderbird45/modules/identity/Identity.jsm +lib/thunderbird45/modules/identity/IdentityProvider.jsm +lib/thunderbird45/modules/identity/IdentityStore.jsm +lib/thunderbird45/modules/identity/IdentityUtils.jsm +lib/thunderbird45/modules/identity/LogUtils.jsm +lib/thunderbird45/modules/identity/MinimalIdentity.jsm +lib/thunderbird45/modules/identity/RelyingParty.jsm +lib/thunderbird45/modules/identity/Sandbox.jsm +lib/thunderbird45/modules/identity/jwcrypto.jsm +lib/thunderbird45/modules/imContentSink.jsm +lib/thunderbird45/modules/imServices.jsm +lib/thunderbird45/modules/imSmileys.jsm +lib/thunderbird45/modules/imStatusUtils.jsm +lib/thunderbird45/modules/imTextboxUtils.jsm +lib/thunderbird45/modules/imThemes.jsm +lib/thunderbird45/modules/imXPCOMUtils.jsm +lib/thunderbird45/modules/index_im.js +lib/thunderbird45/modules/ircBase.jsm +lib/thunderbird45/modules/ircCAP.jsm +lib/thunderbird45/modules/ircCTCP.jsm +lib/thunderbird45/modules/ircCommands.jsm +lib/thunderbird45/modules/ircDCC.jsm +lib/thunderbird45/modules/ircHandlers.jsm +lib/thunderbird45/modules/ircISUPPORT.jsm +lib/thunderbird45/modules/ircMultiPrefix.jsm +lib/thunderbird45/modules/ircNonStandard.jsm +lib/thunderbird45/modules/ircSASL.jsm +lib/thunderbird45/modules/ircServices.jsm +lib/thunderbird45/modules/ircUtils.jsm +lib/thunderbird45/modules/ircWatchMonitor.jsm +lib/thunderbird45/modules/iteratorUtils.jsm +lib/thunderbird45/modules/jsProtoHelper.jsm +lib/thunderbird45/modules/jsTreeSelection.js +lib/thunderbird45/modules/jsdebugger.jsm +lib/thunderbird45/modules/jsmime.jsm +lib/thunderbird45/modules/jsmime/jsmime.js +lib/thunderbird45/modules/lz4.js +lib/thunderbird45/modules/lz4_internal.js +lib/thunderbird45/modules/mailInstrumentation.js +lib/thunderbird45/modules/mailMigrator.js +lib/thunderbird45/modules/mailServices.js +lib/thunderbird45/modules/mailViewManager.js +lib/thunderbird45/modules/mailnewsMigrator.js +lib/thunderbird45/modules/mcc_iso3166_table.jsm +lib/thunderbird45/modules/media/IdpSandbox.jsm +lib/thunderbird45/modules/media/PeerConnectionIdp.jsm +lib/thunderbird45/modules/media/RTCStatsReport.jsm +lib/thunderbird45/modules/mimeParser.jsm +lib/thunderbird45/modules/msgDBCacheManager.js +lib/thunderbird45/modules/nsFormAutoCompleteResult.jsm +lib/thunderbird45/modules/oauth.jsm +lib/thunderbird45/modules/osfile.jsm +lib/thunderbird45/modules/osfile/osfile_async_front.jsm +lib/thunderbird45/modules/osfile/osfile_async_worker.js +lib/thunderbird45/modules/osfile/osfile_native.jsm +lib/thunderbird45/modules/osfile/osfile_shared_allthreads.jsm +lib/thunderbird45/modules/osfile/osfile_shared_front.jsm +lib/thunderbird45/modules/osfile/osfile_unix_allthreads.jsm +lib/thunderbird45/modules/osfile/osfile_unix_back.jsm +lib/thunderbird45/modules/osfile/osfile_unix_front.jsm +lib/thunderbird45/modules/osfile/osfile_win_allthreads.jsm +lib/thunderbird45/modules/osfile/osfile_win_back.jsm +lib/thunderbird45/modules/osfile/osfile_win_front.jsm +lib/thunderbird45/modules/osfile/ospath.jsm +lib/thunderbird45/modules/osfile/ospath_unix.jsm +lib/thunderbird45/modules/osfile/ospath_win.jsm +lib/thunderbird45/modules/quickFilterManager.js +lib/thunderbird45/modules/reader/JSDOMParser.js +lib/thunderbird45/modules/reader/Readability.js +lib/thunderbird45/modules/reader/ReaderWorker.js +lib/thunderbird45/modules/reader/ReaderWorker.jsm +lib/thunderbird45/modules/reflect.jsm +lib/thunderbird45/modules/sdk/bootstrap.js +lib/thunderbird45/modules/sdk/system/Startup.js +lib/thunderbird45/modules/searchSpec.js +lib/thunderbird45/modules/search_im.js +lib/thunderbird45/modules/services-common/async.js +lib/thunderbird45/modules/services-common/hawkclient.js +lib/thunderbird45/modules/services-common/hawkrequest.js +lib/thunderbird45/modules/services-common/logmanager.js +lib/thunderbird45/modules/services-common/moz-kinto-client.js +lib/thunderbird45/modules/services-common/observers.js +lib/thunderbird45/modules/services-common/rest.js +lib/thunderbird45/modules/services-common/stringbundle.js +lib/thunderbird45/modules/services-common/tokenserverclient.js +lib/thunderbird45/modules/services-common/utils.js +lib/thunderbird45/modules/services-crypto/WeaveCrypto.js +lib/thunderbird45/modules/services-crypto/utils.js +lib/thunderbird45/modules/sessionStoreManager.js +lib/thunderbird45/modules/socket.jsm +lib/thunderbird45/modules/sqlite/sqlite_internal.js +lib/thunderbird45/modules/summaryFrameManager.js +lib/thunderbird45/modules/templateUtils.js +lib/thunderbird45/modules/traceHelper.js +lib/thunderbird45/modules/twitter-text.jsm +lib/thunderbird45/modules/virtualFolderWrapper.js +lib/thunderbird45/modules/vtt.jsm +lib/thunderbird45/modules/windowsJumpLists.js +lib/thunderbird45/modules/workers/PromiseWorker.js +lib/thunderbird45/modules/workers/require.js +lib/thunderbird45/modules/xmpp-authmechs.jsm +lib/thunderbird45/modules/xmpp-commands.jsm +lib/thunderbird45/modules/xmpp-session.jsm +lib/thunderbird45/modules/xmpp-xml.jsm +lib/thunderbird45/modules/xmpp.jsm +lib/thunderbird45/modules/yahoo-session.jsm +lib/thunderbird45/platform.ini +lib/thunderbird45/plugin-container +lib/thunderbird45/removed-files +lib/thunderbird45/res/EditorOverride.css +lib/thunderbird45/res/contenteditable.css +lib/thunderbird45/res/designmode.css +lib/thunderbird45/res/dtd/htmlmathml-f.ent +lib/thunderbird45/res/entityTables/html40Latin1.properties +lib/thunderbird45/res/entityTables/html40Special.properties +lib/thunderbird45/res/entityTables/html40Symbols.properties +lib/thunderbird45/res/entityTables/mathml20.properties +lib/thunderbird45/res/fonts/mathfont.properties +lib/thunderbird45/res/fonts/mathfontSTIXGeneral.properties +lib/thunderbird45/res/fonts/mathfontUnicode.properties +lib/thunderbird45/res/grabber.gif +lib/thunderbird45/res/html/folder.png +lib/thunderbird45/res/langGroups.properties +lib/thunderbird45/res/language.properties +lib/thunderbird45/res/svg.css +lib/thunderbird45/res/table-add-column-after-active.gif +lib/thunderbird45/res/table-add-column-after-hover.gif +lib/thunderbird45/res/table-add-column-after.gif +lib/thunderbird45/res/table-add-column-before-active.gif +lib/thunderbird45/res/table-add-column-before-hover.gif +lib/thunderbird45/res/table-add-column-before.gif +lib/thunderbird45/res/table-add-row-after-active.gif +lib/thunderbird45/res/table-add-row-after-hover.gif +lib/thunderbird45/res/table-add-row-after.gif +lib/thunderbird45/res/table-add-row-before-active.gif +lib/thunderbird45/res/table-add-row-before-hover.gif +lib/thunderbird45/res/table-add-row-before.gif +lib/thunderbird45/res/table-remove-column-active.gif +lib/thunderbird45/res/table-remove-column-hover.gif +lib/thunderbird45/res/table-remove-column.gif +lib/thunderbird45/res/table-remove-row-active.gif +lib/thunderbird45/res/table-remove-row-hover.gif +lib/thunderbird45/res/table-remove-row.gif +lib/thunderbird45/res/text_caret.png +lib/thunderbird45/res/text_caret@1.5x.png +lib/thunderbird45/res/text_caret@2.25x.png +lib/thunderbird45/res/text_caret@2x.png +lib/thunderbird45/res/text_caret_tilt_left.png +lib/thunderbird45/res/text_caret_tilt_left@1.5x.png +lib/thunderbird45/res/text_caret_tilt_left@2.25x.png +lib/thunderbird45/res/text_caret_tilt_left@2x.png +lib/thunderbird45/res/text_caret_tilt_right.png +lib/thunderbird45/res/text_caret_tilt_right@1.5x.png +lib/thunderbird45/res/text_caret_tilt_right@2.25x.png +lib/thunderbird45/res/text_caret_tilt_right@2x.png +lib/thunderbird45/run-mozilla.sh +lib/thunderbird45/thunderbird +lib/thunderbird45/thunderbird-bin +share/applications/thunderbird45.desktop +share/pixmaps/thunderbird45.png Index: pkgsrc/mail/thunderbird45/PLIST.lightning diff -u /dev/null pkgsrc/mail/thunderbird45/PLIST.lightning:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/PLIST.lightning Thu Apr 27 13:38:18 2017 @@ -0,0 +1,850 @@ +@comment $NetBSD: PLIST.lightning,v 1.1 2017/04/27 13:38:18 ryoon Exp $ +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/app.ini +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarm.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarmMonitor.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarmService.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAttachment.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAttendee.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCachedCalendar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCalendarManager.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCalendarSearchService.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDateTime.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDateTimeFormatter.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDavRequestHandlers.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDeletedItems.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDuration.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calEvent.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calFilter.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calFreeBusyService.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calHtmlExport.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calICSService-worker.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calICSService.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsImportExport.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsParser.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsSerializer.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calItemBase.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calItipItem.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calListFormatter.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calMonthGridPrinter.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calOutlookCSVImportExport.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calPeriod.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calProtocolHandler.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceDate.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceInfo.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceRule.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRelation.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calStartupService.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTimezone.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTodo.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTransactionManager.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calUtils.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapCalendar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapCalendarItems.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapErrors.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapRequest.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapSession.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapUtils.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekInfoService.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekPrinter.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome.manifest +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-alarms.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog-attendees.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-extract.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-invitations-dialog.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-subscriptions-dialog.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/categories.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dateFormat.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dialogs/calendar-event-dialog-reminder.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/global.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/menuOverlay.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/alarms.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/categories.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/general.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/preferences.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/views.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/provider-uninstall.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/timezones.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/wcap.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/WindowsNTToZoneInfoTZId.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calApplicationUtils.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calFilter.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calUtils.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-alarm-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-alarm-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-base-view.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-bindings.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-calendars-list.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-chrome-startup.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-clipboard.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-common-sets.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-common-sets.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-conflicts-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-creation.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-daypicker.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-dialog-utils.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-dnd-listener.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-error-prompt.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-freebusy.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence-preview.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-reminder.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-reminder.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-timezone.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-timezone.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-extract.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-list.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-manager.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-item-bindings.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-item-editing.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-management.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-menus.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-migration-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-migration-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-month-view.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-multiday-view.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-occurrence-prompt.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-print-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-print-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-properties-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-properties-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-providerUninstall-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-providerUninstall-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-statusbar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-list.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-summary-dialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-summary-dialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-editing.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-tree.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-tree.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-view.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-view.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-ui-utils.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder-todo.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder-todo.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-view-bindings.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-view-core.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendarCreation.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendarCreation.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/chooseCalendarDialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/datetimepickers/datetimepickers.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/datetimepickers/datetimepickers.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/import-export.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/mouseoverPreviews.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/alarms.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/alarms.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/categories.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/categories.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/editCategory.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/editCategory.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publish.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publishDialog.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publishDialog.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/sound.wav +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/today-pane.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/today-pane.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-alarm-widget.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-list-tree.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-widget-bindings.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-widgets.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/minimonth.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-alarm-dialog.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-event-dialog.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-event-summary-dialog.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-dialog.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-summary-dialog.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning-toolbar.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.dtd +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.properties +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar-overlay.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-creation.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-creation.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-properties.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-properties.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-invitation.xhtml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-menus.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-migration.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-standalone.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-toolbar.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-utils.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-widgets.xml +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-accountCentral.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-messageWindow.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-preferences.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-preferences.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-sidebar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-sidebar.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-addons.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-preferences.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-sidebar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-sidebar.xul +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/alarm-flashing.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/alarm-icons.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/attendee-icons.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-alarms.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-attendees.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-creation-wizard.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-daypicker.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-event-dialog.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-itip-icons.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-management.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-occurrence-prompt.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-overlay.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-printing.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-properties-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-providerUninstall-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-status.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-subscriptions-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-task-tree.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-task-view.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-timezone-highlighter.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-toolbar.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-unifinder.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-views.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/classification.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/day-box-item-image.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/dialogs/calendar-alarm-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/dialogs/calendar-event-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-bottom.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-left.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-right.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-top.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calHtmlExport.html +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calMonthGridPrinter.html +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calWeekPrinter.html +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/task-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/timezone_map.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/timezones.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/today-pane.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/calendar-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/drag-center.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/minimonth.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-arrow.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today-hov.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/view-navigation-hov.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/view-navigation.svg +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/datetimepickers.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/dialogOverlay.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/imip.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/lightning.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/mode-switch-icons.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/suite-accountCentral.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/cal-icon24.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/cal-icon32.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-alarm-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-daypicker.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog-attendees.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-management.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-occurrence-prompt.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-task-tree.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-task-view.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-unifinder.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-views.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/checkbox-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/ok-cancel.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/today-pane.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/widgets/calendar-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/accountCentral.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/imip.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/imip.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning-toolbar.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/cal-icon24.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/cal-icon32.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-alarm-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-daypicker.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog-attendees.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-management.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-occurrence-prompt.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-task-tree.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-task-view.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-unifinder.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-views.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/checkbox-images-graphite.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/checkbox-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/ok-cancel.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/sidebar-item.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/today-pane.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/widgets/calendar-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/accountCentral.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/imip.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/imip.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning-toolbar.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/cal-icon24.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/cal-icon32.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-alarm-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-daypicker.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-attendees.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-small.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-management.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-occurrence-prompt-aero.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-occurrence-prompt.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-task-tree.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-task-view.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-unifinder.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-views.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/checkbox-images.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/ok-cancel.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/today-pane.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-large.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-small.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/widgets/calendar-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/accountCentral.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip-aero.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning-toolbar.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning-widgets.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning.css +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/mode-switch-icons-aero.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/mode-switch-icons-inverted.png +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calBackendLoader.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calCompositeCalendar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDavCalendar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDefaultACLManager.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICALJSComponents.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICSCalendar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calImportExportModule.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItemModule.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipEmailTransport.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipProtocolHandler.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calMemoryCalendar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calSleepMonitor.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calStorageCalendar.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calTimezoneService.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calWcapCalendarModule.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/components.manifest +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/icaljs-manifest +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/interfaces.xpt +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libcalbasecomps.so +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libical-manifest +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/lightningTextCalendarConverter.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/defaults/preferences/lightning.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/install.rdf +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAlarmUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAsyncUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAuthUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calExtract.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calHashedArray.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calItemUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calIteratorUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calItipUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calPrintUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calProviderUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calRecurrenceUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageHelpers.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageUpgrade.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calViewUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calXMLUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ical.js +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ltnInvitationUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ltnUtils.jsm +lib/thunderbird45/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/timezones/zones.json +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome.manifest +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider-en-US/locale/en-US/gdata.dtd +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider-en-US/locale/en-US/gdata.properties +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/browserRequest.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/browserRequest.xul +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gcal.png +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-creation.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-creation.xul +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-event-dialog.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-event-dialog.xul +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-properties.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-properties.xul +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-event-dialog-reminder.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-event-dialog-reminder.xul +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-list-tree.xml +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-migration-overlay.xul +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-migration-wizard.xul +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-migration.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/browserRequest.css +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/gdata-bindings.css +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/gdata-event-dialog-reminder.css +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/reminder-action-sms.png +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/calGoogleCalendar.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/calGoogleCalendar.manifest +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/defaults/preferences/preferences.js +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/install.rdf +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/OAuth2.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataLogging.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataRequest.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataSession.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataUtils.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Calendar.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Http.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Loader.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Preferences.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Promise.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/PromiseExtras.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/PromiseUtils.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Task.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Timer.jsm +lib/thunderbird45/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/timezoneMap.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/app.ini +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarm.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarmMonitor.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarmService.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAttachment.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAttendee.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCachedCalendar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCalendarManager.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCalendarSearchService.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDateTime.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDateTimeFormatter.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDavRequestHandlers.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDeletedItems.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDuration.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calEvent.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calFilter.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calFreeBusyService.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calHtmlExport.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calICSService-worker.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calICSService.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsImportExport.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsParser.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsSerializer.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calItemBase.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calItipItem.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calListFormatter.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calMonthGridPrinter.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calOutlookCSVImportExport.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calPeriod.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calProtocolHandler.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceDate.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceInfo.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceRule.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRelation.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calStartupService.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTimezone.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTodo.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTransactionManager.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calUtils.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapCalendar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapCalendarItems.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapErrors.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapRequest.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapSession.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapUtils.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekInfoService.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekPrinter.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-alarms.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog-attendees.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-extract.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-invitations-dialog.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-subscriptions-dialog.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/categories.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dateFormat.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dialogs/calendar-event-dialog-reminder.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/global.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/menuOverlay.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/alarms.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/categories.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/general.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/preferences.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/views.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/provider-uninstall.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/timezones.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/wcap.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/WindowsNTToZoneInfoTZId.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calApplicationUtils.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calFilter.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calUtils.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-alarm-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-alarm-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-base-view.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-bindings.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-calendars-list.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-chrome-startup.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-clipboard.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-common-sets.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-common-sets.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-conflicts-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-creation.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-daypicker.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-dialog-utils.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-dnd-listener.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-error-prompt.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-freebusy.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence-preview.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-reminder.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-reminder.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-timezone.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-timezone.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-extract.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-list.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-manager.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-item-bindings.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-item-editing.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-management.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-menus.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-migration-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-migration-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-month-view.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-multiday-view.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-occurrence-prompt.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-print-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-print-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-properties-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-properties-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-providerUninstall-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-providerUninstall-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-statusbar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-list.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-summary-dialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-summary-dialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-editing.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-tree.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-tree.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-view.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-view.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-ui-utils.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder-todo.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder-todo.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-view-bindings.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-view-core.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendarCreation.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendarCreation.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/chooseCalendarDialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/datetimepickers/datetimepickers.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/datetimepickers/datetimepickers.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/import-export.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/mouseoverPreviews.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/alarms.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/alarms.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/categories.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/categories.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/editCategory.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/editCategory.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publish.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publishDialog.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publishDialog.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/sound.wav +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/today-pane.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/today-pane.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-alarm-widget.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-list-tree.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-widget-bindings.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-widgets.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/minimonth.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-alarm-dialog.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-event-dialog.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-event-summary-dialog.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-dialog.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-summary-dialog.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning-toolbar.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.dtd +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.properties +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar-overlay.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-creation.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-creation.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-properties.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-properties.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-invitation.xhtml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-menus.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-migration.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-standalone.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-toolbar.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-utils.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-widgets.xml +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-accountCentral.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-messageWindow.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-preferences.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-preferences.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-sidebar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-sidebar.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-addons.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-preferences.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-sidebar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-sidebar.xul +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/alarm-flashing.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/alarm-icons.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/attendee-icons.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-alarms.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-attendees.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-creation-wizard.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-daypicker.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-event-dialog.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-itip-icons.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-management.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-occurrence-prompt.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-overlay.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-printing.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-properties-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-providerUninstall-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-status.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-subscriptions-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-task-tree.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-task-view.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-timezone-highlighter.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-toolbar.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-unifinder.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-views.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/classification.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/day-box-item-image.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/dialogs/calendar-alarm-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/dialogs/calendar-event-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-bottom.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-left.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-right.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-top.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calHtmlExport.html +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calMonthGridPrinter.html +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calWeekPrinter.html +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/task-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/timezone_map.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/timezones.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/today-pane.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/calendar-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/drag-center.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/minimonth.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-arrow.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today-hov.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/view-navigation-hov.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/view-navigation.svg +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/datetimepickers.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/dialogOverlay.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/imip.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/lightning.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/mode-switch-icons.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/suite-accountCentral.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/cal-icon24.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/cal-icon32.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-alarm-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-daypicker.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog-attendees.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-management.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-occurrence-prompt.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-task-tree.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-task-view.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-unifinder.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-views.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/checkbox-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/ok-cancel.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/today-pane.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/widgets/calendar-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/accountCentral.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/imip.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/imip.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning-toolbar.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/cal-icon24.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/cal-icon32.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-alarm-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-daypicker.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog-attendees.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-management.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-occurrence-prompt.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-task-tree.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-task-view.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-unifinder.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-views.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/checkbox-images-graphite.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/checkbox-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/ok-cancel.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/sidebar-item.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/today-pane.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/widgets/calendar-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/accountCentral.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/imip.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/imip.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning-toolbar.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/cal-icon24.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/cal-icon32.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-alarm-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-daypicker.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-attendees.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-small.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-management.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-occurrence-prompt-aero.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-occurrence-prompt.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-task-tree.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-task-view.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-unifinder.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-views.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/checkbox-images.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/ok-cancel.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/today-pane.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-large.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-small.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/widgets/calendar-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/accountCentral.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip-aero.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning-toolbar.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning-widgets.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning.css +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/mode-switch-icons-aero.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/mode-switch-icons-inverted.png +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calBackendLoader.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calBackendLoader.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calCompositeCalendar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calCompositeCalendar.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDavCalendar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDavCalendar.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDefaultACLManager.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDefaultACLManager.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICALJSComponents.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICSCalendar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICSCalendar.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calImportExportModule.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calImportExportModule.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItemModule.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItemModule.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipEmailTransport.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipEmailTransport.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipProtocolHandler.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipProtocolHandler.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calMemoryCalendar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calMemoryCalendar.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calSleepMonitor.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calSleepMonitor.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calStorageCalendar.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calStorageCalendar.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calTimezoneService.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calTimezoneService.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calWcapCalendarModule.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calWcapCalendarModule.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calbase.xpt +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calbaseinternal.xpt +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/caldav.xpt +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/icaljs-manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/interfaces.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libcalbasecomps.so +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libical-manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/lightningTextCalendarConverter.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/lightningTextCalendarConverter.manifest +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/wcap.xpt +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/defaults/preferences/lightning.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/install.rdf +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAlarmUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAsyncUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAuthUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calExtract.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calHashedArray.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calItemUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calIteratorUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calItipUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calPrintUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calProviderUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calRecurrenceUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageHelpers.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageUpgrade.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calViewUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calXMLUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ical.js +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ltnInvitationUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ltnUtils.jsm +lib/thunderbird45/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/timezones/zones.json Index: pkgsrc/mail/thunderbird45/distinfo diff -u /dev/null pkgsrc/mail/thunderbird45/distinfo:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/distinfo Thu Apr 27 13:38:18 2017 @@ -0,0 +1,152 @@ +$NetBSD: distinfo,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +SHA1 (thunderbird-45.8.0.source.tar.xz) = 36fc106885d612966ec3be047f4e7d3fa06dc04a +RMD160 (thunderbird-45.8.0.source.tar.xz) = 8d4ab2feabee0402fbfe38168c51187b1f26221d +SHA512 (thunderbird-45.8.0.source.tar.xz) = f8ba08d874fb1a09ac9ba5d4d1f46cefe801783ba4bf82eee682ac2ecc4e231d07033a80e036ad04bda7780c093fb7bc3122a23dc6e19c12f18fb7168dc78deb +Size (thunderbird-45.8.0.source.tar.xz) = 201199348 bytes +SHA1 (patch-calendar_lightning_Makefile.in) = 02a1528f2da82f1d4ff4931a7d7dc8227b7fa9f2 +SHA1 (patch-calendar_lightning_build_universal.mk) = 86dc2c6b4f9feb835570111078aa5d08a389d0da +SHA1 (patch-calendar_providers_gdata_Makefile.in) = 0e90ddc9aecc817b0b150bbc37d23ddec97b093e +SHA1 (patch-ldap_c-sdk_include_portable.h) = 7b36594a98beb5af9f82810a052ad2d4706ac968 +SHA1 (patch-mail_app_nsMailApp.cpp) = e089b05a2a849f401fc0aa41fc781e544f6977a1 +SHA1 (patch-mail_components_shell_nsMailGNOMEIntegration.cpp) = cbd87d7d7fc8df32b7fd444148d48a92c54c94d9 +SHA1 (patch-mail_installer_package-manifest.in) = 3829a4d1ae7e8da29ae90d8ac31856fe260c2acc +SHA1 (patch-mail_installer_removed-files.in) = 1a6744cda9842046b9d4b388333678a580d49d43 +SHA1 (patch-mozilla_browser_branding_unofficial_locales_en-US_brand.dtd) = 1cd7faa6a098e2bc609d941406b46e6f737fbb63 +SHA1 (patch-mozilla_browser_installer_package-manifest.in) = a0e9a23dd9e3e652fd9dd32b4e740adc0f50c453 +SHA1 (patch-mozilla_build_autoconf_compiler-opts.m4) = 5ac831579034defaa837748fe63595192d7a583a +SHA1 (patch-mozilla_build_autoconf_nss.m4) = 7f4bb7c4308f8b74527bf00fb09489ee328696c5 +SHA1 (patch-mozilla_build_gyp.mozbuild) = 2fedb8762375c000e79d042aa974e66329fdb230 +SHA1 (patch-mozilla_build_pgo_profileserver.py) = 7a88be17fc5939aa2bc5af334dde3222b6cc3ba3 +SHA1 (patch-mozilla_config_Makefile.in) = 244eb6c7ee4973eb6ebec4fcf4181932b518ca2e +SHA1 (patch-mozilla_config_baseconfig.mk) = 92891a656cb83de0f5ff7f88d10579cdde0e1359 +SHA1 (patch-mozilla_config_external_moz.build) = bb4d66b481967d98df5358f9e1d3cc3253d57fd1 +SHA1 (patch-mozilla_config_rules.mk) = 5bc569ee42ea8fa2f2726af1f2993167b029d308 +SHA1 (patch-mozilla_config_stl__wrappers_ios) = f84d793f65bc7c7d1ffc7b542f846b394cf6de50 +SHA1 (patch-mozilla_config_stl__wrappers_ostream) = b36e7e199e355a0950e0db51c45fb34ce5ea2cc4 +SHA1 (patch-mozilla_config_system-headers) = 4c1cd436ee7d173d76ff9c34fa74a571299879dc +SHA1 (patch-mozilla_configure.in) = fe475edf594e2ca98e3f6da629d06734de091cee +SHA1 (patch-mozilla_dom_base_DOMRequest.cpp) = 0140dc4e081a6675fdcf366057511df354d27d95 +SHA1 (patch-mozilla_dom_base_moz.build) = cb7b5eb422f733f36797eac39e63e7f6daa5574f +SHA1 (patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp) = 74e0c3ddc42007e056046c9fbe3b267cb75efdfe +SHA1 (patch-mozilla_dom_media_moz.build) = 8a9b9b25ef5ad004383a4bd189ed37ac0f2bd8b3 +SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp) = 375a2ebda12bd4633c7ae3d5c0e0b6de6a61bb0f +SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.h) = 7009f9f2d01ca96f0ef6ca6f412485a4576f3072 +SHA1 (patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp) = adcb793da679bbfe7a79f3a119c4f9f8950c7eae +SHA1 (patch-mozilla_dom_system_OSFileConstants.cpp) = 6685cf695ce13433bc061a82e1767ea4fc25bac5 +SHA1 (patch-mozilla_extensions_spellcheck_hunspell_glue_mozHunspell.cpp) = 8e2d1f82554fb0950f6f3d52f63cca10b15431db +SHA1 (patch-mozilla_gfx_cairo_libpixman_src_pixman-arm-neon-asm.S) = 14b213eff89b78ecfe3ff74a4daca13138defd2e +SHA1 (patch-mozilla_gfx_gl_GLContextProviderGLX.cpp) = f8b7ad2c1d1b8f0a4492fc49d1e5884ec4bdf4c4 +SHA1 (patch-mozilla_gfx_graphite2_src_Bidi.cpp) = 423009ff077aa4c0862fd5b8ec9066eb054440cf +SHA1 (patch-mozilla_gfx_moz.build) = 60f774fe43846324b57fb1e46d1bd1a8348cf440 +SHA1 (patch-mozilla_gfx_skia_generate__mozbuild.py) = 227210904b6c194960668fee4253ddb183e33a0e +SHA1 (patch-mozilla_gfx_skia_moz.build) = 8a70b3a8d8a7caa06f7b1b433cd5ffb37b4b38ba +SHA1 (patch-mozilla_gfx_skia_skia_src_core_SkUtilsArm.cpp) = 390793e9b45af46914b1c51d0be9c9c875644a9c +SHA1 (patch-mozilla_gfx_skia_skia_src_opts_SkBitmapProcState__opts__arm.cpp) = d2ce05bb0e288dc5e0c8f073d627c759a817d11f +SHA1 (patch-mozilla_gfx_skia_skia_src_opts_memset.arm.S) = a4b4aab1c6fcf8681a1ef932fa26f6527ebd0eae +SHA1 (patch-mozilla_gfx_thebes_moz.build) = 9ca30b203e492f59563f698d7bfe39befdef0bb1 +SHA1 (patch-mozilla_gfx_ycbcr_moz.build) = 84eab4220cbce9ad44a62b7ba64e838927382b13 +SHA1 (patch-mozilla_gfx_ycbcr_yuv__row__arm.S) = 2b2e6db1bdb0719ee7642447971fe2a9c80518dd +SHA1 (patch-mozilla_image_decoders_nsJPEGDecoder.cpp) = 4388fb0c57011e19e8ee4768d3cc82b078b7a6e2 +SHA1 (patch-mozilla_intl_hyphenation_glue_hnjalloc.h) = 9159bfaa44bf70c04602a1ac10f698ef4f4a5187 +SHA1 (patch-mozilla_ipc_chromium_src_base_atomicops.h) = b70f38db87e80de06f061e7ee7664d47b1000f12 +SHA1 (patch-mozilla_ipc_chromium_src_base_file__util__posix.cc) = aff83e28eb7af0f04c68b8336441eaef04bb763c +SHA1 (patch-mozilla_ipc_chromium_src_base_message__loop.cc) = b4d4e7fd53632751cf4624044815da3a9f20819c +SHA1 (patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc) = 71825dd5ab9e8f3055fc276558dc73f5489ade15 +SHA1 (patch-mozilla_ipc_chromium_src_base_platform__thread.h) = a0d0cff52de77a45def4789a7f6f30603c13f07a +SHA1 (patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc) = 9998c382302a022ba1027f4346c53dcd4ef0b52f +SHA1 (patch-mozilla_ipc_chromium_src_base_process__util.h) = 56b13a62b9bb6b4a0b94ed285f33fa5d67c56dc8 +SHA1 (patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc) = e60b2d2aa3e37a6b4854b5aef91f430ecbb5eba0 +SHA1 (patch-mozilla_ipc_chromium_src_base_process__util__posix.cc) = 4dc6f93024eea761a53dc1df2933eb2f51612058 +SHA1 (patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h) = 9e623549aeb7f28270641a279f7608ab9338f228 +SHA1 (patch-mozilla_ipc_chromium_src_base_sys__info__posix.cc) = d2b220541fd1d29fb0972faa1bd4ce1d69d6ed31 +SHA1 (patch-mozilla_ipc_chromium_src_base_time__posix.cc) = d92e2f338c9c6e91aa7b7ad10d614a6def8707b9 +SHA1 (patch-mozilla_ipc_chromium_src_build_build__config.h) = 1cb374897dfee04780299c5345da7a883f633967 +SHA1 (patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h) = 74f68181b1770e8f2aa7325f8cd57d510fda7fa5 +SHA1 (patch-mozilla_ipc_glue_GeckoChildProcessHost.cpp) = 076893b0af074e42d1a02e0c536ac13147dd4727 +SHA1 (patch-mozilla_ipc_glue_StringUtil.cpp) = 734b47ec5ebb89dc4711623cabc1e7cacde2641f +SHA1 (patch-mozilla_ipc_glue_moz.build) = 8b6fd2e3e019195c9547add4f67c1ea22eb3a462 +SHA1 (patch-mozilla_js_src_configure.in) = df8db18ecded130197b85afa12a5c2c71c142656 +SHA1 (patch-mozilla_js_src_ctypes_CTypes.h) = ad11282f5c9e882bcd19fcfc5cc4c6027dd4aae2 +SHA1 (patch-mozilla_js_src_frontend_ParseMaps.cpp) = 4bead6061fa2a77a0de7a38ff497ccc24557b835 +SHA1 (patch-mozilla_js_src_jit_LIR.cpp) = 1f623a7e75d85de1c6af8a1cba218298ab3bb77b +SHA1 (patch-mozilla_js_src_jit_MIR.cpp) = 48ec3fc79fd62d34a13825b25be6f17f04937b66 +SHA1 (patch-mozilla_js_src_jit_arm_Architecture-arm.cpp) = ef122bdc89efb0d8c71a24bd112e9f8a166f6cda +SHA1 (patch-mozilla_js_src_jsdate.cpp) = 5dc0c38fb8eb509d2c6ecaf666d4c1d046082a34 +SHA1 (patch-mozilla_js_src_jskwgen.cpp) = 322a6ce311b1e8cb9dc6aadee88425e3b9318231 +SHA1 (patch-mozilla_js_src_jsmath.cpp) = f130a1c7c0d4384aa3ebff155d4e3ebb33823cbb +SHA1 (patch-mozilla_js_src_jsnativestack.cpp) = c216baac857760571c60b45cb8682624b44232c4 +SHA1 (patch-mozilla_js_src_shell_jsoptparse.cpp) = 947cbe44e7a87fb37dcf48f45c1805ae7747b259 +SHA1 (patch-mozilla_js_src_vm_SPSProfiler.cpp) = f4a9a2b8d66442d3b52bef3bbe0d43abcc3ff0eb +SHA1 (patch-mozilla_js_xpconnect_src_XPCConvert.cpp) = fb20844c866045677ce7b14099cf7a748d430f64 +SHA1 (patch-mozilla_js_xpconnect_src_xpcprivate.h) = eda7091a2b469bafad07b24d9ec9ed02626e3391 +SHA1 (patch-mozilla_media_libcubeb_src_cubeb.c) = b15c15f5aee05f335e49e9878ac8fe171002f599 +SHA1 (patch-mozilla_media_libcubeb_src_cubeb__alsa.c) = 3fcafd1e119bc96b89ac2447fe4c4b9f673bc401 +SHA1 (patch-mozilla_media_libcubeb_src_cubeb__oss.c) = f6dd9cafe11b61dd9061e22cddfecb214d40ac21 +SHA1 (patch-mozilla_media_libcubeb_src_moz.build) = 77498b73bd21f13df5690d82c62288788805c597 +SHA1 (patch-mozilla_media_libpng_pngpriv.h) = 1fbc7cef82486dd80aba5e86977158fcb15ffab3 +SHA1 (patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp) = e97b974d4eccc22699047413460b8c4687f9e658 +SHA1 (patch-mozilla_media_libstagefright_frameworks_av_include_media_stagefright_foundation_AString.h) = bfd8ef07c4277bf3d598f07b14e653ecd362b96d +SHA1 (patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp) = 821b13b11f5bd7fe5d2bf9d6b48b8e402e15c44d +SHA1 (patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c) = 37eb1b950a2ed8bbaddac8fd198c534e3a62c41e +SHA1 (patch-mozilla_media_libstagefright_system_core_liblog_logprint.c) = 74e85ceec274c51b7142c350d89cd67e4f0c43f6 +SHA1 (patch-mozilla_media_libtheora_lib_arm_armcpu.c) = 8ac0fc27df926fcdb40ea578f9bc89b845a4e72b +SHA1 (patch-mozilla_media_libtheora_lib_info.c) = 6a63a044b6c485f6e7514050f7b465394b0654d6 +SHA1 (patch-mozilla_media_libtheora_moz.build) = 18621d838e2376350e883b67f74a8992d59e814f +SHA1 (patch-mozilla_media_libtremor_Makefile.in) = 42c00d486290bfca17336750f740d83cb96cb9b2 +SHA1 (patch-mozilla_media_libtremor_moz.build) = 2d242343e6370f96c32670e405b39788186634f4 +SHA1 (patch-mozilla_media_libvorbis_Makefile.in) = a9baf3be6710b32544f1f8843fa07519d0348b76 +SHA1 (patch-mozilla_media_libvorbis_lib_vorbis__info.c) = 0ed66faa0c451813b578e91e60532cb9f90022f5 +SHA1 (patch-mozilla_media_libvorbis_moz.build) = c521e8a167bd83d130db3f8820e24425d6bd8016 +SHA1 (patch-mozilla_media_libyuv_include_libyuv_scale__row.h) = e67ff789d3c6132ec55c91acba08687c0ddb8227 +SHA1 (patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c) = d1ef64cc7be19b9bc826de4f05472fc539913974 +SHA1 (patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h) = 68b91c952049820c29edf10fd791fec61273b1b7 +SHA1 (patch-mozilla_media_openmax__dl_dl_api_armCOMM__s.h) = dec3d3d538a4301920aa641d2d8da1e6c9b7bb54 +SHA1 (patch-mozilla_media_webrtc_signaling_test_common.build) = 53329838ba9cf448870ae8860456b69be420f3f6 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi) = 8caf6b3a8558bede5ccfa3b6009f7a57e04a02fa +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi) = d1459b4972dade432e27e8005a64fc4eb8b02579 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc) = a48b7a0140fc40cca427034bf0b58a4e13c98e73 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h) = 62dfbf579191447dea80bf2eee5a782eaee526df +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc) = 24455230e1a857824584af86b988036321f8c0aa +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc) = 8187760eeaa2c466b629b21cd8d3d460e532497f +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi) = 7dcd8e86e18bb39bb07864483927e89f0199e629 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp) = 8bc15ea9afab20f004275522e060e70f699f0862 +SHA1 (patch-mozilla_memory_build_mozjemalloc__compat.c) = aad27fb03be2d1fcc543f4f38ac5deb4f8e962f7 +SHA1 (patch-mozilla_memory_mozalloc_mozalloc__abort.cpp) = 2c2169296c3388fa49f57f55193ebc94892b2c91 +SHA1 (patch-mozilla_memory_volatile_VolatileBufferOSX.cpp) = 87a53581e32009c124437a277a26abef52d8b197 +SHA1 (patch-mozilla_mfbt_Attributes.h) = df5ad969a421936a5ab021c7c62891490c0f63d4 +SHA1 (patch-mozilla_mfbt_Poison.cpp) = 725f20137d6e0b19d85ee4c5a2fe286015652bad +SHA1 (patch-mozilla_modules_libjar_nsZipArchive.cpp) = b306f3e037aced574e6e245d2bd80ffd5020a43e +SHA1 (patch-mozilla_modules_libpref_init_all.js) = 0196b031480c89946634d34e35ccccf83d946146 +SHA1 (patch-mozilla_mozglue_build_arm.cpp) = 5f94591daf81ea22f5e3855cf8e6ba719c88c3eb +SHA1 (patch-mozilla_mozglue_build_arm.h) = 40d8d2039c68fc825857a3c970eec2f296275cc5 +SHA1 (patch-mozilla_netwerk_dns_moz.build) = a58262e4a85b5b1e4986e82204df36ace4076738 +SHA1 (patch-mozilla_storage_SQLiteMutex.h) = 76907dfaa357fba3c0fdb7b0e7150d0b5241d64a +SHA1 (patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h) = 06ffc01754f4a583ff6531f0da14aa23528ea409 +SHA1 (patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h) = aa895f7147fdcdaa1dd75b17f96c562d15eed718 +SHA1 (patch-mozilla_toolkit_library_moz.build) = 13db2a682ae51c6d040e7c6c7edac1768d9b70d0 +SHA1 (patch-mozilla_toolkit_mozapps_installer_packager.mk) = fd5afe235bf61d72c3cd27b41a5c9b8e0920c83f +SHA1 (patch-mozilla_toolkit_xre_glxtest.cpp) = a76049f61427fccf9896960ff9cc18e753e2cadd +SHA1 (patch-mozilla_toolkit_xre_nsAppRunner.cpp) = 6d8100016b9ae90feeb2ea9868d33ba45780d401 +SHA1 (patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp) = c6c1390f527f4b45e879f090531a53c3dc798873 +SHA1 (patch-mozilla_webapprt_moz.build) = 3239f8adb82cefc80395396408741516823a2f52 +SHA1 (patch-mozilla_xpcom_base_nscore.h) = 019d54275e162756294f6e803884b4af5578b45f +SHA1 (patch-mozilla_xpcom_build_PoisonIOInterposer.h) = d3545362d31b7360c9e7a0e40b53041fd5b43516 +SHA1 (patch-mozilla_xpcom_components_Module.h) = 74b9ff0f7993ded55a05e2eb6e29741c65c81778 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in) = 71737ca3a31fa2e7c99fc07419a41918b9b37d26 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build) = 691d7ccf3ba75f069543e390d80dbdf0d698c1d4 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp) = a6f3de24e78589bec5029d70872eb3d3def42690 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S) = d5e610e8170382786bd33ef9ccf7976e3a5ab361 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s) = 83b335036eb14ec01a6292b321954b4e92039253 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp) = 69de6d043bfa9145e83ed4f9ff52f7866a9e86ba +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp) = b62ea1e6a09de47c3070eb0ecfe20e33f119fce2 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp) = 6bf93b8a0fe332185f5af6bbb0e2dc3312884b50 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp) = 9caec5bc1b6ed70c9d59adacaefa7a8f90c2a5cc +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp) = 976c0c82fd5aa6223cf6d4f79166faeaf6377033 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S) = edbf6721ac8d74dc314f4c70fc5c74ebb6f44076 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s) = a04a46c13752d4c92bbba8b96d85cb430f3a4ac6 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp) = 0f0f070d4d04bedbb7c7b9afd068180e72623428 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp) = bb0d322a00c42e6ce1a5a931fecdcaf1b58109bc +SHA1 (patch-mozilla_xulrunner_installer_Makefile.in) = 2766f9109f2f53827f1207d047caab16b30437ea +SHA1 (patch-mozilla_xulrunner_installer_libxul-embedding.pc.in) = 585b0041ae6e9beabfffd78d09018219a2a15ba0 +SHA1 (patch-mozilla_xulrunner_installer_libxul.pc.in) = 9329de1e99c534565f31ff87f71677100a64e842 Index: pkgsrc/mail/thunderbird45/hacks.mk diff -u /dev/null pkgsrc/mail/thunderbird45/hacks.mk:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/hacks.mk Thu Apr 27 13:38:18 2017 @@ -0,0 +1,11 @@ +# $NetBSD: hacks.mk,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +# workround for link of thunderbird-bin etc. +LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/${MOZILLA_NAME} + +.if ${OPSYS} == "SunOS" +# workaround for strip problems with libxul.so +# https://www.illumos.org/issues/4383 +INSTALL_UNSTRIPPED=yes +.endif +.include "../../devel/xulrunner17/hacks.mk" Index: pkgsrc/mail/thunderbird45/options.mk diff -u /dev/null pkgsrc/mail/thunderbird45/options.mk:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/options.mk Thu Apr 27 13:38:18 2017 @@ -0,0 +1,76 @@ +# $NetBSD: options.mk,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.thunderbird45 +PKG_SUPPORTED_OPTIONS= alsa debug mozilla-jemalloc gnome \ + official-mozilla-branding pulseaudio \ + mozilla-lightning +PKG_SUGGESTED_OPTIONS= mozilla-lightning + +PLIST_VARS+= branding nobranding debug gnome jemalloc + +PKG_SUGGESTED_OPTIONS.Linux+= alsa mozilla-jemalloc +PKG_SUGGESTED_OPTIONS.*+= pulseaudio + +.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:Mgnome) +.include "../../devel/libgnomeui/buildlink3.mk" +.include "../../sysutils/gnome-vfs/buildlink3.mk" +CONFIGURE_ARGS+= --enable-gnomevfs --enable-dbus --enable-gnomeui +PLIST.gnome= yes +.else +CONFIGURE_ARGS+= --disable-gnomevfs --disable-dbus --disable-gnomeui +.endif + +.if !empty(PKG_OPTIONS:Mmozilla-jemalloc) +PLIST.jemalloc= yes +CONFIGURE_ARGS+= --enable-jemalloc +.else +CONFIGURE_ARGS+= --disable-jemalloc +.endif + +.if !empty(PKG_OPTIONS:Mdebug) +CONFIGURE_ARGS+= --enable-debug --enable-debug-symbols --disable-optimize +CONFIGURE_ARGS+= --disable-install-strip +PLIST.debug= yes +.else +CONFIGURE_ARGS+= --disable-debug +CONFIGURE_ARGS+= --enable-optimize=-O2 +CONFIGURE_ARGS+= --enable-install-strip +BUILDLINK_TRANSFORM+= rm:-g +.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:Mmozilla-lightning) +CONFIGURE_ARGS+= --enable-calendar +PLIST_SRC+= PLIST.lightning +XPI_FILES+= ${WRKSRC}/${OBJDIR}/dist/xpi-stage/gdata-provider.xpi +XPI_FILES+= ${WRKSRC}/${OBJDIR}/dist/xpi-stage/lightning.xpi +.else +CONFIGURE_ARGS+= --disable-calendar +.endif + +.if !empty(PKG_OPTIONS:Mofficial-mozilla-branding) +CONFIGURE_ARGS+= --enable-official-branding +PLIST.branding= yes +LICENSE= mozilla-trademark-license +RESTRICTED= Trademark holder prohibits distribution of modified versions. +NO_BIN_ON_CDROM= ${RESTRICTED} +NO_BIN_ON_FTP= ${RESTRICTED} +.else +CONFIGURE_ARGS+= --disable-official-branding +PLIST.nobranding= yes +.endif Index: pkgsrc/mail/thunderbird45/files/desktop.in diff -u /dev/null pkgsrc/mail/thunderbird45/files/desktop.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/files/desktop.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,11 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=@MOZILLA_NAME@ +GenericName=Mail Client +Comment=Mail client and News Reader +Exec=@MOZILLA@ %U +Icon=@MOZILLA_ICON@ +StartupNotify=false +Terminal=false +Type=Application +Categories=Application;Network; Index: pkgsrc/mail/thunderbird45/files/patch-ipc_src_Makefile diff -u /dev/null pkgsrc/mail/thunderbird45/files/patch-ipc_src_Makefile:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/files/patch-ipc_src_Makefile Thu Apr 27 13:38:18 2017 @@ -0,0 +1,16 @@ +diff --git a/ipc/src/Makefile b/ipc/src/Makefile +index 4546c3e..2e0998d 100644 +--- a/ipc/src/Makefile ++++ b/ipc/src/Makefile +@@ -49,6 +49,11 @@ ifeq ($(OS_TARGET),WINNT) + OBJ_SUFF = obj + endif + ++ifeq ($(OS_ARCH),SunOS) ++LDFLAGS += -shared -Wl,-Bsymbolic ++CFLAGS += -fPIC ++endif ++ + source = subprocess.c + objfiles = subprocess.$(OBJ_SUFF) + libname = $(DLL_PREFIX)subprocess-$(CPU_ARCH)$(DLL_SUFFIX) Index: pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_Makefile.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_Makefile.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_Makefile.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-calendar_lightning_Makefile.in,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- calendar/lightning/Makefile.in.orig 2016-04-07 21:14:23.000000000 +0000 ++++ calendar/lightning/Makefile.in +@@ -5,7 +5,7 @@ + # Calendar builders currently use STRIP_XPI to reduce the binary component in + # Lightning. + +-XPI_PKGNAME = lightning-$(LIGHTNING_VERSION).$(AB_CD).$(MOZ_PKG_PLATFORM) ++XPI_PKGNAME = lightning + XPI_VERSION = $(LIGHTNING_VERSION) + + XPI_EM_ID = {e2fda1a4-762b-4020-b5ad-a41df1933103} Index: pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_build_universal.mk diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_build_universal.mk:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-calendar_lightning_build_universal.mk Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-calendar_lightning_build_universal.mk,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- calendar/lightning/build/universal.mk.orig 2016-04-07 21:14:23.000000000 +0000 ++++ calendar/lightning/build/universal.mk +@@ -19,7 +19,7 @@ include $(topsrcdir)/mozilla/toolkit/moz + + THUNDERBIRD_VERSION := $(shell cat $(topsrcdir)/mail/config/version.txt) + LIGHTNING_VERSION := $(shell $(PYTHON) $(topsrcdir)/calendar/lightning/build/makeversion.py $(word 1,$(MOZ_PKG_VERSION) $(THUNDERBIRD_VERSION))) +-XPI_PKGNAME = lightning-$(LIGHTNING_VERSION).$(AB_CD).$(MOZ_PKG_PLATFORM) ++XPI_PKGNAME = lightning + + STANDALONE_MAKEFILE := 1 + include $(TOPSRCDIR)/config/config.mk Index: pkgsrc/mail/thunderbird45/patches/patch-calendar_providers_gdata_Makefile.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-calendar_providers_gdata_Makefile.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-calendar_providers_gdata_Makefile.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-calendar_providers_gdata_Makefile.in,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- calendar/providers/gdata/Makefile.in.orig 2016-04-07 21:14:23.000000000 +0000 ++++ calendar/providers/gdata/Makefile.in +@@ -2,7 +2,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/. + +-XPI_PKGNAME = gdata-provider-$(GDATA_VERSION).$(AB_CD).$(MOZ_PKG_PLATFORM) ++XPI_PKGNAME = gdata-provider + XPI_VERSION = $(GDATA_VERSION) + XPI_NO_UNIVERSAL = 1 + XPI_EM_ID = {a62ef8ec-5fdc-40c2-873c-223b8a6925cc} Index: pkgsrc/mail/thunderbird45/patches/patch-ldap_c-sdk_include_portable.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-ldap_c-sdk_include_portable.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-ldap_c-sdk_include_portable.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-ldap_c-sdk_include_portable.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- ldap/c-sdk/include/portable.h.orig 2016-04-07 21:14:24.000000000 +0000 ++++ ldap/c-sdk/include/portable.h +@@ -122,7 +122,7 @@ + * some systems don't have the BSD re_comp and re_exec routines + */ + #ifndef NEED_BSDREGEX +-#if ( defined( SYSV ) || defined( NETBSD ) || defined( FREEBSD ) || defined(__OpenBSD__) || defined( linux ) || defined( DARWIN )) && !defined(sgi) ++#if ( defined( SYSV ) || defined( NETBSD ) || defined(DRAGONFLY) || defined( FREEBSD ) || defined(__OpenBSD__) || defined( linux ) || defined( DARWIN )) && !defined(sgi) + #define NEED_BSDREGEX + #endif + #endif Index: pkgsrc/mail/thunderbird45/patches/patch-mail_app_nsMailApp.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mail_app_nsMailApp.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mail_app_nsMailApp.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,39 @@ +$NetBSD: patch-mail_app_nsMailApp.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mail/app/nsMailApp.cpp.orig 2016-04-07 21:14:22.000000000 +0000 ++++ mail/app/nsMailApp.cpp +@@ -15,6 +15,26 @@ + #include + #include + #endif ++/* ++ * On netbsd-4, ulimit -n is 64 by default; too few for us. ++ */ ++static void netbsd_fixrlimit(void) { ++ struct rlimit rlp; ++ if (getrlimit(RLIMIT_NOFILE, &rlp) == -1) { ++ fprintf(stderr, "warning: getrlimit failed\n"); ++ return; ++ } ++ if (rlp.rlim_cur >= 512) ++ return; ++ if (rlp.rlim_max < 512) { ++ fprintf(stderr, "warning: hard limit of 'ulimit -n' too low\n"); ++ rlp.rlim_cur = rlp.rlim_max; ++ } ++ else ++ rlp.rlim_cur = 512; ++ if (setrlimit(RLIMIT_NOFILE, &rlp) == -1) ++ fprintf(stderr, "warning: setrlimit failed\n"); ++ } + + #ifdef XP_MACOSX + #include "MacQuirks.h" +@@ -213,6 +233,7 @@ FileExists(const char *path) + static nsresult + InitXPCOMGlue(const char *argv0, nsIFile **xreDirectory) + { ++ netbsd_fixrlimit(); + char exePath[MAXPATHLEN]; + + nsresult rv = mozilla::BinaryPath::Get(argv0, exePath); Index: pkgsrc/mail/thunderbird45/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,24 @@ +$NetBSD: patch-mail_components_shell_nsMailGNOMEIntegration.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mail/components/shell/nsMailGNOMEIntegration.cpp.orig 2016-04-07 21:14:23.000000000 +0000 ++++ mail/components/shell/nsMailGNOMEIntegration.cpp +@@ -50,16 +50,16 @@ struct AppTypeAssociation { + + static const AppTypeAssociation sAppTypes[] = { + { +- nsIShellService::MAIL, sMailProtocols, ArrayLength(sMailProtocols), ++ nsIShellService::MAIL, sMailProtocols, (unsigned int)ArrayLength(sMailProtocols), + "message/rfc822", + nullptr // don't associate .eml extension, as that breaks printing those + }, + { +- nsIShellService::NEWS, sNewsProtocols, ArrayLength(sNewsProtocols), ++ nsIShellService::NEWS, sNewsProtocols, (unsigned int)ArrayLength(sNewsProtocols), + nullptr, nullptr + }, + { +- nsIShellService::RSS, sFeedProtocols, ArrayLength(sFeedProtocols), ++ nsIShellService::RSS, sFeedProtocols, (unsigned int)ArrayLength(sFeedProtocols), + "application/rss+xml", "rss" + } + }; Index: pkgsrc/mail/thunderbird45/patches/patch-mail_installer_package-manifest.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mail_installer_package-manifest.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mail_installer_package-manifest.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mail_installer_package-manifest.in,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mail/installer/package-manifest.in.orig 2016-04-07 21:14:23.000000000 +0000 ++++ mail/installer/package-manifest.in +@@ -804,7 +804,7 @@ + #endif + + ; for Solaris SPARC +-#ifdef SOLARIS ++#if defined(SOLARIS) && defined(SPARC) + @BINPATH@/@DLL_PREFIX@freebl_32fpu_3@DLL_SUFFIX@ + @BINPATH@/@DLL_PREFIX@freebl_32int_3@DLL_SUFFIX@ + @BINPATH@/@DLL_PREFIX@freebl_32int64_3@DLL_SUFFIX@ Index: pkgsrc/mail/thunderbird45/patches/patch-mail_installer_removed-files.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mail_installer_removed-files.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mail_installer_removed-files.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,47 @@ +$NetBSD: patch-mail_installer_removed-files.in,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mail/installer/removed-files.in.orig 2016-04-07 21:14:23.000000000 +0000 ++++ mail/installer/removed-files.in +@@ -196,42 +196,6 @@ + @DIR_MACOS@greprefs/security-prefs.js + @DIR_MACOS@greprefs/xpinstall.js + @DIR_MACOS@greprefs/ +-@DIR_MACOS@hyphenation/ +-@DIR_MACOS@hyphenation/hyph_af.dic +-@DIR_MACOS@hyphenation/hyph_bg.dic +-@DIR_MACOS@hyphenation/hyph_ca.dic +-@DIR_MACOS@hyphenation/hyph_cy.dic +-@DIR_MACOS@hyphenation/hyph_da.dic +-@DIR_MACOS@hyphenation/hyph_de-1901.dic +-@DIR_MACOS@hyphenation/hyph_de-1996.dic +-@DIR_MACOS@hyphenation/hyph_de-CH.dic +-@DIR_MACOS@hyphenation/hyph_en_US.dic +-@DIR_MACOS@hyphenation/hyph_eo.dic +-@DIR_MACOS@hyphenation/hyph_es.dic +-@DIR_MACOS@hyphenation/hyph_et.dic +-@DIR_MACOS@hyphenation/hyph_fi.dic +-@DIR_MACOS@hyphenation/hyph_fr.dic +-@DIR_MACOS@hyphenation/hyph_gl.dic +-@DIR_MACOS@hyphenation/hyph_hr.dic +-@DIR_MACOS@hyphenation/hyph_hsb.dic +-@DIR_MACOS@hyphenation/hyph_hu.dic +-@DIR_MACOS@hyphenation/hyph_ia.dic +-@DIR_MACOS@hyphenation/hyph_is.dic +-@DIR_MACOS@hyphenation/hyph_it.dic +-@DIR_MACOS@hyphenation/hyph_kmr.dic +-@DIR_MACOS@hyphenation/hyph_la.dic +-@DIR_MACOS@hyphenation/hyph_lt.dic +-@DIR_MACOS@hyphenation/hyph_mn.dic +-@DIR_MACOS@hyphenation/hyph_nb.dic +-@DIR_MACOS@hyphenation/hyph_nl.dic +-@DIR_MACOS@hyphenation/hyph_nn.dic +-@DIR_MACOS@hyphenation/hyph_pt.dic +-@DIR_MACOS@hyphenation/hyph_ru.dic +-@DIR_MACOS@hyphenation/hyph_sh.dic +-@DIR_MACOS@hyphenation/hyph_sl.dic +-@DIR_MACOS@hyphenation/hyph_sv.dic +-@DIR_MACOS@hyphenation/hyph_tr.dic +-@DIR_MACOS@hyphenation/hyph_uk.dic + + #ifdef MOZ_WIDGET_GTK + icons/mozicon128.png Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_branding_unofficial_locales_en-US_brand.dtd diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_branding_unofficial_locales_en-US_brand.dtd:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_branding_unofficial_locales_en-US_brand.dtd Thu Apr 27 13:38:18 2017 @@ -0,0 +1,16 @@ +$NetBSD: patch-mozilla_browser_branding_unofficial_locales_en-US_brand.dtd,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/browser/branding/unofficial/locales/en-US/brand.dtd.orig 2016-04-07 21:33:15.000000000 +0000 ++++ mozilla/browser/branding/unofficial/locales/en-US/brand.dtd +@@ -2,8 +2,8 @@ + - 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/. --> + +- +- +- ++ ++ ++ + + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_installer_package-manifest.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_installer_package-manifest.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_browser_installer_package-manifest.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_browser_installer_package-manifest.in,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/browser/installer/package-manifest.in.orig 2016-04-07 21:33:17.000000000 +0000 ++++ mozilla/browser/installer/package-manifest.in +@@ -606,7 +606,7 @@ + @RESPATH@/components/MozKeyboard.js + @RESPATH@/components/InputMethod.manifest + +-#ifdef MOZ_DEBUG ++#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG) + @RESPATH@/components/TestInterfaceJS.js + @RESPATH@/components/TestInterfaceJS.manifest + @RESPATH@/components/TestInterfaceJSMaplike.js +@@ -824,7 +824,7 @@ + #endif + + ; for Solaris SPARC +-#ifdef SOLARIS ++#if defined(SOLARIS) && defined(SPARC) + bin/libfreebl_32fpu_3.so + bin/libfreebl_32int_3.so + bin/libfreebl_32int64_3.so Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_compiler-opts.m4 diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_compiler-opts.m4:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_compiler-opts.m4 Thu Apr 27 13:38:18 2017 @@ -0,0 +1,19 @@ +$NetBSD: patch-mozilla_build_autoconf_compiler-opts.m4,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/build/autoconf/compiler-opts.m4.orig 2016-04-07 21:33:17.000000000 +0000 ++++ mozilla/build/autoconf/compiler-opts.m4 +@@ -53,14 +53,6 @@ case "$target" in + if test -z "$CXX"; then + MOZ_PATH_PROGS(CXX, clang++) + fi +- IS_GCC=$($CC -v 2>&1 | grep gcc) +- if test -n "$IS_GCC" +- then +- echo gcc is known to be broken on OS X, please use clang. +- echo see http://developer.mozilla.org/en-US/docs/Developer_Guide/Build_Instructions/Mac_OS_X_Prerequisites +- echo for more information. +- exit 1 +- fi + ;; + esac + fi Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_nss.m4 diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_nss.m4:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_autoconf_nss.m4 Thu Apr 27 13:38:18 2017 @@ -0,0 +1,46 @@ +$NetBSD: patch-mozilla_build_autoconf_nss.m4,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/build/autoconf/nss.m4.orig 2016-04-07 21:33:17.000000000 +0000 ++++ mozilla/build/autoconf/nss.m4 +@@ -22,18 +22,18 @@ AC_ARG_WITH(nss-exec-prefix, + if test -n "$nss_config_exec_prefix"; then + nss_config_args="$nss_config_args --exec-prefix=$nss_config_exec_prefix" + if test -z "$NSS_CONFIG"; then +- NSS_CONFIG=$nss_config_exec_prefix/bin/nss-config ++ NSS_CONFIG=$nss_config_exec_prefix/bin/pkg-config + fi + fi + if test -n "$nss_config_prefix"; then + nss_config_args="$nss_config_args --prefix=$nss_config_prefix" + if test -z "$NSS_CONFIG"; then +- NSS_CONFIG=$nss_config_prefix/bin/nss-config ++ NSS_CONFIG=$nss_config_prefix/bin/pkg-config + fi + fi + + unset ac_cv_path_NSS_CONFIG +- AC_PATH_PROG(NSS_CONFIG, nss-config, no) ++ AC_PATH_PROG(NSS_CONFIG, pkg-config, no) + min_nss_version=ifelse([$1], ,3.0.0,$1) + AC_MSG_CHECKING(for NSS - version >= $min_nss_version) + +@@ -41,14 +41,14 @@ AC_ARG_WITH(nss-exec-prefix, + if test "$NSS_CONFIG" = "no"; then + no_nss="yes" + else +- NSS_CFLAGS=`$NSS_CONFIG $nss_config_args --cflags` +- NSS_LIBS=`$NSS_CONFIG $nss_config_args --libs` ++ NSS_CFLAGS=`$NSS_CONFIG $nss_config_args nss --cflags` ++ NSS_LIBS=`$NSS_CONFIG $nss_config_args nss --libs` + +- nss_config_major_version=`$NSS_CONFIG $nss_config_args --version | \ ++ nss_config_major_version=`$NSS_CONFIG $nss_config_args nss --modversion | \ + sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\(\.\([[0-9]]*\)\)\{0,1\}/\1/'` +- nss_config_minor_version=`$NSS_CONFIG $nss_config_args --version | \ ++ nss_config_minor_version=`$NSS_CONFIG $nss_config_args nss --modversion | \ + sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\(\.\([[0-9]]*\)\)\{0,1\}/\2/'` +- nss_config_micro_version=`$NSS_CONFIG $nss_config_args --version | \ ++ nss_config_micro_version=`$NSS_CONFIG $nss_config_args nss --modversion | \ + sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\(\.\([[0-9]]*\)\)\{0,1\}/\4/'` + if test -z "$nss_config_micro_version"; then + nss_config_micro_version="0" Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_gyp.mozbuild diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_gyp.mozbuild:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_gyp.mozbuild Thu Apr 27 13:38:18 2017 @@ -0,0 +1,33 @@ +$NetBSD: patch-mozilla_build_gyp.mozbuild,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/build/gyp.mozbuild.orig 2016-04-07 21:33:17.000000000 +0000 ++++ mozilla/build/gyp.mozbuild +@@ -14,6 +14,7 @@ gyp_vars = { + 'have_ethtool_cmd_speed_hi': 1 if CONFIG['MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI'] else 0, + 'include_alsa_audio': 1 if CONFIG['MOZ_ALSA'] else 0, + 'include_pulse_audio': 1 if CONFIG['MOZ_PULSEAUDIO'] else 0, ++ 'use_libv4l2': 1 if CONFIG['MOZ_LIBV4L2_LIBS'] else 0, + # basic stuff for everything + 'include_internal_video_render': 0, + 'clang_use_chrome_plugins': 0, +@@ -96,7 +97,7 @@ flavors = { + 'WINNT': 'win', + 'Android': 'linux' if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk' else 'android', + 'Linux': 'linux', +- 'Darwin': 'mac' if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa' else 'ios', ++ 'Darwin': 'ios' if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cairo-uikit' else 'mac', + 'SunOS': 'solaris', + 'GNU/kFreeBSD': 'freebsd', + 'DragonFly': 'dragonfly', +@@ -131,5 +132,11 @@ if CONFIG['INTEL_ARCHITECTURE']: + if not CONFIG['HAVE_TOOLCHAIN_SUPPORT_MSSSE3'] or not CONFIG['HAVE_TOOLCHAIN_SUPPORT_MSSE4_1']: + gyp_vars['yuv_disable_asm'] = 1 + ++# MacOS X SDK version should be able to configure with ./configure ++# --enable-macos-target=VER ++if CONFIG['MACOSX_DEPLOYMENT_TARGET']: ++ gyp_vars['mac_sdk_min'] = CONFIG['MACOSX_DEPLOYMENT_TARGET'] ++ gyp_vars['mac_deployment_target'] = CONFIG['MACOSX_DEPLOYMENT_TARGET'] ++ + if CONFIG['MACOS_SDK_DIR']: + gyp_vars['mac_sdk_path'] = CONFIG['MACOS_SDK_DIR'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_pgo_profileserver.py diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_pgo_profileserver.py:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_build_pgo_profileserver.py Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_build_pgo_profileserver.py,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/build/pgo/profileserver.py.orig 2016-04-07 21:33:18.000000000 +0000 ++++ mozilla/build/pgo/profileserver.py +@@ -68,7 +68,7 @@ if __name__ == '__main__': + env["MOZ_JAR_LOG_FILE"] = os.path.abspath(jarlog) + print "jarlog: %s" % env["MOZ_JAR_LOG_FILE"] + +- cmdargs = ["http://localhost:%d/index.html" % PORT] ++ cmdargs = ["http://127.0.0.1:%d/index.html" % PORT] + runner = FirefoxRunner(profile=profile, + binary=build.get_binary_path(where="staged-package"), + cmdargs=cmdargs, Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_Makefile.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_Makefile.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_Makefile.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,21 @@ +$NetBSD: patch-mozilla_config_Makefile.in,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/config/Makefile.in.orig 2016-04-07 21:33:18.000000000 +0000 ++++ mozilla/config/Makefile.in +@@ -73,6 +73,16 @@ export:: $(export-preqs) + -DMOZ_NATIVE_LIBEVENT=$(MOZ_NATIVE_LIBEVENT) \ + -DMOZ_NATIVE_LIBVPX=$(MOZ_NATIVE_LIBVPX) \ + -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \ ++ -DMOZ_NATIVE_GRAPHITE2=$(MOZ_NATIVE_GRAPHITE2) \ ++ -DMOZ_NATIVE_HARFBUZZ=$(MOZ_NATIVE_HARFBUZZ) \ ++ -DMOZ_NATIVE_OGG=$(MOZ_NATIVE_OGG) \ ++ -DMOZ_NATIVE_THEORA=$(MOZ_NATIVE_THEORA) \ ++ -DMOZ_NATIVE_VORBIS=$(MOZ_NATIVE_VORBIS) \ ++ -DMOZ_NATIVE_TREMOR=$(MOZ_NATIVE_TREMOR) \ ++ -DMOZ_NATIVE_CELT=$(MOZ_NATIVE_CELT) \ ++ -DMOZ_NATIVE_OPUS=$(MOZ_NATIVE_OPUS) \ ++ -DMOZ_NATIVE_SPEEX=$(MOZ_NATIVE_SPEEX) \ ++ -DMOZ_NATIVE_SOUNDTOUCH=$(MOZ_NATIVE_SOUNDTOUCH) \ + $(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers + $(INSTALL) system_wrappers $(DIST) + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_baseconfig.mk diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_baseconfig.mk:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_baseconfig.mk Thu Apr 27 13:38:18 2017 @@ -0,0 +1,19 @@ +$NetBSD: patch-mozilla_config_baseconfig.mk,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/config/baseconfig.mk.orig 2016-04-07 21:33:18.000000000 +0000 ++++ mozilla/config/baseconfig.mk +@@ -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)/${MOZILLA_PKG_NAME} ++idldir = $(datadir)/idl/${MOZILLA_PKG_NAME} ++installdir = $(libdir)/${MOZILLA_PKG_NAME} ++sdkdir = $(libdir)/${MOZILLA_PKG_NAME} + ifeq (.,$(DEPTH)) + DIST = dist + else Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_external_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_external_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_external_moz.build Thu Apr 27 13:38:18 2017 @@ -0,0 +1,36 @@ +$NetBSD: patch-mozilla_config_external_moz.build,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/config/external/moz.build.orig 2016-04-07 21:33:18.000000000 +0000 ++++ mozilla/config/external/moz.build +@@ -20,10 +20,19 @@ if CONFIG['MOZ_UPDATER']: + # There's no "native brotli" yet, but probably in the future... + external_dirs += ['modules/brotli'] + +-if CONFIG['MOZ_VORBIS']: ++if not CONFIG['MOZ_NATIVE_OGG']: ++ external_dirs += ['media/libogg'] ++ ++if not CONFIG['MOZ_NATIVE_CELT'] or not CONFIG['MOZ_NATIVE_OPUS']: ++ external_dirs += ['media/libopus'] ++ ++if not CONFIG['MOZ_NATIVE_THEORA']: ++ external_dirs += ['media/libtheora'] ++ ++if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_NATIVE_VORBIS']: + external_dirs += ['media/libvorbis'] + +-if CONFIG['MOZ_TREMOR']: ++if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_NATIVE_TREMOR']: + external_dirs += ['media/libtremor'] + + if CONFIG['MOZ_WEBM']: +@@ -50,9 +59,6 @@ if CONFIG['MOZ_WEBSPEECH_POCKETSPHINX']: + external_dirs += [ + 'media/kiss_fft', + 'media/libcubeb', +- 'media/libogg', +- 'media/libopus', +- 'media/libtheora', + 'media/libspeex_resampler', + 'media/libstagefright', + 'media/libsoundtouch', Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_rules.mk diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_rules.mk:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_rules.mk Thu Apr 27 13:38:18 2017 @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_config_rules.mk,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/config/rules.mk.orig 2016-04-07 21:33:18.000000000 +0000 ++++ mozilla/config/rules.mk +@@ -773,6 +773,7 @@ endif + ifdef DTRACE_PROBE_OBJ + EXTRA_DEPS += $(DTRACE_PROBE_OBJ) + OBJS += $(DTRACE_PROBE_OBJ) ++EXCLUDED_OBJS += $(DTRACE_PROBE_OBJ) + endif + + $(filter %.$(LIB_SUFFIX),$(LIBRARY)): $(OBJS) $(STATIC_LIBS_DEPS) $(filter %.$(LIB_SUFFIX),$(EXTRA_LIBS)) $(EXTRA_DEPS) $(GLOBAL_DEPS) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ios diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ios:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ios Thu Apr 27 13:38:18 2017 @@ -0,0 +1,8 @@ +$NetBSD: patch-mozilla_config_stl__wrappers_ios,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/config/stl_wrappers/ios.orig 2016-04-17 13:47:46.239830507 +0000 ++++ mozilla/config/stl_wrappers/ios +@@ -0,0 +1,3 @@ ++#pragma GCC visibility push(default) ++#include_next ++#pragma GCC visibility pop Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ostream diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ostream:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_stl__wrappers_ostream Thu Apr 27 13:38:18 2017 @@ -0,0 +1,8 @@ +$NetBSD: patch-mozilla_config_stl__wrappers_ostream,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/config/stl_wrappers/ostream.orig 2016-04-17 13:47:46.239960852 +0000 ++++ mozilla/config/stl_wrappers/ostream +@@ -0,0 +1,3 @@ ++#pragma GCC visibility push(default) ++#include_next ++#pragma GCC visibility pop Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_system-headers diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_system-headers:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_config_system-headers Thu Apr 27 13:38:18 2017 @@ -0,0 +1,90 @@ +$NetBSD: patch-mozilla_config_system-headers,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/config/system-headers.orig 2016-04-07 21:33:18.000000000 +0000 ++++ mozilla/config/system-headers +@@ -628,6 +628,7 @@ libgnome/libgnome.h + libgnomeui/gnome-icon-lookup.h + libgnomeui/gnome-icon-theme.h + libgnomeui/gnome-ui-init.h ++libv4l2.h + lib$routines.h + limits + limits.h +@@ -722,6 +723,7 @@ mapiutil.h + mapix.h + Math64.h + math.h ++complex + mbstring.h + #ifdef ANDROID + media/AudioEffect.h +@@ -1314,6 +1316,25 @@ vpx/vp8cx.h + vpx/vp8dx.h + vpx_mem/vpx_mem.h + #endif ++#ifdef GKMEDIAS_SHARED_LIBRARY ++vpx/vpx_codec.h ++vpx/vpx_decoder.h ++vpx/vpx_encoder.h ++vpx/vp8cx.h ++vpx/vp8dx.h ++vpx_mem/vpx_mem.h ++vorbis/codec.h ++theora/theoradec.h ++tremor/ivorbiscodec.h ++speex/speex_resampler.h ++soundtouch/SoundTouch.h ++ogg/ogg.h ++ogg/os_types.h ++nestegg/nestegg.h ++cubeb/cubeb.h ++speex/speex_resampler.h ++soundtouch/SoundTouch.h ++#endif + gst/gst.h + gst/app/gstappsink.h + gst/app/gstappsrc.h +@@ -1344,3 +1365,43 @@ unicode/utypes.h + #endif + libutil.h + unwind.h ++#if MOZ_NATIVE_GRAPHITE2==1 ++graphite2/Font.h ++graphite2/Segment.h ++#endif ++#if MOZ_NATIVE_HARFBUZZ==1 ++harfbuzz/hb-ot.h ++harfbuzz/hb.h ++#endif ++#if MOZ_NATIVE_OGG==1 ++ogg/ogg.h ++ogg/os_types.h ++#endif ++#if MOZ_NATIVE_THEORA==1 ++theora/theoradec.h ++#endif ++#if MOZ_NATIVE_VORBIS==1 ++vorbis/codec.h ++vorbis/vorbisenc.h ++#endif ++#if MOZ_NATIVE_TREMOR==1 ++tremor/ivorbiscodec.h ++#endif ++#if MOZ_NATIVE_CELT==1 ++celt.h ++celt_header.h ++celt/celt.h ++celt/celt_header.h ++#endif ++#if MOZ_NATIVE_OPUS==1 ++opus.h ++opus_multistream.h ++opus/opus.h ++opus/opus_multistream.h ++#endif ++#if MOZ_NATIVE_SPEEX==1 ++speex/speex_resampler.h ++#endif ++#if MOZ_NATIVE_SOUNDTOUCH==1 ++soundtouch/SoundTouch.h ++#endif Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_configure.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_configure.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_configure.in Thu Apr 27 13:38:18 2017 @@ -0,0 +1,365 @@ +$NetBSD: patch-mozilla_configure.in,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/configure.in.orig 2016-04-07 21:33:18.000000000 +0000 ++++ mozilla/configure.in +@@ -1746,7 +1746,7 @@ fi + dnl ======================================================== + dnl SPS Profiler + dnl ======================================================== +-MOZ_ENABLE_PROFILER_SPS=1 ++MOZ_ENABLE_PROFILER_SPS= + + case "${OS_TARGET}" in + Android) +@@ -1996,7 +1996,6 @@ case "$target" in + _PLATFORM_DEFAULT_TOOLKIT='cairo-uikit' + direct_nspr_config=1 + else +- AC_DEFINE(XP_MACOSX) + AC_DEFINE(XP_DARWIN) + _PLATFORM_DEFAULT_TOOLKIT='cairo-cocoa' + # The ExceptionHandling framework is needed for Objective-C exception +@@ -2580,8 +2579,7 @@ MOZ_CXX11 + + AC_LANG_C + +-dnl Check for .hidden assembler directive and visibility attribute. +-dnl Borrowed from glibc configure.in ++dnl Setup default hidden visibility and wrapped system headers. + dnl =============================================================== + if test "$GNU_CC" -a "$OS_TARGET" != WINNT; then + AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) +@@ -3476,6 +3474,14 @@ if test -n "$YASM"; then + _YASM_BUILD=` echo ${YASM_VERSION} | $AWK -F\. '{ print $4 }'` + fi + ++if test -n "${LIBXUL_SDK_DIR}"; then ++ AC_MSG_WARN([pkgsrc: LIBXUL_SDK_DIR is set; assuming we want nss and nspr from xulrunner.]) ++ NSPR_CFLAGS="-I${prefix}/include/xulrunner/unstable `pkg-config --cflags nspr`" ++ NSPR_LIBS="`pkg-config --libs nspr`" ++ NSS_CFLAGS="`pkg-config --cflags nss`" ++ NSS_LIBS="`pkg-config --libs nss`" ++fi ++ + if test -z "$SKIP_LIBRARY_CHECKS"; then + dnl system JPEG support + dnl ======================================================== +@@ -3503,11 +3509,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then + #include ], + [ #if JPEG_LIB_VERSION < $MOZJPEG + #error "Insufficient JPEG library version ($MOZJPEG required)." +- #endif +- #ifndef JCS_EXTENSIONS +- #error "libjpeg-turbo JCS_EXTENSIONS required" +- #endif +- ], ++ #endif ], + MOZ_NATIVE_JPEG=1, + AC_MSG_ERROR([Insufficient JPEG library version for --with-system-jpeg])) + fi +@@ -4260,6 +4262,10 @@ cairo-gonk) + + esac + ++if test "$MOZ_WIDGET_TOOLKIT" = "cocoa"; then ++ AC_DEFINE(XP_MACOSX) ++fi ++ + AC_SUBST(MOZ_PDF_PRINTING) + if test "$MOZ_PDF_PRINTING"; then + PDF_SURFACE_FEATURE="#define CAIRO_HAS_PDF_SURFACE 1" +@@ -5018,6 +5024,9 @@ if test -n "$MOZ_WEBRTC"; then + MOZ_VPX=1 + MOZ_VPX_ERROR_CONCEALMENT=1 + ++ dnl with libv4l2 we can support more cameras ++ PKG_CHECK_MODULES(MOZ_LIBV4L2, libv4l2) ++ + dnl enable once Signaling lands + MOZ_WEBRTC_SIGNALING=1 + AC_DEFINE(MOZ_WEBRTC_SIGNALING) +@@ -5161,6 +5170,142 @@ if test "${ac_cv_c_attribute_aligned}" ! + fi + + dnl ======================================================== ++dnl Check for libogg ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-ogg, ++[ --with-system-ogg Use system libogg (located with pkgconfig)], ++MOZ_NATIVE_OGG=1, ++MOZ_NATIVE_OGG=) ++ ++if test -n "$MOZ_NATIVE_OGG"; then ++ PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.2.1) ++ ++ _SAVE_LIBS=$LIBS ++ LIBS="$LIBS $MOZ_OGG_LIBS" ++ AC_CHECK_FUNC(ogg_set_mem_functions, [], ++ [AC_DEFINE(MOZ_OGG_NO_MEM_REPORTING)]) ++ LIBS=$_SAVE_LIBS ++fi ++ ++AC_SUBST(MOZ_NATIVE_OGG) ++ ++dnl ======================================================== ++dnl Check for libvorbis ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-vorbis, ++[ --with-system-vorbis Use system libvorbis (located with pkgconfig)], ++MOZ_NATIVE_VORBIS=1, ++MOZ_NATIVE_VORBIS=) ++ ++if test -n "$MOZ_NATIVE_VORBIS"; then ++ PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.5) ++fi ++ ++AC_SUBST(MOZ_NATIVE_VORBIS) ++ ++dnl ======================================================== ++dnl Check for integer-only libvorbis aka tremor ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-tremor, ++[ --with-system-tremor Use system libtremor (located with pkgconfig)], ++MOZ_NATIVE_TREMOR=1, ++MOZ_NATIVE_TREMOR=) ++ ++if test -n "$MOZ_NATIVE_TREMOR"; then ++ PKG_CHECK_MODULES(MOZ_TREMOR, vorbisidec >= 1.2.1) ++fi ++ ++AC_SUBST(MOZ_NATIVE_TREMOR) ++ ++dnl ======================================================== ++dnl Check for libcelt ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-celt, ++[ --with-system-celt Use system libcelt (located with pkgconfig)], ++MOZ_NATIVE_CELT=1, ++MOZ_NATIVE_CELT=) ++ ++if test -n "$MOZ_NATIVE_CELT"; then ++ PKG_CHECK_MODULES(MOZ_CELT, celt) ++else ++ MOZ_CELT_CFLAGS='-I$(topsrcdir)/media/libopus' ++fi ++ ++AC_SUBST(MOZ_NATIVE_CELT) ++ ++dnl ======================================================== ++dnl Check for libopus ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-opus, ++[ --with-system-opus Use system libopus (located with pkgconfig)], ++MOZ_NATIVE_OPUS=1, ++MOZ_NATIVE_OPUS=) ++ ++if test -n "$MOZ_NATIVE_OPUS"; then ++ PKG_CHECK_MODULES(MOZ_OPUS, opus >= 1.1) ++else ++ MOZ_OPUS_CFLAGS='-I$(topsrcdir)/media/libopus/include' ++fi ++ ++AC_SUBST(MOZ_NATIVE_OPUS) ++ ++dnl ======================================================== ++dnl Check for libtheora ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-theora, ++[ --with-system-theora Use system libtheora (located with pkgconfig)], ++MOZ_NATIVE_THEORA=1, ++MOZ_NATIVE_THEORA=) ++ ++if test -n "$MOZ_NATIVE_THEORA"; then ++ PKG_CHECK_MODULES(MOZ_THEORA, theora >= 1.2) ++fi ++ ++AC_SUBST(MOZ_NATIVE_THEORA) ++ ++dnl ======================================================== ++dnl Check for libsoundtouch ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-soundtouch, ++[ --with-system-soundtouch Use system libsoundtouch (located with pkgconfig)], ++MOZ_NATIVE_SOUNDTOUCH=1, ++MOZ_NATIVE_SOUNDTOUCH=) ++ ++if test -n "$MOZ_NATIVE_SOUNDTOUCH"; then ++ PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.8.0) ++ ++ AC_LANG_SAVE ++ AC_LANG_CPLUSPLUS ++ _SAVE_CXXFLAGS=$CXXFLAGS ++ CXXFLAGS="$CXXFLAGS $MOZ_SOUNDTOUCH_CFLAGS" ++ AC_CACHE_CHECK(for soundtouch sample type, ++ ac_cv_soundtouch_sample_type, ++ [AC_TRY_COMPILE([#include ++ #ifndef SOUNDTOUCH_INTEGER_SAMPLES ++ #error soundtouch expects float samples ++ #endif], ++ [], ++ [ac_cv_soundtouch_sample_type=short], ++ [ac_cv_soundtouch_sample_type=float])]) ++ CXXFLAGS=$_SAVE_CXXFLAGS ++ AC_LANG_RESTORE ++ ++ if test \( -n "$MOZ_SAMPLE_TYPE_S16" -a "$ac_cv_soundtouch_sample_type" != short \) \ ++ -o \( -n "$MOZ_SAMPLE_TYPE_FLOAT32" -a "$ac_cv_soundtouch_sample_type" != float \) ; then ++ AC_MSG_ERROR([SoundTouch library is built with incompatible sample type. Either rebuild the library with/without --enable-integer-samples, chase default Mozilla sample type or remove --with-system-soundtouch.]) ++ fi ++fi ++ ++AC_SUBST(MOZ_NATIVE_SOUNDTOUCH) ++ ++dnl ======================================================== + dnl = Disable VP8 decoder support + dnl ======================================================== + MOZ_ARG_DISABLE_BOOL(webm, +@@ -5563,6 +5708,67 @@ fi + AC_SUBST(MOZ_WEBM_ENCODER) + + dnl ================================== ++dnl = Check OSS availability ++dnl ================================== ++ ++dnl If using Linux, Solaris or BSDs, ensure that OSS is available ++case "$OS_TARGET" in ++Linux|SunOS|DragonFly|FreeBSD|GNU/kFreeBSD) ++ MOZ_OSS=1 ++ ;; ++esac ++ ++MOZ_ARG_WITH_STRING(oss, ++[ --with-oss[=PFX] Enable OpenSoundSystem support [installed at prefix PFX]], ++ OSSPREFIX=$withval) ++ ++if test -n "$OSSPREFIX"; then ++ if test "$OSSPREFIX" != "no"; then ++ MOZ_OSS=1 ++ else ++ MOZ_OSS= ++ fi ++fi ++ ++_SAVE_CFLAGS=$CFLAGS ++_SAVE_LIBS=$LIBS ++if test -n "$MOZ_OSS"; then ++ dnl Prefer 4Front implementation ++ AC_MSG_CHECKING([MOZ_OSS_CFLAGS]) ++ if test "$OSSPREFIX" != "yes"; then ++ oss_conf=${OSSPREFIX}/etc/oss.conf ++ if test -f "$oss_conf"; then ++ . "$oss_conf" ++ else ++ OSSLIBDIR=$OSSPREFIX/lib/oss ++ fi ++ if test -d "$OSSLIBDIR"; then ++ MOZ_OSS_CFLAGS="$MOZ_OSS_CFLAGS -I$OSSLIBDIR/include" ++ fi ++ fi ++ AC_MSG_RESULT([$MOZ_OSS_CFLAGS]) ++ ++ CFLAGS="$CFLAGS $MOZ_OSS_CFLAGS" ++ MOZ_CHECK_HEADERS(sys/soundcard.h soundcard.h) ++ ++ if test "$ac_cv_header_sys_soundcard_h" != "yes" -a \ ++ "$ac_cv_header_soundcard_h" != "yes"; then ++ AC_MSG_ERROR([Need OSS for Ogg, Wave or WebM decoding on $OS_TARGET. Disable with --disable-ogg --disable-wave --disable-webm.]) ++ fi ++ ++ dnl Assume NetBSD implementation over SunAudio ++ AC_CHECK_LIB(ossaudio, _oss_ioctl, ++ [AC_DEFINE_UNQUOTED(CUBEB_OSS_DEFAULT_OUTPUT, "/dev/sound") ++ MOZ_OSS_LIBS="$MOZ_OSS_LIBS -lossaudio"]) ++fi ++CFLAGS=$_SAVE_CFLAGS ++LIBS=$_SAVE_LIBS ++ ++AC_SUBST(MOZ_OSS) ++AC_SUBST_LIST(MOZ_OSS_CFLAGS) ++AC_SUBST_LIST(MOZ_OSS_LIBS) ++ ++dnl ================================== + dnl = Check alsa availability on Linux + dnl ================================== + +@@ -5576,12 +5782,23 @@ MOZ_ARG_ENABLE_BOOL(alsa, + MOZ_ALSA=1, + MOZ_ALSA=) + ++MOZ_ARG_DISABLE_BOOL(alsa-dlopen, ++[ --disable-alsa-dlopen Disable runtime linking of libasound.so], ++ DISABLE_LIBASOUND_DLOPEN=1, ++ DISABLE_LIBASOUND_DLOPEN=) ++ + if test -n "$MOZ_ALSA"; then + PKG_CHECK_MODULES(MOZ_ALSA, alsa, , + [echo "$MOZ_ALSA_PKG_ERRORS" + AC_MSG_ERROR([Need alsa for audio output on Linux. (On Ubuntu, you might try installing the package libasound2-dev.)])]) + fi + ++if test -n "$DISABLE_LIBASOUND_DLOPEN"; then ++ AC_DEFINE(DISABLE_LIBASOUND_DLOPEN) ++else ++ MOZ_ALSA_LIBS= ++fi ++ + AC_SUBST(MOZ_ALSA) + + dnl ======================================================== +@@ -8139,6 +8356,49 @@ if test "$USE_FC_FREETYPE"; then + fi + + dnl ======================================================== ++dnl Check for harfbuzz ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-harfbuzz, ++[ --with-system-harfbuzz Use system harfbuzz (located with pkgconfig)], ++MOZ_NATIVE_HARFBUZZ=1, ++MOZ_NATIVE_HARFBUZZ=) ++ ++if test -n "$MOZ_NATIVE_HARFBUZZ"; then ++ PKG_CHECK_MODULES(MOZ_HARFBUZZ, harfbuzz >= 0.9.34) ++fi ++ ++AC_SUBST(MOZ_NATIVE_HARFBUZZ) ++ ++dnl ======================================================== ++dnl Check for graphite2 ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-graphite2, ++[ --with-system-graphite2 Use system graphite2 (located with pkgconfig)], ++MOZ_NATIVE_GRAPHITE2=1, ++MOZ_NATIVE_GRAPHITE2=) ++ ++if test -n "$MOZ_NATIVE_GRAPHITE2"; then ++ PKG_CHECK_MODULES(MOZ_GRAPHITE2, graphite2) ++ ++ dnl graphite2.pc has bogus version, check manually ++ AC_TRY_COMPILE([ #include ++ #define GR2_VERSION_REQUIRE(major,minor,bugfix) \ ++ ( GR2_VERSION_MAJOR * 10000 + GR2_VERSION_MINOR \ ++ * 100 + GR2_VERSION_BUGFIX >= \ ++ (major) * 10000 + (minor) * 100 + (bugfix) ) ++ ], [ ++ #if !GR2_VERSION_REQUIRE(1,2,4) ++ #error "Insufficient graphite2 version." ++ #endif ++ ], [], ++ [AC_MSG_ERROR([--with-system-graphite2 requested but no working libgraphite2 found])]) ++fi ++ ++AC_SUBST(MOZ_NATIVE_GRAPHITE2) ++ ++dnl ======================================================== + dnl Check for pixman and cairo + dnl ======================================================== + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_DOMRequest.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_DOMRequest.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_DOMRequest.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_dom_base_DOMRequest.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/base/DOMRequest.cpp.orig 2016-04-07 21:33:22.000000000 +0000 ++++ mozilla/dom/base/DOMRequest.cpp +@@ -20,7 +20,6 @@ using mozilla::dom::DOMError; + using mozilla::dom::DOMRequest; + using mozilla::dom::DOMRequestService; + using mozilla::dom::DOMCursor; +-using mozilla::dom::Promise; + using mozilla::dom::AutoJSAPI; + + DOMRequest::DOMRequest(nsPIDOMWindow* aWindow) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_base_moz.build Thu Apr 27 13:38:18 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_dom_base_moz.build,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/base/moz.build.orig 2016-04-07 21:33:22.000000000 +0000 ++++ mozilla/dom/base/moz.build +@@ -393,6 +393,9 @@ if CONFIG['INTEL_ARCHITECTURE']: + SOURCES += ['nsTextFragmentSSE2.cpp'] + SOURCES['nsTextFragmentSSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] + ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ SOURCES['nsContentUtils.cpp'].flags += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ + EXTRA_COMPONENTS += [ + 'ConsoleAPI.manifest', + 'ConsoleAPIStorage.js', Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/media/gstreamer/GStreamerAllocator.cpp.orig 2016-04-07 21:33:27.000000000 +0000 ++++ mozilla/dom/media/gstreamer/GStreamerAllocator.cpp +@@ -51,7 +51,6 @@ typedef struct + #pragma GCC diagnostic ignored "-Wunused-function" + G_DEFINE_TYPE(MozGfxMemoryAllocator, moz_gfx_memory_allocator, GST_TYPE_ALLOCATOR); + G_DEFINE_TYPE(MozGfxBufferPool, moz_gfx_buffer_pool, GST_TYPE_VIDEO_BUFFER_POOL); +-#pragma GCC diagnostic pop + + void + moz_gfx_memory_reset(MozGfxMemory *mem) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_media_moz.build Thu Apr 27 13:38:18 2017 @@ -0,0 +1,32 @@ +$NetBSD: patch-mozilla_dom_media_moz.build,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/media/moz.build.orig 2016-04-07 21:33:27.000000000 +0000 ++++ mozilla/dom/media/moz.build +@@ -319,6 +319,27 @@ if CONFIG['MOZ_GONK_MEDIACODEC']: + CFLAGS += CONFIG['GSTREAMER_CFLAGS'] + CXXFLAGS += CONFIG['GSTREAMER_CFLAGS'] + ++if CONFIG['MOZ_NATIVE_OGG']: ++ CXXFLAGS += CONFIG['MOZ_OGG_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_THEORA']: ++ CXXFLAGS += CONFIG['MOZ_THEORA_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_VORBIS']: ++ CXXFLAGS += CONFIG['MOZ_VORBIS_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_TREMOR']: ++ CXXFLAGS += CONFIG['MOZ_TREMOR_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_OPUS']: ++ CXXFLAGS += CONFIG['MOZ_OPUS_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_SPEEX']: ++ CXXFLAGS += CONFIG['MOZ_SPEEX_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_SOUNDTOUCH']: ++ CXXFLAGS += CONFIG['MOZ_SOUNDTOUCH_CFLAGS'] ++ + include('/ipc/chromium/chromium-config.mozbuild') + + # Suppress some GCC warnings being treated as errors: Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,31 @@ +$NetBSD: patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/plugins/ipc/PluginModuleChild.cpp.orig 2016-04-07 21:33:30.000000000 +0000 ++++ mozilla/dom/plugins/ipc/PluginModuleChild.cpp +@@ -308,7 +308,7 @@ PluginModuleChild::InitForChrome(const s + + // TODO: use PluginPRLibrary here + +-#if defined(OS_LINUX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) + mShutdownFunc = + (NP_PLUGINSHUTDOWN) PR_FindFunctionSymbol(mLibrary, "NP_Shutdown"); + +@@ -1916,7 +1916,7 @@ PluginModuleChild::AnswerNP_GetEntryPoin + AssertPluginThread(); + MOZ_ASSERT(mIsChrome); + +-#if defined(OS_LINUX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) + return true; + #elif defined(OS_WIN) || defined(OS_MACOSX) + *_retval = mGetEntryPointsFunc(&mFunctions); +@@ -1961,7 +1961,7 @@ PluginModuleChild::DoNP_Initialize(const + #endif + + NPError result; +-#if defined(OS_LINUX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) + result = mInitializeFunc(&sBrowserFuncs, &mFunctions); + #elif defined(OS_WIN) || defined(OS_MACOSX) + result = mInitializeFunc(&sBrowserFuncs); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_dom_plugins_ipc_PluginModuleChild.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/plugins/ipc/PluginModuleChild.h.orig 2016-04-07 21:33:30.000000000 +0000 ++++ mozilla/dom/plugins/ipc/PluginModuleChild.h +@@ -281,7 +281,7 @@ private: + + // we get this from the plugin + NP_PLUGINSHUTDOWN mShutdownFunc; +-#if defined(OS_LINUX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) + NP_PLUGINUNIXINIT mInitializeFunc; + #elif defined(OS_WIN) || defined(OS_MACOSX) + NP_PLUGININIT mInitializeFunc; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/plugins/ipc/PluginProcessChild.cpp.orig 2016-04-07 21:33:30.000000000 +0000 ++++ mozilla/dom/plugins/ipc/PluginProcessChild.cpp +@@ -46,7 +46,7 @@ PluginProcessChild::Init() + { + nsDebugImpl::SetMultiprocessMode("NPAPI"); + +-#if defined(XP_MACOSX) ++#if defined(MOZ_WIDGET_COCOA) + // Remove the trigger for "dyld interposing" that we added in + // GeckoChildProcessHost::PerformAsyncLaunchInternal(), in the host + // process just before we were launched. Dyld interposing will still Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_system_OSFileConstants.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_system_OSFileConstants.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_dom_system_OSFileConstants.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,46 @@ +$NetBSD: patch-mozilla_dom_system_OSFileConstants.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/dom/system/OSFileConstants.cpp.orig 2016-04-07 21:33:31.000000000 +0000 ++++ mozilla/dom/system/OSFileConstants.cpp +@@ -11,6 +11,10 @@ + + #include "prsystem.h" + ++#if defined(__NetBSD__) ++#include ++#endif ++ + #if defined(XP_UNIX) + #include "unistd.h" + #include "dirent.h" +@@ -20,7 +24,9 @@ + #define statvfs statfs + #else + #include "sys/statvfs.h" ++#if !(defined(__NetBSD__) && (__NetBSD_Version__ < 600000000)) + #include ++#endif // !NetBSD 5.* + #endif // defined(ANDROID) + #endif // defined(XP_UNIX) + +@@ -28,9 +34,9 @@ + #include + #endif // defined(XP_LINUX) + +-#if defined(XP_MACOSX) ++#if defined(XP_DARWIN) + #include "copyfile.h" +-#endif // defined(XP_MACOSX) ++#endif // defined(XP_DARWIN) + + #if defined(XP_WIN) + #include +@@ -590,7 +596,7 @@ static const dom::ConstantSpec gLibcProp + // The size of |fsblkcnt_t|. + { "OSFILE_SIZEOF_FSBLKCNT_T", JS::Int32Value(sizeof (fsblkcnt_t)) }, + +-#if !defined(ANDROID) ++#if !defined(ANDROID) && !(defined(__NetBSD__) && (__NetBSD_Version__ < 600000000)) + // The size of |posix_spawn_file_actions_t|. + { "OSFILE_SIZEOF_POSIX_SPAWN_FILE_ACTIONS_T", JS::Int32Value(sizeof (posix_spawn_file_actions_t)) }, + #endif // !defined(ANDROID) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_extensions_spellcheck_hunspell_glue_mozHunspell.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_extensions_spellcheck_hunspell_glue_mozHunspell.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_extensions_spellcheck_hunspell_glue_mozHunspell.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,19 @@ +$NetBSD: patch-mozilla_extensions_spellcheck_hunspell_glue_mozHunspell.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/extensions/spellcheck/hunspell/glue/mozHunspell.cpp.orig 2016-04-07 21:33:34.000000000 +0000 ++++ mozilla/extensions/spellcheck/hunspell/glue/mozHunspell.cpp +@@ -358,6 +358,14 @@ mozHunspell::LoadDictionaryList(bool aNo + } + } + ++ // load system hunspell dictionaries ++ nsCOMPtr hunDir; ++ NS_NewNativeLocalFile(NS_LITERAL_CSTRING("@PREFIX@/share/hunspell"), ++ true, getter_AddRefs(hunDir)); ++ if (hunDir) { ++ LoadDictionariesFromDir(hunDir); ++ } ++ + // find dictionaries from extensions requiring restart + nsCOMPtr dictDirs; + rv = dirSvc->Get(DICTIONARY_SEARCH_DIRECTORY_LIST, Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_cairo_libpixman_src_pixman-arm-neon-asm.S diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_cairo_libpixman_src_pixman-arm-neon-asm.S:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_cairo_libpixman_src_pixman-arm-neon-asm.S Thu Apr 27 13:38:18 2017 @@ -0,0 +1,37 @@ +$NetBSD: patch-mozilla_gfx_cairo_libpixman_src_pixman-arm-neon-asm.S,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/cairo/libpixman/src/pixman-arm-neon-asm.S.orig 2016-04-07 21:33:13.000000000 +0000 ++++ mozilla/gfx/cairo/libpixman/src/pixman-arm-neon-asm.S +@@ -34,6 +34,12 @@ + * - pixman_composite_over_n_8_0565_asm_neon + */ + ++#if defined(__ARM_EABI__) && !defined(__ARM_DWARF_EH__) ++#define UNWIND ++#else ++#define UNWIND @ ++#endif ++ + /* Prevent the stack from becoming executable for no reason... */ + #if defined(__linux__) && defined(__ELF__) + .section .note.GNU-stack,"",%progbits +@@ -3141,7 +3147,8 @@ pixman_asm_function fname + TMP4 .req r9 + STRIDE .req r2 + +- .fnstart ++ .cfi_startproc ++ UNWIND .fnstart + mov ip, sp + .save {r4, r5, r6, r7, r8, r9} + push {r4, r5, r6, r7, r8, r9} +@@ -3244,7 +3251,8 @@ pixman_asm_function fname + .endif + pop {r4, r5, r6, r7, r8, r9} + bx lr +- .fnend ++ UNWIND .fnend ++ .cfi_endproc + + .unreq OUT + .unreq TOP Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_gl_GLContextProviderGLX.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_gl_GLContextProviderGLX.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_gl_GLContextProviderGLX.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_gfx_gl_GLContextProviderGLX.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/gl/GLContextProviderGLX.cpp.orig 2016-04-07 21:33:13.000000000 +0000 ++++ mozilla/gfx/gl/GLContextProviderGLX.cpp +@@ -84,7 +84,7 @@ GLXLibrary::EnsureInitialized() + // see e.g. bug 608526: it is intrinsically interesting to know whether we have dynamically linked to libGL.so.1 + // because at least the NVIDIA implementation requires an executable stack, which causes mprotect calls, + // which trigger glibc bug http://sourceware.org/bugzilla/show_bug.cgi?id=12225 +-#ifdef __OpenBSD__ ++#if defined(__OpenBSD__) || defined(__NetBSD__) + libGLfilename = "libGL.so"; + #else + libGLfilename = "libGL.so.1"; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_graphite2_src_Bidi.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_graphite2_src_Bidi.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_graphite2_src_Bidi.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,16 @@ +$NetBSD: patch-mozilla_gfx_graphite2_src_Bidi.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/graphite2/src/Bidi.cpp.orig 2016-04-07 21:33:13.000000000 +0000 ++++ mozilla/gfx/graphite2/src/Bidi.cpp +@@ -31,6 +31,11 @@ of the License or (at your option) any l + + using namespace graphite2; + ++#ifdef __sun ++#undef CS ++#undef ES ++#endif ++ + enum DirCode { // Hungarian: dirc + Unk = -1, + N = 0, // other neutrals (default) - ON Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_moz.build Thu Apr 27 13:38:18 2017 @@ -0,0 +1,26 @@ +$NetBSD: patch-mozilla_gfx_moz.build,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/moz.build.orig 2016-04-07 21:33:14.000000000 +0000 ++++ mozilla/gfx/moz.build +@@ -7,6 +7,12 @@ + if CONFIG['MOZ_TREE_CAIRO']: + DIRS += ['cairo'] + ++if not CONFIG['MOZ_NATIVE_GRAPHITE2']: ++ DIRS += ['graphite2/src' ] ++ ++if not CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ DIRS += ['harfbuzz/src'] ++ + DIRS += [ + '2d', + 'ycbcr', +@@ -15,8 +21,6 @@ DIRS += [ + 'qcms', + 'gl', + 'layers', +- 'graphite2/src', +- 'harfbuzz/src', + 'ots/src', + 'thebes', + 'ipc', Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_generate__mozbuild.py diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_generate__mozbuild.py:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_generate__mozbuild.py Thu Apr 27 13:38:18 2017 @@ -0,0 +1,17 @@ +$NetBSD: patch-mozilla_gfx_skia_generate__mozbuild.py,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/skia/generate_mozbuild.py.orig 2016-04-07 21:33:14.000000000 +0000 ++++ mozilla/gfx/skia/generate_mozbuild.py +@@ -155,6 +155,12 @@ if CONFIG['GNU_CXX']: + if CONFIG['CPU_ARCH'] == 'arm': + SOURCES['skia/src/opts/SkBlitRow_opts_arm.cpp'].flags += ['-fomit-frame-pointer'] + ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ + if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android', 'gonk', 'qt'): + CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] + CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_moz.build Thu Apr 27 13:38:18 2017 @@ -0,0 +1,17 @@ +$NetBSD: patch-mozilla_gfx_skia_moz.build,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/skia/moz.build.orig 2016-04-07 21:33:14.000000000 +0000 ++++ mozilla/gfx/skia/moz.build +@@ -684,6 +684,12 @@ if CONFIG['GNU_CXX']: + if CONFIG['CPU_ARCH'] == 'arm': + SOURCES['skia/src/opts/SkBlitRow_opts_arm.cpp'].flags += ['-fomit-frame-pointer'] + ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ + if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android', 'gonk', 'qt'): + CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] + CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_core_SkUtilsArm.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_core_SkUtilsArm.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_core_SkUtilsArm.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,45 @@ +$NetBSD: patch-mozilla_gfx_skia_skia_src_core_SkUtilsArm.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/skia/skia/src/core/SkUtilsArm.cpp.orig 2016-04-07 21:33:15.000000000 +0000 ++++ mozilla/gfx/skia/skia/src/core/SkUtilsArm.cpp +@@ -16,6 +16,10 @@ + #include + #include + ++#if defined(__NetBSD__) ++#include ++#endif ++ + // Set USE_ANDROID_NDK_CPU_FEATURES to use the Android NDK's + // cpu-features helper library to detect NEON at runtime. See + // http://crbug.com/164154 to see why this is needed in Chromium +@@ -47,6 +51,11 @@ + # endif + #endif + ++#if !defined(TEMP_FAILURE_RETRY) ++ // TEMP_FAILURE_RETRY is glibc specific ++# define TEMP_FAILURE_RETRY ++#endif ++ + // A function used to determine at runtime if the target CPU supports + // the ARM NEON instruction set. This implementation is Linux-specific. + static bool sk_cpu_arm_check_neon(void) { +@@ -82,6 +91,17 @@ static bool sk_cpu_arm_check_neon(void) + + result = (android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_NEON) != 0; + ++#elif defined(__NetBSD__) ++ ++ size_t len; ++ int flag; ++ len = sizeof(flag); ++ if (sysctlbyname("machdep.neon_present", &flag, &len, NULL, 0) == 0) { ++ result = flag != 0; ++ } else { ++ result = false; ++ } ++ + #else // USE_ANDROID_NDK_CPU_FEATURES + + // There is no user-accessible CPUID instruction on ARM that we can use. Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_SkBitmapProcState__opts__arm.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_SkBitmapProcState__opts__arm.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_SkBitmapProcState__opts__arm.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,28 @@ +$NetBSD: patch-mozilla_gfx_skia_skia_src_opts_SkBitmapProcState__opts__arm.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/skia/skia/src/opts/SkBitmapProcState_opts_arm.cpp.orig 2016-04-07 21:33:15.000000000 +0000 ++++ mozilla/gfx/skia/skia/src/opts/SkBitmapProcState_opts_arm.cpp +@@ -97,7 +97,11 @@ void SI8_D16_nofilter_DX_arm(const SkBit + "2: \n\t" + : [xx] "+r" (xx), [count8] "+r" (count8), [colors] "+r" (colors) + : [table] "r" (table), [srcAddr] "r" (srcAddr) ++#if defined(__NetBSD__) ++ : "memory", "cc", "r4", "r5", "r6", "r7", "r8", "r9", "r10" ++#else + : "memory", "cc", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11" ++#endif + ); + + for (i = (count & 7); i > 0; --i) { +@@ -181,7 +185,11 @@ void SI8_opaque_D32_nofilter_DX_arm(cons + "4: \n\t" // exit + : [xx] "+r" (xx), [count] "+r" (count), [colors] "+r" (colors) + : [table] "r" (table), [srcAddr] "r" (srcAddr) ++#if defined(__NetBSD__) ++ : "memory", "cc", "r4", "r5", "r6", "r7", "r8", "r9", "r10" ++#else + : "memory", "cc", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11" ++#endif + ); + } + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_memset.arm.S diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_memset.arm.S:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_skia_skia_src_opts_memset.arm.S Thu Apr 27 13:38:18 2017 @@ -0,0 +1,49 @@ +$NetBSD: patch-mozilla_gfx_skia_skia_src_opts_memset.arm.S,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/skia/skia/src/opts/memset.arm.S.orig 2016-04-07 21:33:15.000000000 +0000 ++++ mozilla/gfx/skia/skia/src/opts/memset.arm.S +@@ -13,6 +13,12 @@ + * to aid future maintenance. + */ + ++#if defined(__ARM_EABI__) && !defined(__ARM_DWARF_EH__) ++#define UNWIND ++#else ++#define UNWIND @ ++#endif ++ + .text + .align 4 + .syntax unified +@@ -30,7 +36,8 @@ + * + */ + arm_memset16: +- .fnstart ++ .cfi_startproc ++ UNWIND .fnstart + push {lr} + + /* if count is equal to zero then abort */ +@@ -51,10 +58,12 @@ arm_memset16: + + /* Now jump into the main loop below. */ + b .Lwork_32 +- .fnend ++ UNWIND .fnend ++ .cfi_endproc + + arm_memset32: +- .fnstart ++ .cfi_startproc ++ UNWIND .fnstart + push {lr} + + /* if count is equal to zero then abort */ +@@ -108,4 +117,5 @@ arm_memset32: + + .Lfinish: + pop {pc} +- .fnend ++ UNWIND .fnend ++ .cfi_endproc Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_thebes_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_thebes_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_thebes_moz.build Thu Apr 27 13:38:18 2017 @@ -0,0 +1,25 @@ +$NetBSD: patch-mozilla_gfx_thebes_moz.build,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/thebes/moz.build.orig 2016-04-07 21:33:15.000000000 +0000 ++++ mozilla/gfx/thebes/moz.build +@@ -293,6 +293,12 @@ CXXFLAGS += CONFIG['TK_CFLAGS'] + CFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] + CFLAGS += CONFIG['TK_CFLAGS'] + ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ ++if CONFIG['MOZ_NATIVE_GRAPHITE2']: ++ CXXFLAGS += CONFIG['MOZ_GRAPHITE2_CFLAGS'] ++ + if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('android', 'gonk', 'qt'): + CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS'] + +@@ -306,7 +312,5 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk + + LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES'] + +-DEFINES['GRAPHITE2_STATIC'] = True +- + if CONFIG['OS_ARCH'] == 'WINNT': + del DEFINES['UNICODE'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_moz.build Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_gfx_ycbcr_moz.build,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/ycbcr/moz.build.orig 2016-04-07 21:33:15.000000000 +0000 ++++ mozilla/gfx/ycbcr/moz.build +@@ -57,7 +57,7 @@ else: + + if CONFIG['CPU_ARCH'] == 'arm' and CONFIG['HAVE_ARM_NEON']: + SOURCES += [ +- 'yuv_row_arm.s', ++ 'yuv_row_arm.S', + ] + SOURCES += [ + 'yuv_convert_arm.cpp', Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_yuv__row__arm.S diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_yuv__row__arm.S:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_gfx_ycbcr_yuv__row__arm.S Thu Apr 27 13:38:18 2017 @@ -0,0 +1,317 @@ +$NetBSD: patch-mozilla_gfx_ycbcr_yuv__row__arm.S,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/gfx/ycbcr/yuv_row_arm.S.orig 2016-04-17 13:47:46.265685842 +0000 ++++ mozilla/gfx/ycbcr/yuv_row_arm.S +@@ -0,0 +1,312 @@ ++/* This Source Code Form is subject to the terms of the Mozilla Public ++ * 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/. */ ++ ++#if defined(__ARM_EABI__) && !defined(__ARM_DWARF_EH__) ++#define UNWIND ++#else ++#define UNWIND @ ++#endif ++ ++ .arch armv7-a ++ .fpu neon ++/* Allow to build on targets not supporting neon, and force the object file ++ * target to avoid bumping the final binary target */ ++ .object_arch armv4t ++ .text ++ .align ++ ++ .balign 64 ++YCbCr42xToRGB565_DITHER03_CONSTS_NEON: ++ .short -14240 ++ .short -14240+384 ++ .short 8672 ++ .short 8672+192 ++ .short -17696 ++ .short -17696+384 ++ .byte 102 ++ .byte 25 ++ .byte 52 ++ .byte 129 ++YCbCr42xToRGB565_DITHER12_CONSTS_NEON: ++ .short -14240+128 ++ .short -14240+256 ++ .short 8672+64 ++ .short 8672+128 ++ .short -17696+128 ++ .short -17696+256 ++ .byte 102 ++ .byte 25 ++ .byte 52 ++ .byte 129 ++YCbCr42xToRGB565_DITHER21_CONSTS_NEON: ++ .short -14240+256 ++ .short -14240+128 ++ .short 8672+128 ++ .short 8672+64 ++ .short -17696+256 ++ .short -17696+128 ++ .byte 102 ++ .byte 25 ++ .byte 52 ++ .byte 129 ++YCbCr42xToRGB565_DITHER30_CONSTS_NEON: ++ .short -14240+384 ++ .short -14240 ++ .short 8672+192 ++ .short 8672 ++ .short -17696+384 ++ .short -17696 ++ .byte 102 ++ .byte 25 ++ .byte 52 ++ .byte 129 ++ ++@ void ScaleYCbCr42xToRGB565_BilinearY_Row_NEON( ++@ yuv2rgb565_row_scale_bilinear_ctx *ctx, int dither); ++@ ++@ ctx = { ++@ uint16_t *rgb_row; /*r0*/ ++@ const uint8_t *y_row; /*r1*/ ++@ const uint8_t *u_row; /*r2*/ ++@ const uint8_t *v_row; /*r3*/ ++@ int y_yweight; /*r4*/ ++@ int y_pitch; /*r5*/ ++@ int width; /*r6*/ ++@ int source_x0_q16; /*r7*/ ++@ int source_dx_q16; /*r8*/ ++@ int source_uv_xoffs_q16; /*r9*/ ++@ }; ++ .global ScaleYCbCr42xToRGB565_BilinearY_Row_NEON ++ .type ScaleYCbCr42xToRGB565_BilinearY_Row_NEON, %function ++ .balign 64 ++ .cfi_startproc ++ UNWIND .fnstart ++ScaleYCbCr42xToRGB565_BilinearY_Row_NEON: ++ STMFD r13!,{r4-r9,r14} @ 8 words. ++ ADR r14,YCbCr42xToRGB565_DITHER03_CONSTS_NEON ++ VPUSH {Q4-Q7} @ 16 words. ++ ADD r14,r14,r1, LSL #4 @ Select the dither table to use ++ LDMIA r0, {r0-r9} ++ @ Set up image index registers. ++ ADD r12,r8, r8 ++ VMOV.I32 D16,#0 @ Q8 = < 2| 2| 0| 0>*source_dx_q16 ++ VDUP.32 D17,r12 ++ ADD r12,r12,r12 ++ VTRN.32 D16,D17 @ Q2 = < 2| 0| 2| 0>*source_dx_q16 ++ VDUP.32 D19,r12 @ Q9 = < 4| 4| ?| ?>*source_dx_q16 ++ ADD r12,r12,r12 ++ VDUP.32 Q0, r7 @ Q0 = < 1| 1| 1| 1>*source_x0_q16 ++ VADD.I32 D17,D17,D19 @ Q8 = < 6| 4| 2| 0>*source_dx_q16 ++ CMP r8, #0 @ If source_dx_q16 is negative... ++ VDUP.32 Q9, r12 @ Q9 = < 8| 8| 8| 8>*source_dx_q16 ++ ADDLT r7, r7, r8, LSL #4 @ Make r7 point to the end of the block ++ VADD.I32 Q0, Q0, Q8 @ Q0 = < 6| 4| 2| 0>*source_dx_q16+source_x0_q16 ++ SUBLT r7, r7, r8 @ (i.e., the lowest address we'll use) ++ VADD.I32 Q1, Q0, Q9 @ Q1 = <14|12|10| 8>*source_dx_q16+source_x0_q16 ++ VDUP.I32 Q9, r8 @ Q8 = < 1| 1| 1| 1>*source_dx_q16 ++ VADD.I32 Q2, Q0, Q9 @ Q2 = < 7| 5| 3| 1>*source_dx_q16+source_x0_q16 ++ VADD.I32 Q3, Q1, Q9 @ Q3 = <15|13|11| 9>*source_dx_q16+source_x0_q16 ++ VLD1.64 {D30,D31},[r14,:128] @ Load some constants ++ VMOV.I8 D28,#52 ++ VMOV.I8 D29,#129 ++ @ The basic idea here is to do aligned loads of a block of data and then ++ @ index into it using VTBL to extract the data from the source X ++ @ coordinate corresponding to each destination pixel. ++ @ This is significantly less code and significantly fewer cycles than doing ++ @ a series of single-lane loads, but it means that the X step between ++ @ pixels must be limited to 2.0 or less, otherwise we couldn't guarantee ++ @ that we could read 8 pixels from a single aligned 32-byte block of data. ++ @ Q0...Q3 contain the 16.16 fixed-point X coordinates of each pixel, ++ @ separated into even pixels and odd pixels to make extracting offsets and ++ @ weights easier. ++ @ We then pull out two bytes from the middle of each coordinate: the top ++ @ byte corresponds to the integer part of the X coordinate, and the bottom ++ @ byte corresponds to the weight to use for bilinear blending. ++ @ These are separated out into different registers with VTRN. ++ @ Then by subtracting the integer X coordinate of the first pixel in the ++ @ data block we loaded, we produce an index register suitable for use by ++ @ VTBL. ++s42xbily_neon_loop: ++ @ Load the Y' data. ++ MOV r12,r7, ASR #16 ++ VRSHRN.S32 D16,Q0, #8 ++ AND r12,r12,#~15 @ Read 16-byte aligned blocks ++ VDUP.I8 D20,r12 ++ ADD r12,r1, r12 @ r12 = y_row+(source_x&~7) ++ VRSHRN.S32 D17,Q1, #8 ++ PLD [r12,#64] ++ VLD1.64 {D8, D9, D10,D11},[r12,:128],r5 @ Load Y' top row ++ ADD r14,r7, r8, LSL #3 ++ VRSHRN.S32 D18,Q2, #8 ++ MOV r14,r14,ASR #16 ++ VRSHRN.S32 D19,Q3, #8 ++ AND r14,r14,#~15 @ Read 16-byte aligned blocks ++ VLD1.64 {D12,D13,D14,D15},[r12,:128] @ Load Y' bottom row ++ PLD [r12,#64] ++ VDUP.I8 D21,r14 ++ ADD r14,r1, r14 @ r14 = y_row+(source_x&~7) ++ VMOV.I8 Q13,#1 ++ PLD [r14,#64] ++ VTRN.8 Q8, Q9 @ Q8 = ++ @ Q9 = ++ VSUB.S8 Q9, Q9, Q10 @ Make offsets relative to the data we loaded. ++ @ First 8 Y' pixels ++ VTBL.8 D20,{D8, D9, D10,D11},D18 @ Index top row at source_x ++ VTBL.8 D24,{D12,D13,D14,D15},D18 @ Index bottom row at source_x ++ VADD.S8 Q13,Q9, Q13 @ Add 1 to source_x ++ VTBL.8 D22,{D8, D9, D10,D11},D26 @ Index top row at source_x+1 ++ VTBL.8 D26,{D12,D13,D14,D15},D26 @ Index bottom row at source_x+1 ++ @ Next 8 Y' pixels ++ VLD1.64 {D8, D9, D10,D11},[r14,:128],r5 @ Load Y' top row ++ VLD1.64 {D12,D13,D14,D15},[r14,:128] @ Load Y' bottom row ++ PLD [r14,#64] ++ VTBL.8 D21,{D8, D9, D10,D11},D19 @ Index top row at source_x ++ VTBL.8 D25,{D12,D13,D14,D15},D19 @ Index bottom row at source_x ++ VTBL.8 D23,{D8, D9, D10,D11},D27 @ Index top row at source_x+1 ++ VTBL.8 D27,{D12,D13,D14,D15},D27 @ Index bottom row at source_x+1 ++ @ Blend Y'. ++ VDUP.I16 Q9, r4 @ Load the y weights. ++ VSUBL.U8 Q4, D24,D20 @ Q5:Q4 = c-a ++ VSUBL.U8 Q5, D25,D21 ++ VSUBL.U8 Q6, D26,D22 @ Q7:Q6 = d-b ++ VSUBL.U8 Q7, D27,D23 ++ VMUL.S16 Q4, Q4, Q9 @ Q5:Q4 = (c-a)*yweight ++ VMUL.S16 Q5, Q5, Q9 ++ VMUL.S16 Q6, Q6, Q9 @ Q7:Q6 = (d-b)*yweight ++ VMUL.S16 Q7, Q7, Q9 ++ VMOVL.U8 Q12,D16 @ Promote the x weights to 16 bits. ++ VMOVL.U8 Q13,D17 @ Sadly, there's no VMULW. ++ VRSHRN.S16 D8, Q4, #8 @ Q4 = (c-a)*yweight+128>>8 ++ VRSHRN.S16 D9, Q5, #8 ++ VRSHRN.S16 D12,Q6, #8 @ Q6 = (d-b)*yweight+128>>8 ++ VRSHRN.S16 D13,Q7, #8 ++ VADD.I8 Q10,Q10,Q4 @ Q10 = a+((c-a)*yweight+128>>8) ++ VADD.I8 Q11,Q11,Q6 @ Q11 = b+((d-b)*yweight+128>>8) ++ VSUBL.U8 Q4, D22,D20 @ Q5:Q4 = b-a ++ VSUBL.U8 Q5, D23,D21 ++ VMUL.S16 Q4, Q4, Q12 @ Q5:Q4 = (b-a)*xweight ++ VMUL.S16 Q5, Q5, Q13 ++ VRSHRN.S16 D8, Q4, #8 @ Q4 = (b-a)*xweight+128>>8 ++ ADD r12,r7, r9 ++ VRSHRN.S16 D9, Q5, #8 ++ MOV r12,r12,ASR #17 ++ VADD.I8 Q8, Q10,Q4 @ Q8 = a+((b-a)*xweight+128>>8) ++ @ Start extracting the chroma x coordinates, and load Cb and Cr. ++ AND r12,r12,#~15 @ Read 16-byte aligned blocks ++ VDUP.I32 Q9, r9 @ Q9 = source_uv_xoffs_q16 x 4 ++ ADD r14,r2, r12 ++ VADD.I32 Q10,Q0, Q9 ++ VLD1.64 {D8, D9, D10,D11},[r14,:128] @ Load Cb ++ PLD [r14,#64] ++ VADD.I32 Q11,Q1, Q9 ++ ADD r14,r3, r12 ++ VADD.I32 Q12,Q2, Q9 ++ VLD1.64 {D12,D13,D14,D15},[r14,:128] @ Load Cr ++ PLD [r14,#64] ++ VADD.I32 Q13,Q3, Q9 ++ VRSHRN.S32 D20,Q10,#9 @ Q10 = ++ VRSHRN.S32 D21,Q11,#9 ++ VDUP.I8 Q9, r12 ++ VRSHRN.S32 D22,Q12,#9 @ Q11 = ++ VRSHRN.S32 D23,Q13,#9 ++ @ We don't actually need the x weights, but we get them for free. ++ @ Free ALU slot ++ VTRN.8 Q10,Q11 @ Q10 = ++ @ Free ALU slot @ Q11 = ++ VSUB.S8 Q11,Q11,Q9 @ Make offsets relative to the data we loaded. ++ VTBL.8 D18,{D8, D9, D10,D11},D22 @ Index Cb at source_x ++ VMOV.I8 D24,#74 ++ VTBL.8 D19,{D8, D9, D10,D11},D23 ++ VMOV.I8 D26,#102 ++ VTBL.8 D20,{D12,D13,D14,D15},D22 @ Index Cr at source_x ++ VMOV.I8 D27,#25 ++ VTBL.8 D21,{D12,D13,D14,D15},D23 ++ @ We now have Y' in Q8, Cb in Q9, and Cr in Q10 ++ @ We use VDUP to expand constants, because it's a permute instruction, so ++ @ it can dual issue on the A8. ++ SUBS r6, r6, #16 @ width -= 16 ++ VMULL.U8 Q4, D16,D24 @ Q5:Q4 = Y'*74 ++ VDUP.32 Q6, D30[1] @ Q7:Q6 = bias_G ++ VMULL.U8 Q5, D17,D24 ++ VDUP.32 Q7, D30[1] ++ VMLSL.U8 Q6, D18,D27 @ Q7:Q6 = -25*Cb+bias_G ++ VDUP.32 Q11,D30[0] @ Q12:Q11 = bias_R ++ VMLSL.U8 Q7, D19,D27 ++ VDUP.32 Q12,D30[0] ++ VMLAL.U8 Q11,D20,D26 @ Q12:Q11 = 102*Cr+bias_R ++ VDUP.32 Q8, D31[0] @ Q13:Q8 = bias_B ++ VMLAL.U8 Q12,D21,D26 ++ VDUP.32 Q13,D31[0] ++ VMLAL.U8 Q8, D18,D29 @ Q13:Q8 = 129*Cb+bias_B ++ VMLAL.U8 Q13,D19,D29 ++ VMLSL.U8 Q6, D20,D28 @ Q7:Q6 = -25*Cb-52*Cr+bias_G ++ VMLSL.U8 Q7, D21,D28 ++ VADD.S16 Q11,Q4, Q11 @ Q12:Q11 = 74*Y'+102*Cr+bias_R ++ VADD.S16 Q12,Q5, Q12 ++ VQADD.S16 Q8, Q4, Q8 @ Q13:Q8 = 74*Y'+129*Cr+bias_B ++ VQADD.S16 Q13,Q5, Q13 ++ VADD.S16 Q6, Q4, Q6 @ Q7:Q6 = 74*Y'-25*Cb-52*Cr+bias_G ++ VADD.S16 Q7, Q5, Q7 ++ @ Push each value to the top of its word and saturate it. ++ VQSHLU.S16 Q11,Q11,#2 ++ VQSHLU.S16 Q12,Q12,#2 ++ VQSHLU.S16 Q6, Q6, #2 ++ VQSHLU.S16 Q7, Q7, #2 ++ VQSHLU.S16 Q8, Q8, #2 ++ VQSHLU.S16 Q13,Q13,#2 ++ @ Merge G and B into R. ++ VSRI.U16 Q11,Q6, #5 ++ VSRI.U16 Q12,Q7, #5 ++ VSRI.U16 Q11,Q8, #11 ++ MOV r14,r8, LSL #4 ++ VSRI.U16 Q12,Q13,#11 ++ BLT s42xbily_neon_tail ++ VDUP.I32 Q13,r14 ++ @ Store the result. ++ VST1.16 {D22,D23,D24,D25},[r0]! ++ BEQ s42xbily_neon_done ++ @ Advance the x coordinates. ++ VADD.I32 Q0, Q0, Q13 ++ VADD.I32 Q1, Q1, Q13 ++ ADD r7, r14 ++ VADD.I32 Q2, Q2, Q13 ++ VADD.I32 Q3, Q3, Q13 ++ B s42xbily_neon_loop ++s42xbily_neon_tail: ++ @ We have between 1 and 15 pixels left to write. ++ @ -r6 == the number of pixels we need to skip writing. ++ @ Adjust r0 to point to the last one we need to write, because we're going ++ @ to write them in reverse order. ++ ADD r0, r0, r6, LSL #1 ++ MOV r14,#-2 ++ ADD r0, r0, #30 ++ @ Skip past the ones we don't need to write. ++ SUB PC, PC, r6, LSL #2 ++ ORR r0, r0, r0 ++ VST1.16 {D25[3]},[r0,:16],r14 ++ VST1.16 {D25[2]},[r0,:16],r14 ++ VST1.16 {D25[1]},[r0,:16],r14 ++ VST1.16 {D25[0]},[r0,:16],r14 ++ VST1.16 {D24[3]},[r0,:16],r14 ++ VST1.16 {D24[2]},[r0,:16],r14 ++ VST1.16 {D24[1]},[r0,:16],r14 ++ VST1.16 {D24[0]},[r0,:16],r14 ++ VST1.16 {D23[3]},[r0,:16],r14 ++ VST1.16 {D23[2]},[r0,:16],r14 ++ VST1.16 {D23[1]},[r0,:16],r14 ++ VST1.16 {D23[0]},[r0,:16],r14 ++ VST1.16 {D22[3]},[r0,:16],r14 ++ VST1.16 {D22[2]},[r0,:16],r14 ++ VST1.16 {D22[1]},[r0,:16],r14 ++ VST1.16 {D22[0]},[r0,:16] ++s42xbily_neon_done: ++ VPOP {Q4-Q7} @ 16 words. ++ LDMFD r13!,{r4-r9,PC} @ 8 words. ++ UNWIND .fnend ++ .cfi_endproc ++ .size ScaleYCbCr42xToRGB565_BilinearY_Row_NEON, .-ScaleYCbCr42xToRGB565_BilinearY_Row_NEON ++ ++#if defined(__ELF__)&&(defined(__linux__) || defined(__NetBSD__)) ++ .section .note.GNU-stack,"",%progbits ++#endif Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp Thu Apr 27 13:38:18 2017 @@ -0,0 +1,364 @@ +$NetBSD: patch-mozilla_image_decoders_nsJPEGDecoder.cpp,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/image/decoders/nsJPEGDecoder.cpp.orig 2016-04-07 21:33:16.000000000 +0000 ++++ mozilla/image/decoders/nsJPEGDecoder.cpp +@@ -23,13 +23,28 @@ + + extern "C" { + #include "iccjpeg.h" +-} + ++#ifdef JCS_EXTENSIONS + #if MOZ_BIG_ENDIAN + #define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_XRGB + #else + #define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_BGRX + #endif ++#else ++/* Colorspace conversion (copied from jpegint.h) */ ++struct jpeg_color_deconverter { ++ JMETHOD(void, start_pass, (j_decompress_ptr cinfo)); ++ JMETHOD(void, color_convert, (j_decompress_ptr cinfo, ++ JSAMPIMAGE input_buf, JDIMENSION input_row, ++ JSAMPARRAY output_buf, int num_rows)); ++}; ++ ++METHODDEF(void) ++ycc_rgb_convert_argb (j_decompress_ptr cinfo, ++ JSAMPIMAGE input_buf, JDIMENSION input_row, ++ JSAMPARRAY output_buf, int num_rows); ++#endif ++} + + static void cmyk_convert_rgb(JSAMPROW row, JDIMENSION width); + +@@ -339,6 +354,7 @@ nsJPEGDecoder::WriteInternal(const char* + case JCS_GRAYSCALE: + case JCS_RGB: + case JCS_YCbCr: ++#ifdef JCS_EXTENSIONS + // if we're not color managing we can decode directly to + // MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB + if (mCMSMode != eCMSMode_All) { +@@ -347,6 +363,9 @@ nsJPEGDecoder::WriteInternal(const char* + } else { + mInfo.out_color_space = JCS_RGB; + } ++#else ++ mInfo.out_color_space = JCS_RGB; ++#endif + break; + case JCS_CMYK: + case JCS_YCCK: +@@ -420,6 +439,16 @@ nsJPEGDecoder::WriteInternal(const char* + return; // I/O suspension + } + ++#ifndef JCS_EXTENSIONS ++ /* Force to use our YCbCr to Packed RGB converter when possible */ ++ if (!mTransform && (mCMSMode != eCMSMode_All) && ++ mInfo.jpeg_color_space == JCS_YCbCr && mInfo.out_color_space == JCS_RGB) { ++ /* Special case for the most common case: transform from YCbCr direct into packed ARGB */ ++ mInfo.out_color_components = 4; /* Packed ARGB pixels are always 4 bytes...*/ ++ mInfo.cconvert->color_convert = ycc_rgb_convert_argb; ++ } ++#endif ++ + // If this is a progressive JPEG ... + mState = mInfo.buffered_image ? + JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL; +@@ -601,7 +630,11 @@ nsJPEGDecoder::OutputScanlines(bool* sus + + MOZ_ASSERT(imageRow, "Should have a row buffer here"); + ++#ifdef JCS_EXTENSIONS + if (mInfo.out_color_space == MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB) { ++#else ++ if (mInfo.cconvert->color_convert == ycc_rgb_convert_argb) { ++#endif + // Special case: scanline will be directly converted into packed ARGB + if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) { + *suspend = true; // suspend +@@ -925,6 +958,282 @@ term_source (j_decompress_ptr jd) + } // namespace image + } // namespace mozilla + ++#ifndef JCS_EXTENSIONS ++/**************** YCbCr -> Cairo's RGB24/ARGB32 conversion: most common case **************/ ++ ++/* ++ * YCbCr is defined per CCIR 601-1, except that Cb and Cr are ++ * normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5. ++ * The conversion equations to be implemented are therefore ++ * R = Y + 1.40200 * Cr ++ * G = Y - 0.34414 * Cb - 0.71414 * Cr ++ * B = Y + 1.77200 * Cb ++ * where Cb and Cr represent the incoming values less CENTERJSAMPLE. ++ * (These numbers are derived from TIFF 6.0 section 21, dated 3-June-92.) ++ * ++ * To avoid floating-point arithmetic, we represent the fractional constants ++ * as integers scaled up by 2^16 (about 4 digits precision); we have to divide ++ * the products by 2^16, with appropriate rounding, to get the correct answer. ++ * Notice that Y, being an integral input, does not contribute any fraction ++ * so it need not participate in the rounding. ++ * ++ * For even more speed, we avoid doing any multiplications in the inner loop ++ * by precalculating the constants times Cb and Cr for all possible values. ++ * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table); ++ * for 12-bit samples it is still acceptable. It's not very reasonable for ++ * 16-bit samples, but if you want lossless storage you shouldn't be changing ++ * colorspace anyway. ++ * The Cr=>R and Cb=>B values can be rounded to integers in advance; the ++ * values for the G calculation are left scaled up, since we must add them ++ * together before rounding. ++ */ ++ ++#define SCALEBITS 16 /* speediest right-shift on some machines */ ++ ++/* Use static tables for color processing. */ ++/* Four tables, each 256 entries of 4 bytes totals 4K which is not bad... */ ++ ++const int Cr_r_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ ++ -0xb3, -0xb2, -0xb1, -0xaf, -0xae, -0xac, ++ -0xab, -0xaa, -0xa8, -0xa7, -0xa5, -0xa4, ++ -0xa3, -0xa1, -0xa0, -0x9e, -0x9d, -0x9c, ++ -0x9a, -0x99, -0x97, -0x96, -0x95, -0x93, ++ -0x92, -0x90, -0x8f, -0x8e, -0x8c, -0x8b, ++ -0x89, -0x88, -0x87, -0x85, -0x84, -0x82, ++ -0x81, -0x80, -0x7e, -0x7d, -0x7b, -0x7a, ++ -0x79, -0x77, -0x76, -0x74, -0x73, -0x72, ++ -0x70, -0x6f, -0x6d, -0x6c, -0x6b, -0x69, ++ -0x68, -0x66, -0x65, -0x64, -0x62, -0x61, ++ -0x5f, -0x5e, -0x5d, -0x5b, -0x5a, -0x58, ++ -0x57, -0x56, -0x54, -0x53, -0x51, -0x50, ++ -0x4f, -0x4d, -0x4c, -0x4a, -0x49, -0x48, ++ -0x46, -0x45, -0x43, -0x42, -0x40, -0x3f, ++ -0x3e, -0x3c, -0x3b, -0x39, -0x38, -0x37, ++ -0x35, -0x34, -0x32, -0x31, -0x30, -0x2e, ++ -0x2d, -0x2b, -0x2a, -0x29, -0x27, -0x26, ++ -0x24, -0x23, -0x22, -0x20, -0x1f, -0x1d, ++ -0x1c, -0x1b, -0x19, -0x18, -0x16, -0x15, ++ -0x14, -0x12, -0x11, -0x0f, -0x0e, -0x0d, ++ -0x0b, -0x0a, -0x08, -0x07, -0x06, -0x04, ++ -0x03, -0x01, 0x00, 0x01, 0x03, 0x04, ++ 0x06, 0x07, 0x08, 0x0a, 0x0b, 0x0d, ++ 0x0e, 0x0f, 0x11, 0x12, 0x14, 0x15, ++ 0x16, 0x18, 0x19, 0x1b, 0x1c, 0x1d, ++ 0x1f, 0x20, 0x22, 0x23, 0x24, 0x26, ++ 0x27, 0x29, 0x2a, 0x2b, 0x2d, 0x2e, ++ 0x30, 0x31, 0x32, 0x34, 0x35, 0x37, ++ 0x38, 0x39, 0x3b, 0x3c, 0x3e, 0x3f, ++ 0x40, 0x42, 0x43, 0x45, 0x46, 0x48, ++ 0x49, 0x4a, 0x4c, 0x4d, 0x4f, 0x50, ++ 0x51, 0x53, 0x54, 0x56, 0x57, 0x58, ++ 0x5a, 0x5b, 0x5d, 0x5e, 0x5f, 0x61, ++ 0x62, 0x64, 0x65, 0x66, 0x68, 0x69, ++ 0x6b, 0x6c, 0x6d, 0x6f, 0x70, 0x72, ++ 0x73, 0x74, 0x76, 0x77, 0x79, 0x7a, ++ 0x7b, 0x7d, 0x7e, 0x80, 0x81, 0x82, ++ 0x84, 0x85, 0x87, 0x88, 0x89, 0x8b, ++ 0x8c, 0x8e, 0x8f, 0x90, 0x92, 0x93, ++ 0x95, 0x96, 0x97, 0x99, 0x9a, 0x9c, ++ 0x9d, 0x9e, 0xa0, 0xa1, 0xa3, 0xa4, ++ 0xa5, 0xa7, 0xa8, 0xaa, 0xab, 0xac, ++ 0xae, 0xaf, 0xb1, 0xb2, ++ }; ++ ++const int Cb_b_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ ++ -0xe3, -0xe1, -0xdf, -0xde, -0xdc, -0xda, ++ -0xd8, -0xd6, -0xd5, -0xd3, -0xd1, -0xcf, ++ -0xce, -0xcc, -0xca, -0xc8, -0xc6, -0xc5, ++ -0xc3, -0xc1, -0xbf, -0xbe, -0xbc, -0xba, ++ -0xb8, -0xb7, -0xb5, -0xb3, -0xb1, -0xaf, ++ -0xae, -0xac, -0xaa, -0xa8, -0xa7, -0xa5, ++ -0xa3, -0xa1, -0x9f, -0x9e, -0x9c, -0x9a, ++ -0x98, -0x97, -0x95, -0x93, -0x91, -0x90, ++ -0x8e, -0x8c, -0x8a, -0x88, -0x87, -0x85, ++ -0x83, -0x81, -0x80, -0x7e, -0x7c, -0x7a, ++ -0x78, -0x77, -0x75, -0x73, -0x71, -0x70, ++ -0x6e, -0x6c, -0x6a, -0x69, -0x67, -0x65, ++ -0x63, -0x61, -0x60, -0x5e, -0x5c, -0x5a, ++ -0x59, -0x57, -0x55, -0x53, -0x52, -0x50, ++ -0x4e, -0x4c, -0x4a, -0x49, -0x47, -0x45, ++ -0x43, -0x42, -0x40, -0x3e, -0x3c, -0x3a, ++ -0x39, -0x37, -0x35, -0x33, -0x32, -0x30, ++ -0x2e, -0x2c, -0x2b, -0x29, -0x27, -0x25, ++ -0x23, -0x22, -0x20, -0x1e, -0x1c, -0x1b, ++ -0x19, -0x17, -0x15, -0x13, -0x12, -0x10, ++ -0x0e, -0x0c, -0x0b, -0x09, -0x07, -0x05, ++ -0x04, -0x02, 0x00, 0x02, 0x04, 0x05, ++ 0x07, 0x09, 0x0b, 0x0c, 0x0e, 0x10, ++ 0x12, 0x13, 0x15, 0x17, 0x19, 0x1b, ++ 0x1c, 0x1e, 0x20, 0x22, 0x23, 0x25, ++ 0x27, 0x29, 0x2b, 0x2c, 0x2e, 0x30, ++ 0x32, 0x33, 0x35, 0x37, 0x39, 0x3a, ++ 0x3c, 0x3e, 0x40, 0x42, 0x43, 0x45, ++ 0x47, 0x49, 0x4a, 0x4c, 0x4e, 0x50, ++ 0x52, 0x53, 0x55, 0x57, 0x59, 0x5a, ++ 0x5c, 0x5e, 0x60, 0x61, 0x63, 0x65, ++ 0x67, 0x69, 0x6a, 0x6c, 0x6e, 0x70, ++ 0x71, 0x73, 0x75, 0x77, 0x78, 0x7a, ++ 0x7c, 0x7e, 0x80, 0x81, 0x83, 0x85, ++ 0x87, 0x88, 0x8a, 0x8c, 0x8e, 0x90, ++ 0x91, 0x93, 0x95, 0x97, 0x98, 0x9a, ++ 0x9c, 0x9e, 0x9f, 0xa1, 0xa3, 0xa5, ++ 0xa7, 0xa8, 0xaa, 0xac, 0xae, 0xaf, ++ 0xb1, 0xb3, 0xb5, 0xb7, 0xb8, 0xba, ++ 0xbc, 0xbe, 0xbf, 0xc1, 0xc3, 0xc5, ++ 0xc6, 0xc8, 0xca, 0xcc, 0xce, 0xcf, ++ 0xd1, 0xd3, 0xd5, 0xd6, 0xd8, 0xda, ++ 0xdc, 0xde, 0xdf, 0xe1, ++ }; ++ ++const int Cr_g_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ ++ 0x5b6900, 0x5ab22e, 0x59fb5c, 0x59448a, 0x588db8, 0x57d6e6, ++ 0x572014, 0x566942, 0x55b270, 0x54fb9e, 0x5444cc, 0x538dfa, ++ 0x52d728, 0x522056, 0x516984, 0x50b2b2, 0x4ffbe0, 0x4f450e, ++ 0x4e8e3c, 0x4dd76a, 0x4d2098, 0x4c69c6, 0x4bb2f4, 0x4afc22, ++ 0x4a4550, 0x498e7e, 0x48d7ac, 0x4820da, 0x476a08, 0x46b336, ++ 0x45fc64, 0x454592, 0x448ec0, 0x43d7ee, 0x43211c, 0x426a4a, ++ 0x41b378, 0x40fca6, 0x4045d4, 0x3f8f02, 0x3ed830, 0x3e215e, ++ 0x3d6a8c, 0x3cb3ba, 0x3bfce8, 0x3b4616, 0x3a8f44, 0x39d872, ++ 0x3921a0, 0x386ace, 0x37b3fc, 0x36fd2a, 0x364658, 0x358f86, ++ 0x34d8b4, 0x3421e2, 0x336b10, 0x32b43e, 0x31fd6c, 0x31469a, ++ 0x308fc8, 0x2fd8f6, 0x2f2224, 0x2e6b52, 0x2db480, 0x2cfdae, ++ 0x2c46dc, 0x2b900a, 0x2ad938, 0x2a2266, 0x296b94, 0x28b4c2, ++ 0x27fdf0, 0x27471e, 0x26904c, 0x25d97a, 0x2522a8, 0x246bd6, ++ 0x23b504, 0x22fe32, 0x224760, 0x21908e, 0x20d9bc, 0x2022ea, ++ 0x1f6c18, 0x1eb546, 0x1dfe74, 0x1d47a2, 0x1c90d0, 0x1bd9fe, ++ 0x1b232c, 0x1a6c5a, 0x19b588, 0x18feb6, 0x1847e4, 0x179112, ++ 0x16da40, 0x16236e, 0x156c9c, 0x14b5ca, 0x13fef8, 0x134826, ++ 0x129154, 0x11da82, 0x1123b0, 0x106cde, 0x0fb60c, 0x0eff3a, ++ 0x0e4868, 0x0d9196, 0x0cdac4, 0x0c23f2, 0x0b6d20, 0x0ab64e, ++ 0x09ff7c, 0x0948aa, 0x0891d8, 0x07db06, 0x072434, 0x066d62, ++ 0x05b690, 0x04ffbe, 0x0448ec, 0x03921a, 0x02db48, 0x022476, ++ 0x016da4, 0x00b6d2, 0x000000, -0x00b6d2, -0x016da4, -0x022476, ++ -0x02db48, -0x03921a, -0x0448ec, -0x04ffbe, -0x05b690, -0x066d62, ++ -0x072434, -0x07db06, -0x0891d8, -0x0948aa, -0x09ff7c, -0x0ab64e, ++ -0x0b6d20, -0x0c23f2, -0x0cdac4, -0x0d9196, -0x0e4868, -0x0eff3a, ++ -0x0fb60c, -0x106cde, -0x1123b0, -0x11da82, -0x129154, -0x134826, ++ -0x13fef8, -0x14b5ca, -0x156c9c, -0x16236e, -0x16da40, -0x179112, ++ -0x1847e4, -0x18feb6, -0x19b588, -0x1a6c5a, -0x1b232c, -0x1bd9fe, ++ -0x1c90d0, -0x1d47a2, -0x1dfe74, -0x1eb546, -0x1f6c18, -0x2022ea, ++ -0x20d9bc, -0x21908e, -0x224760, -0x22fe32, -0x23b504, -0x246bd6, ++ -0x2522a8, -0x25d97a, -0x26904c, -0x27471e, -0x27fdf0, -0x28b4c2, ++ -0x296b94, -0x2a2266, -0x2ad938, -0x2b900a, -0x2c46dc, -0x2cfdae, ++ -0x2db480, -0x2e6b52, -0x2f2224, -0x2fd8f6, -0x308fc8, -0x31469a, ++ -0x31fd6c, -0x32b43e, -0x336b10, -0x3421e2, -0x34d8b4, -0x358f86, ++ -0x364658, -0x36fd2a, -0x37b3fc, -0x386ace, -0x3921a0, -0x39d872, ++ -0x3a8f44, -0x3b4616, -0x3bfce8, -0x3cb3ba, -0x3d6a8c, -0x3e215e, ++ -0x3ed830, -0x3f8f02, -0x4045d4, -0x40fca6, -0x41b378, -0x426a4a, ++ -0x43211c, -0x43d7ee, -0x448ec0, -0x454592, -0x45fc64, -0x46b336, ++ -0x476a08, -0x4820da, -0x48d7ac, -0x498e7e, -0x4a4550, -0x4afc22, ++ -0x4bb2f4, -0x4c69c6, -0x4d2098, -0x4dd76a, -0x4e8e3c, -0x4f450e, ++ -0x4ffbe0, -0x50b2b2, -0x516984, -0x522056, -0x52d728, -0x538dfa, ++ -0x5444cc, -0x54fb9e, -0x55b270, -0x566942, -0x572014, -0x57d6e6, ++ -0x588db8, -0x59448a, -0x59fb5c, -0x5ab22e, ++ }; ++ ++const int Cb_g_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ ++ 0x2c8d00, 0x2c34e6, 0x2bdccc, 0x2b84b2, 0x2b2c98, 0x2ad47e, ++ 0x2a7c64, 0x2a244a, 0x29cc30, 0x297416, 0x291bfc, 0x28c3e2, ++ 0x286bc8, 0x2813ae, 0x27bb94, 0x27637a, 0x270b60, 0x26b346, ++ 0x265b2c, 0x260312, 0x25aaf8, 0x2552de, 0x24fac4, 0x24a2aa, ++ 0x244a90, 0x23f276, 0x239a5c, 0x234242, 0x22ea28, 0x22920e, ++ 0x2239f4, 0x21e1da, 0x2189c0, 0x2131a6, 0x20d98c, 0x208172, ++ 0x202958, 0x1fd13e, 0x1f7924, 0x1f210a, 0x1ec8f0, 0x1e70d6, ++ 0x1e18bc, 0x1dc0a2, 0x1d6888, 0x1d106e, 0x1cb854, 0x1c603a, ++ 0x1c0820, 0x1bb006, 0x1b57ec, 0x1affd2, 0x1aa7b8, 0x1a4f9e, ++ 0x19f784, 0x199f6a, 0x194750, 0x18ef36, 0x18971c, 0x183f02, ++ 0x17e6e8, 0x178ece, 0x1736b4, 0x16de9a, 0x168680, 0x162e66, ++ 0x15d64c, 0x157e32, 0x152618, 0x14cdfe, 0x1475e4, 0x141dca, ++ 0x13c5b0, 0x136d96, 0x13157c, 0x12bd62, 0x126548, 0x120d2e, ++ 0x11b514, 0x115cfa, 0x1104e0, 0x10acc6, 0x1054ac, 0x0ffc92, ++ 0x0fa478, 0x0f4c5e, 0x0ef444, 0x0e9c2a, 0x0e4410, 0x0debf6, ++ 0x0d93dc, 0x0d3bc2, 0x0ce3a8, 0x0c8b8e, 0x0c3374, 0x0bdb5a, ++ 0x0b8340, 0x0b2b26, 0x0ad30c, 0x0a7af2, 0x0a22d8, 0x09cabe, ++ 0x0972a4, 0x091a8a, 0x08c270, 0x086a56, 0x08123c, 0x07ba22, ++ 0x076208, 0x0709ee, 0x06b1d4, 0x0659ba, 0x0601a0, 0x05a986, ++ 0x05516c, 0x04f952, 0x04a138, 0x04491e, 0x03f104, 0x0398ea, ++ 0x0340d0, 0x02e8b6, 0x02909c, 0x023882, 0x01e068, 0x01884e, ++ 0x013034, 0x00d81a, 0x008000, 0x0027e6, -0x003034, -0x00884e, ++ -0x00e068, -0x013882, -0x01909c, -0x01e8b6, -0x0240d0, -0x0298ea, ++ -0x02f104, -0x03491e, -0x03a138, -0x03f952, -0x04516c, -0x04a986, ++ -0x0501a0, -0x0559ba, -0x05b1d4, -0x0609ee, -0x066208, -0x06ba22, ++ -0x07123c, -0x076a56, -0x07c270, -0x081a8a, -0x0872a4, -0x08cabe, ++ -0x0922d8, -0x097af2, -0x09d30c, -0x0a2b26, -0x0a8340, -0x0adb5a, ++ -0x0b3374, -0x0b8b8e, -0x0be3a8, -0x0c3bc2, -0x0c93dc, -0x0cebf6, ++ -0x0d4410, -0x0d9c2a, -0x0df444, -0x0e4c5e, -0x0ea478, -0x0efc92, ++ -0x0f54ac, -0x0facc6, -0x1004e0, -0x105cfa, -0x10b514, -0x110d2e, ++ -0x116548, -0x11bd62, -0x12157c, -0x126d96, -0x12c5b0, -0x131dca, ++ -0x1375e4, -0x13cdfe, -0x142618, -0x147e32, -0x14d64c, -0x152e66, ++ -0x158680, -0x15de9a, -0x1636b4, -0x168ece, -0x16e6e8, -0x173f02, ++ -0x17971c, -0x17ef36, -0x184750, -0x189f6a, -0x18f784, -0x194f9e, ++ -0x19a7b8, -0x19ffd2, -0x1a57ec, -0x1ab006, -0x1b0820, -0x1b603a, ++ -0x1bb854, -0x1c106e, -0x1c6888, -0x1cc0a2, -0x1d18bc, -0x1d70d6, ++ -0x1dc8f0, -0x1e210a, -0x1e7924, -0x1ed13e, -0x1f2958, -0x1f8172, ++ -0x1fd98c, -0x2031a6, -0x2089c0, -0x20e1da, -0x2139f4, -0x21920e, ++ -0x21ea28, -0x224242, -0x229a5c, -0x22f276, -0x234a90, -0x23a2aa, ++ -0x23fac4, -0x2452de, -0x24aaf8, -0x250312, -0x255b2c, -0x25b346, ++ -0x260b60, -0x26637a, -0x26bb94, -0x2713ae, -0x276bc8, -0x27c3e2, ++ -0x281bfc, -0x287416, -0x28cc30, -0x29244a, -0x297c64, -0x29d47e, ++ -0x2a2c98, -0x2a84b2, -0x2adccc, -0x2b34e6, ++ }; ++ ++ ++/* We assume that right shift corresponds to signed division by 2 with ++ * rounding towards minus infinity. This is correct for typical "arithmetic ++ * shift" instructions that shift in copies of the sign bit. But some ++ * C compilers implement >> with an unsigned shift. For these machines you ++ * must define RIGHT_SHIFT_IS_UNSIGNED. ++ * RIGHT_SHIFT provides a proper signed right shift of an INT32 quantity. ++ * It is only applied with constant shift counts. SHIFT_TEMPS must be ++ * included in the variables of any routine using RIGHT_SHIFT. ++ */ ++ ++#ifdef RIGHT_SHIFT_IS_UNSIGNED ++#define SHIFT_TEMPS INT32 shift_temp; ++#define RIGHT_SHIFT(x,shft) \ ++ ((shift_temp = (x)) < 0 ? \ ++ (shift_temp >> (shft)) | ((~((INT32) 0)) << (32-(shft))) : \ ++ (shift_temp >> (shft))) ++#else ++#define SHIFT_TEMPS ++#define RIGHT_SHIFT(x,shft) ((x) >> (shft)) ++#endif ++ ++ ++METHODDEF(void) ++ycc_rgb_convert_argb (j_decompress_ptr cinfo, ++ JSAMPIMAGE input_buf, JDIMENSION input_row, ++ JSAMPARRAY output_buf, int num_rows) ++{ ++ JDIMENSION num_cols = cinfo->output_width; ++ JSAMPLE * range_limit = cinfo->sample_range_limit; ++ ++ SHIFT_TEMPS ++ ++ /* This is used if we don't have SSE2 */ ++ ++ while (--num_rows >= 0) { ++ JSAMPROW inptr0 = input_buf[0][input_row]; ++ JSAMPROW inptr1 = input_buf[1][input_row]; ++ JSAMPROW inptr2 = input_buf[2][input_row]; ++ input_row++; ++ uint32_t *outptr = (uint32_t *) *output_buf++; ++ for (JDIMENSION col = 0; col < num_cols; col++) { ++ int y = GETJSAMPLE(inptr0[col]); ++ int cb = GETJSAMPLE(inptr1[col]); ++ int cr = GETJSAMPLE(inptr2[col]); ++ JSAMPLE * range_limit_y = range_limit + y; ++ /* Range-limiting is essential due to noise introduced by DCT losses. */ ++ outptr[col] = 0xFF000000 | ++ ( range_limit_y[Cr_r_tab[cr]] << 16 ) | ++ ( range_limit_y[((int) RIGHT_SHIFT(Cb_g_tab[cb] + Cr_g_tab[cr], SCALEBITS))] << 8 ) | ++ ( range_limit_y[Cb_b_tab[cb]] ); ++ } ++ } ++} ++#endif ++ ++ + ///*************** Inverted CMYK -> RGB conversion ************************* + /// Input is (Inverted) CMYK stored as 4 bytes per pixel. + /// Output is RGB stored as 3 bytes per pixel. Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_intl_hyphenation_glue_hnjalloc.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_intl_hyphenation_glue_hnjalloc.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_intl_hyphenation_glue_hnjalloc.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_intl_hyphenation_glue_hnjalloc.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/intl/hyphenation/glue/hnjalloc.h.orig 2016-04-07 21:33:16.000000000 +0000 ++++ mozilla/intl/hyphenation/glue/hnjalloc.h +@@ -24,6 +24,9 @@ + */ + + #include /* ensure stdio.h is loaded before our macros */ ++#ifdef __sun ++#include ++#endif + + #undef FILE + #define FILE hnjFile Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_atomicops.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_atomicops.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_atomicops.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_atomicops.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/atomicops.h.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/atomicops.h +@@ -45,7 +45,7 @@ typedef int64_t Atomic64; + + // Use AtomicWord for a machine-sized pointer. It will use the Atomic32 or + // Atomic64 routines below, depending on your architecture. +-#ifdef OS_OPENBSD ++#if defined(OS_OPENBSD) || (defined(OS_NETBSD) && defined(ARCH_CPU_ARM_FAMILY)) + #ifdef ARCH_CPU_64_BITS + typedef Atomic64 AtomicWord; + #else Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_file__util__posix.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_file__util__posix.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_file__util__posix.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,21 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_file__util__posix.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/file_util_posix.cc.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/file_util_posix.cc +@@ -266,7 +266,7 @@ bool SetCurrentDirectory(const FilePath& + return !ret; + } + +-#if !defined(OS_MACOSX) ++#if !defined(MOZ_WIDGET_COCOA) + bool GetTempDir(FilePath* path) { + const char* tmp = getenv("TMPDIR"); + if (tmp) +@@ -330,6 +330,6 @@ bool CopyFile(const FilePath& from_path, + + return result; + } +-#endif // !defined(OS_MACOSX) ++#endif // !defined(MOZ_WIDGET_COCOA) + + } // namespace file_util Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__loop.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__loop.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__loop.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,38 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_message__loop.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/message_loop.cc.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/message_loop.cc +@@ -13,20 +13,18 @@ + #include "base/string_util.h" + #include "base/thread_local.h" + +-#if defined(OS_MACOSX) ++#if defined(MOZ_WIDGET_COCOA) + #include "base/message_pump_mac.h" + #endif + #if defined(OS_POSIX) + #include "base/message_pump_libevent.h" + #endif +-#if defined(OS_LINUX) || defined(OS_BSD) + #if defined(MOZ_WIDGET_GTK) + #include "base/message_pump_glib.h" + #endif + #ifdef MOZ_WIDGET_QT + #include "base/message_pump_qt.h" + #endif +-#endif + #ifdef ANDROID + #include "base/message_pump_android.h" + #endif +@@ -143,9 +141,9 @@ MessageLoop::MessageLoop(Type type) + } + #elif defined(OS_POSIX) + if (type_ == TYPE_UI) { +-#if defined(OS_MACOSX) ++#if defined(MOZ_WIDGET_COCOA) + pump_ = base::MessagePumpMac::Create(); +-#elif defined(OS_LINUX) || defined(OS_BSD) ++#elif defined(MOZ_WIDGET_GTK) || defined(MOZ_WIDGET_QT) + pump_ = new base::MessagePumpForUI(); + #endif // OS_LINUX + } else if (type_ == TYPE_IO) { Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,20 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/message_pump_libevent.cc.orig 2017-03-05 20:58:25.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/message_pump_libevent.cc +@@ -20,6 +20,7 @@ + + // This macro checks that the _EVENT_SIZEOF_* constants defined in + // ipc/chromiume/src/third_party//event2/event-config.h are correct. ++#if 0 + #if defined(_EVENT_SIZEOF_SHORT) + #define CHECK_EVENT_SIZEOF(TYPE, type) \ + static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \ +@@ -38,6 +39,7 @@ CHECK_EVENT_SIZEOF(PTHREAD_T, pthread_t) + CHECK_EVENT_SIZEOF(SHORT, short); + CHECK_EVENT_SIZEOF(SIZE_T, size_t); + CHECK_EVENT_SIZEOF(VOID_P, void*); ++#endif + + // Lifecycle of struct event + // Libevent uses two main data structures: Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_platform__thread.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/platform_thread.h.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/platform_thread.h +@@ -25,6 +25,9 @@ typedef pthread_t PlatformThreadHandle; + #if defined(OS_LINUX) || defined(OS_OPENBSD) || defined(__GLIBC__) + #include + typedef pid_t PlatformThreadId; ++#elif defined(OS_SOLARIS) ++#include ++typedef lwpid_t PlatformThreadId; + #elif defined(OS_BSD) + #include + typedef lwpid_t PlatformThreadId; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,87 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/platform_thread_posix.cc.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/platform_thread_posix.cc +@@ -9,22 +9,24 @@ + + #if defined(OS_MACOSX) + #include ++#include ++#include + #elif defined(OS_NETBSD) ++_Pragma("GCC visibility push(default)") + #include ++_Pragma("GCC visibility pop") + #elif defined(OS_LINUX) + #include + #include + #endif + +-#if !defined(OS_MACOSX) + #include +-#endif + + #if defined(OS_BSD) && !defined(OS_NETBSD) && !defined(__GLIBC__) + #include + #endif + +-#if defined(OS_MACOSX) ++#if defined(MOZ_WIDGET_COCOA) + namespace base { + void InitThreading(); + } // namespace +@@ -82,7 +84,7 @@ void PlatformThread::Sleep(int duration_ + sleep_time = remaining; + } + +-#ifndef OS_MACOSX ++#ifndef MOZ_WIDGET_COCOA + // Mac is implemented in platform_thread_mac.mm. + + // static +@@ -105,19 +107,41 @@ void PlatformThread::SetName(const char* + pthread_setname_np(pthread_self(), "%s", (void *)name); + #elif defined(OS_BSD) && !defined(__GLIBC__) + pthread_set_name_np(pthread_self(), name); +-#else ++#elif defined(OS_MACOSX) ++ // Copied from platform_thread_mac.mm ++ ++ // pthread_setname_np is only available in 10.6 or later, so test ++ // for it at runtime. ++ int (*dynamic_pthread_setname_np)(const char*); ++ *reinterpret_cast(&dynamic_pthread_setname_np) = ++ dlsym(RTLD_DEFAULT, "pthread_setname_np"); ++ if (!dynamic_pthread_setname_np) ++ return; ++ ++ // Mac OS X does not expose the length limit of the name, so ++ // hardcode it. ++ const int kMaxNameLength = 63; ++ std::string shortened_name = std::string(name).substr(0, kMaxNameLength); ++ // pthread_setname() fails (harmlessly) in the sandbox, ignore when it does. ++ // See http://crbug.com/47058 ++ ++ // The name parameter is copied thus it's safe to release it after calling. ++ // Checked against the bionic implementation in bionic/libc/bionic/pthread.c ++ dynamic_pthread_setname_np(shortened_name.c_str()); ++#elif !defined(OS_SOLARIS) ++ prctl(PR_SET_NAME, reinterpret_cast(name), 0, 0, 0); + #endif + } +-#endif // !OS_MACOSX ++#endif // !MOZ_WIDGET_COCOA + + namespace { + + bool CreateThread(size_t stack_size, bool joinable, + PlatformThread::Delegate* delegate, + PlatformThreadHandle* thread_handle) { +-#if defined(OS_MACOSX) ++#if defined(MOZ_WIDGET_COCOA) + base::InitThreading(); +-#endif // OS_MACOSX ++#endif // MOZ_WIDGET_COCOA + + bool success = false; + pthread_attr_t attributes; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_process__util.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/process_util.h.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/process_util.h +@@ -41,6 +41,9 @@ + typedef PROCESSENTRY32 ProcessEntry; + typedef IO_COUNTERS IoCounters; + #elif defined(OS_POSIX) ++#ifndef NAME_MAX ++#define NAME_MAX _POSIX_NAME_MAX ++#endif + // TODO(port): we should not rely on a Win32 structure. + struct ProcessEntry { + int pid; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,15 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/process_util_bsd.cc.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/process_util_bsd.cc +@@ -10,6 +10,10 @@ + #include + #include + ++#if defined(OS_BSD) ++#include ++#endif ++ + #include + + #include "base/eintr_wrapper.h" Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__posix.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__posix.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_process__util__posix.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_process__util__posix.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/process_util_posix.cc.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/process_util_posix.cc +@@ -116,7 +116,7 @@ void CloseSuperfluousFds(const base::Inj + #if defined(ANDROID) + static const rlim_t kSystemDefaultMaxFds = 1024; + static const char kFDDir[] = "/proc/self/fd"; +-#elif defined(OS_LINUX) ++#elif defined(OS_LINUX) || defined(OS_SOLARIS) + static const rlim_t kSystemDefaultMaxFds = 8192; + static const char kFDDir[] = "/proc/self/fd"; + #elif defined(OS_MACOSX) +@@ -208,7 +208,7 @@ void CloseSuperfluousFds(const base::Inj + // TODO(agl): Remove this function. It's fundamentally broken for multithreaded + // apps. + void SetAllFDsToCloseOnExec() { +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_SOLARIS) + const char fd_dir[] = "/proc/self/fd"; + #elif defined(OS_MACOSX) || defined(OS_BSD) + const char fd_dir[] = "/dev/fd"; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,42 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/scoped_nsautorelease_pool.h.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/scoped_nsautorelease_pool.h +@@ -7,13 +7,13 @@ + + #include "base/basictypes.h" + +-#if defined(OS_MACOSX) ++#if defined(MOZ_WIDGET_COCOA) + #if defined(__OBJC__) + @class NSAutoreleasePool; + #else // __OBJC__ + class NSAutoreleasePool; + #endif // __OBJC__ +-#endif // OS_MACOSX ++#endif // MOZ_WIDGET_COCOA + + namespace base { + +@@ -27,10 +27,10 @@ namespace base { + // ugly #ifdefs. + class ScopedNSAutoreleasePool { + public: +-#if !defined(OS_MACOSX) ++#if !defined(MOZ_WIDGET_COCOA) + ScopedNSAutoreleasePool() {} + void Recycle() { } +-#else // OS_MACOSX ++#else // MOZ_WIDGET_COCOA + ScopedNSAutoreleasePool(); + ~ScopedNSAutoreleasePool(); + +@@ -41,7 +41,7 @@ class ScopedNSAutoreleasePool { + void Recycle(); + private: + NSAutoreleasePool* autorelease_pool_; +-#endif // OS_MACOSX ++#endif // MOZ_WIDGET_COCOA + + private: + DISALLOW_COPY_AND_ASSIGN(ScopedNSAutoreleasePool); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_sys__info__posix.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_sys__info__posix.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_sys__info__posix.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,16 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_sys__info__posix.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/sys_info_posix.cc.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/sys_info_posix.cc +@@ -119,7 +119,11 @@ std::wstring SysInfo::GetEnvVar(const wc + + // static + std::string SysInfo::OperatingSystemName() { ++#ifdef OS_SOLARIS ++ struct utsname info; ++#else + utsname info; ++#endif + if (uname(&info) < 0) { + NOTREACHED(); + return ""; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_time__posix.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_time__posix.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_base_time__posix.cc Thu Apr 27 13:38:18 2017 @@ -0,0 +1,15 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_time__posix.cc,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/time_posix.cc.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/base/time_posix.cc +@@ -65,8 +65,10 @@ Time Time::FromExploded(bool is_local, c + timestruct.tm_wday = exploded.day_of_week; // mktime/timegm ignore this + timestruct.tm_yday = 0; // mktime/timegm ignore this + timestruct.tm_isdst = -1; // attempt to figure it out ++#ifndef OS_SOLARIS + timestruct.tm_gmtoff = 0; // not a POSIX field, so mktime/timegm ignore + timestruct.tm_zone = NULL; // not a POSIX field, so mktime/timegm ignore ++#endif + + time_t seconds; + #ifdef ANDROID Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_build_build__config.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_build_build__config.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_build_build__config.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_build_build__config.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/build/build_config.h.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/build/build_config.h +@@ -30,6 +30,8 @@ + #define OS_NETBSD 1 + #elif defined(__OpenBSD__) + #define OS_OPENBSD 1 ++#elif defined(__sun) ++#define OS_SOLARIS 1 + #elif defined(_WIN32) + #define OS_WIN 1 + #else +@@ -45,7 +47,7 @@ + + // For access to standard POSIX features, use OS_POSIX instead of a more + // specific macro. +-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) ++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) + #define OS_POSIX 1 + #endif + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h Thu Apr 27 13:38:18 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h,v 1.1 2017/04/27 13:38:18 ryoon Exp $ + +--- mozilla/ipc/chromium/src/chrome/common/transport_dib.h.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/chromium/src/chrome/common/transport_dib.h +@@ -66,7 +66,7 @@ class TransportDIB { + typedef base::SharedMemoryHandle Handle; + // On Mac, the inode number of the backing file is used as an id. + typedef base::SharedMemoryId Id; +-#elif defined(OS_LINUX) ++#elif defined(OS_LINUX) || defined(OS_SOLARIS) + typedef int Handle; // These two ints are SysV IPC shared memory keys + typedef int Id; + #endif Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_GeckoChildProcessHost.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_GeckoChildProcessHost.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_GeckoChildProcessHost.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,45 @@ +$NetBSD: patch-mozilla_ipc_glue_GeckoChildProcessHost.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/ipc/glue/GeckoChildProcessHost.cpp.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/glue/GeckoChildProcessHost.cpp +@@ -4,7 +4,13 @@ + * 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/. */ + ++#if defined(__NetBSD__) ++_Pragma("GCC visibility push(default)") ++#endif + #include "GeckoChildProcessHost.h" ++#if defined(__NetBSD__) ++_Pragma("GCC visibility pop") ++#endif + + #include "base/command_line.h" + #include "base/string_util.h" +@@ -633,7 +639,7 @@ GeckoChildProcessHost::PerformAsyncLaunc + // and passing wstrings from one config to the other is unsafe. So + // we split the logic here. + +-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD) || defined(OS_SOLARIS) + base::environment_map newEnvVars; + ChildPrivileges privs = mPrivileges; + if (privs == base::PRIVILEGES_DEFAULT) { +@@ -759,7 +765,7 @@ GeckoChildProcessHost::PerformAsyncLaunc + childArgv.push_back(pidstring); + + #if defined(MOZ_CRASHREPORTER) +-# if defined(OS_LINUX) || defined(OS_BSD) ++# if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) + int childCrashFd, childCrashRemapFd; + if (!CrashReporter::CreateNotificationPipeForChild( + &childCrashFd, &childCrashRemapFd)) +@@ -792,7 +798,7 @@ GeckoChildProcessHost::PerformAsyncLaunc + childArgv.push_back(childProcessType); + + base::LaunchApp(childArgv, mFileMap, +-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD) || defined(OS_SOLARIS) + newEnvVars, privs, + #endif + false, &process, arch); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_StringUtil.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_StringUtil.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_StringUtil.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,21 @@ +$NetBSD: patch-mozilla_ipc_glue_StringUtil.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/ipc/glue/StringUtil.cpp.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/glue/StringUtil.cpp +@@ -65,14 +65,14 @@ namespace base { + // converters, and implementing the one that doesn't exist for OS X + // and Windows. + +-#if !defined(OS_MACOSX) && !defined(OS_WIN) ++#if !defined(MOZ_WIDGET_COCOA) && !defined(OS_WIN) + std::string SysWideToUTF8(const std::wstring& wide) { + // FIXME/cjones: do this with iconv + return GhettoStringConvert(wide); + } + #endif + +-#if !defined(OS_MACOSX) && !defined(OS_WIN) ++#if !defined(MOZ_WIDGET_COCOA) && !defined(OS_WIN) + std::wstring SysUTF8ToWide(const StringPiece& utf8) { + // FIXME/cjones: do this with iconv + return GhettoStringConvert(utf8); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_ipc_glue_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_ipc_glue_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/ipc/glue/moz.build.orig 2016-04-07 21:33:19.000000000 +0000 ++++ mozilla/ipc/glue/moz.build +@@ -95,7 +95,7 @@ elif CONFIG['OS_ARCH'] in ('DragonFly', + UNIFIED_SOURCES += [ + 'ProcessUtils_bsd.cpp' + ] +-elif CONFIG['OS_ARCH'] == 'Darwin': ++elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': + UNIFIED_SOURCES += [ + 'ProcessUtils_mac.mm' + ] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_configure.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_configure.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_configure.in Thu Apr 27 13:38:19 2017 @@ -0,0 +1,40 @@ +$NetBSD: patch-mozilla_js_src_configure.in,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/configure.in.orig 2016-04-07 21:33:20.000000000 +0000 ++++ mozilla/js/src/configure.in +@@ -2114,8 +2114,7 @@ AC_LANG_CPLUSPLUS + + MOZ_CXX11 + +-dnl Check for .hidden assembler directive and visibility attribute. +-dnl Borrowed from glibc configure.in ++dnl Setup default hidden visibility and wrapped system headers. + dnl =============================================================== + if test "$GNU_CC" -a "$OS_TARGET" != WINNT; then + AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) +@@ -2951,7 +2950,7 @@ if test "$MOZ_MEMORY"; then + *-darwin*) + AC_DEFINE(MOZ_MEMORY_DARWIN) + ;; +- *-*freebsd*) ++ *-*freebsd*|*-*dragonfly*) + AC_DEFINE(MOZ_MEMORY_BSD) + ;; + *-android*|*-linuxandroid*) +@@ -3818,6 +3817,16 @@ MOZ_SUBCONFIGURE_ICU() + dnl ======================================================== + dnl JavaScript shell + dnl ======================================================== ++ICU_LIB_NAMES= ++MOZ_NATIVE_ICU= ++MOZ_ARG_WITH_BOOL(system-icu, ++[ --with-system-icu ++ Use system icu (located with pkgconfig)], ++ MOZ_NATIVE_ICU=1) ++ ++if test -n "$MOZ_NATIVE_ICU"; then ++ PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 50.1) ++fi + + MOZ_CHECK_ALLOCATOR + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_ctypes_CTypes.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_ctypes_CTypes.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_ctypes_CTypes.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,28 @@ +$NetBSD: patch-mozilla_js_src_ctypes_CTypes.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/ctypes/CTypes.h.orig 2016-04-07 21:33:20.000000000 +0000 ++++ mozilla/js/src/ctypes/CTypes.h +@@ -19,6 +19,23 @@ + #include "js/Vector.h" + #include "vm/String.h" + ++#if defined(__NetBSD__) ++#include ++/* XXX why do we have those funky __ #defines in stdint.h? */ ++#warning this is a retarded workaround ++#define uint8_t uint8_t ++#define uint16_t uint16_t ++#define uint32_t uint32_t ++#define uint64_t uint64_t ++#define int8_t int8_t ++#define int16_t int16_t ++#define int32_t int32_t ++#define int64_t int64_t ++#define intptr_t intptr_t ++#define uintptr_t uintptr_t ++#define off_t off_t ++#endif ++ + namespace js { + namespace ctypes { + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_frontend_ParseMaps.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_frontend_ParseMaps.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_frontend_ParseMaps.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_js_src_frontend_ParseMaps.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/frontend/ParseMaps.cpp.orig 2016-04-07 21:33:20.000000000 +0000 ++++ mozilla/js/src/frontend/ParseMaps.cpp +@@ -133,5 +133,5 @@ frontend::InitAtomMap(frontend::AtomInde + } + } + +-template class js::frontend::AtomDecls; +-template class js::frontend::AtomDecls; ++template class frontend::AtomDecls; ++template class frontend::AtomDecls; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_LIR.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_LIR.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_LIR.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jit_LIR.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/jit/LIR.cpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/js/src/jit/LIR.cpp +@@ -322,7 +322,7 @@ LNode::printName(GenericPrinter& out, Op + const char* name = names[op]; + size_t len = strlen(name); + for (size_t i = 0; i < len; i++) +- out.printf("%c", tolower(name[i])); ++ out.printf("%c", tolower((unsigned char)name[i])); + } + + void Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_MIR.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_MIR.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_MIR.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jit_MIR.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/jit/MIR.cpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/js/src/jit/MIR.cpp +@@ -75,7 +75,7 @@ MDefinition::PrintOpcodeName(GenericPrin + const char* name = names[op]; + size_t len = strlen(name); + for (size_t i = 0; i < len; i++) +- out.printf("%c", tolower(name[i])); ++ out.printf("%c", tolower((unsigned char)name[i])); + } + + const Value& Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_arm_Architecture-arm.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_arm_Architecture-arm.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jit_arm_Architecture-arm.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jit_arm_Architecture-arm.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/jit/arm/Architecture-arm.cpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/js/src/jit/arm/Architecture-arm.cpp +@@ -16,7 +16,7 @@ + #include "jit/arm/Assembler-arm.h" + #include "jit/RegisterSets.h" + +-#if !defined(__linux__) || defined(ANDROID) || defined(JS_SIMULATOR_ARM) ++#if !defined(__linux__) || defined(ANDROID) || defined(JS_ARM_SIMULATOR) || defined(__NetBSD__) + // The Android NDK and B2G do not include the hwcap.h kernel header, and it is not + // defined when building the simulator, so inline the header defines we need. + # define HWCAP_VFP (1 << 6) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsdate.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsdate.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsdate.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,15 @@ +$NetBSD: patch-mozilla_js_src_jsdate.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/jsdate.cpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/js/src/jsdate.cpp +@@ -2672,8 +2672,8 @@ ToLocaleFormatHelper(JSContext* cx, Hand + if (strcmp(format, "%x") == 0 && result_len >= 6 && + /* Format %x means use OS settings, which may have 2-digit yr, so + hack end of 3/11/22 or 11.03.22 or 11Mar22 to use 4-digit yr...*/ +- !isdigit(buf[result_len - 3]) && +- isdigit(buf[result_len - 2]) && isdigit(buf[result_len - 1]) && ++ !isdigit(((unsigned char)buf[result_len - 3])) && ++ isdigit(((unsigned char)buf[result_len - 2])) && isdigit(((unsigned char)buf[result_len - 1])) && + /* ...but not if starts with 4-digit year, like 2022/3/11. */ + !(isdigit(buf[0]) && isdigit(buf[1]) && + isdigit(buf[2]) && isdigit(buf[3]))) { Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jskwgen.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jskwgen.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jskwgen.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jskwgen.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/jskwgen.cpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/js/src/jskwgen.cpp +@@ -181,7 +181,7 @@ qchar(char c, char* quoted_buffer) + *s++ = '\\'; + break; + default: +- if (!isprint(c)) { ++ if (!isprint(((unsigned char)c))) { + *s++ = '\\'; + *s++ = (char)('0' + (0x3 & (((unsigned char)c) >> 6))); + *s++ = (char)('0' + (0x7 & (((unsigned char)c) >> 3))); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsmath.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsmath.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsmath.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jsmath.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/jsmath.cpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/js/src/jsmath.cpp +@@ -272,7 +272,7 @@ js::ecmaAtan2(double y, double x) + } + #endif + +-#if defined(SOLARIS) && defined(__GNUC__) ++#if defined(notSOLARIS) && defined(__GNUC__) + if (y == 0) { + if (IsNegativeZero(x)) + return js_copysign(M_PI, y); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsnativestack.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsnativestack.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_jsnativestack.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jsnativestack.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/jsnativestack.cpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/js/src/jsnativestack.cpp +@@ -102,7 +102,7 @@ js::GetNativeStackBaseImpl() + pthread_attr_init(&sattr); + # if defined(__OpenBSD__) + stack_t ss; +-# elif defined(PTHREAD_NP_H) || defined(_PTHREAD_NP_H_) || defined(NETBSD) ++# elif defined(PTHREAD_NP_H) || defined(_PTHREAD_NP_H_) || defined(__DragonFly__) || defined(NETBSD) || defined(__NetBSD__) /* XXX tnn not sure why NETBSD isn't defined, it looks like it should be ... */ + /* e.g. on FreeBSD 4.8 or newer, neundorf@kde.org */ + pthread_attr_get_np(thread, &sattr); + # else Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_shell_jsoptparse.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_shell_jsoptparse.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_shell_jsoptparse.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_shell_jsoptparse.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/shell/jsoptparse.cpp.orig 2016-04-07 21:33:25.000000000 +0000 ++++ mozilla/js/src/shell/jsoptparse.cpp +@@ -95,7 +95,7 @@ PrintParagraph(const char* text, unsigne + ++it; + + while (*it != '\0') { +- MOZ_ASSERT(!isspace(*it)); ++ MOZ_ASSERT(!isspace((unsigned char)*it)); + + /* Delimit the current token. */ + const char* limit = it; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_vm_SPSProfiler.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_vm_SPSProfiler.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_src_vm_SPSProfiler.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_vm_SPSProfiler.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/src/vm/SPSProfiler.cpp.orig 2016-04-07 21:33:28.000000000 +0000 ++++ mozilla/js/src/vm/SPSProfiler.cpp +@@ -4,6 +4,8 @@ + * 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 "jscntxtinlines.h" ++ + #include "vm/SPSProfiler.h" + + #include "mozilla/DebugOnly.h" Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_XPCConvert.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_XPCConvert.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_XPCConvert.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_xpconnect_src_XPCConvert.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/xpconnect/src/XPCConvert.cpp.orig 2016-04-07 21:33:28.000000000 +0000 ++++ mozilla/js/xpconnect/src/XPCConvert.cpp +@@ -134,7 +134,7 @@ XPCConvert::NativeData2JS(MutableHandleV + d.setNumber(*static_cast(s)); + return true; + case nsXPTType::T_DOUBLE: +- d.setNumber(*static_cast(s)); ++ d.setNumber(CanonicalizeNaN(*static_cast(s))); + return true; + case nsXPTType::T_BOOL : + d.setBoolean(*static_cast(s)); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_xpcprivate.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_xpcprivate.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_js_xpconnect_src_xpcprivate.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_xpconnect_src_xpcprivate.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/js/xpconnect/src/xpcprivate.h.orig 2016-04-07 21:33:28.000000000 +0000 ++++ mozilla/js/xpconnect/src/xpcprivate.h +@@ -999,6 +999,8 @@ typedef nsTArray; ++ + class nsIAddonInterposition; + class nsXPCComponentsBase; + class XPCWrappedNativeScope : public PRCList Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,24 @@ +$NetBSD: patch-mozilla_media_libcubeb_src_cubeb.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libcubeb/src/cubeb.c.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libcubeb/src/cubeb.c +@@ -60,6 +60,9 @@ int audiotrack_init(cubeb ** context, ch + #if defined(USE_KAI) + int kai_init(cubeb ** context, char const * context_name); + #endif ++#if defined(USE_OSS) ++int oss_init(cubeb ** context, char const * context_name); ++#endif + + int + validate_stream_params(cubeb_stream_params stream_params) +@@ -129,6 +132,9 @@ cubeb_init(cubeb ** context, char const + #if defined(USE_KAI) + kai_init, + #endif ++#if defined(USE_OSS) ++ oss_init, ++#endif + }; + int i; + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,675 @@ +$NetBSD: patch-mozilla_media_libcubeb_src_cubeb__alsa.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libcubeb/src/cubeb_alsa.c.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libcubeb/src/cubeb_alsa.c +@@ -7,12 +7,18 @@ + #undef NDEBUG + #define _DEFAULT_SOURCE + #define _BSD_SOURCE ++#if defined(__NetBSD__) ++#define _NETBSD_SOURCE ++#endif + #define _XOPEN_SOURCE 500 + #include + #include + #include + #include ++#include + #include ++#include ++#include + #include + #include + #include "cubeb/cubeb.h" +@@ -25,6 +31,51 @@ + + #define ALSA_PA_PLUGIN "ALSA <-> PulseAudio PCM I/O Plugin" + ++#ifdef DISABLE_LIBASOUND_DLOPEN ++#define WRAP(x) x ++#else ++#define WRAP(x) cubeb_##x ++#define MAKE_TYPEDEF(x) static typeof(x) * cubeb_##x ++MAKE_TYPEDEF(snd_config); ++MAKE_TYPEDEF(snd_config_add); ++MAKE_TYPEDEF(snd_config_copy); ++MAKE_TYPEDEF(snd_config_delete); ++MAKE_TYPEDEF(snd_config_get_id); ++MAKE_TYPEDEF(snd_config_get_string); ++MAKE_TYPEDEF(snd_config_imake_integer); ++MAKE_TYPEDEF(snd_config_search); ++MAKE_TYPEDEF(snd_config_search_definition); ++MAKE_TYPEDEF(snd_lib_error_set_handler); ++MAKE_TYPEDEF(snd_pcm_avail_update); ++MAKE_TYPEDEF(snd_pcm_close); ++MAKE_TYPEDEF(snd_pcm_delay); ++MAKE_TYPEDEF(snd_pcm_drain); ++MAKE_TYPEDEF(snd_pcm_forward); ++MAKE_TYPEDEF(snd_pcm_frames_to_bytes); ++MAKE_TYPEDEF(snd_pcm_get_params); ++/* snd_pcm_hw_params_alloca is actually a macro */ ++/* MAKE_TYPEDEF(snd_pcm_hw_params_alloca); */ ++MAKE_TYPEDEF(snd_pcm_hw_params_sizeof); ++#define snd_pcm_hw_params_sizeof cubeb_snd_pcm_hw_params_sizeof ++MAKE_TYPEDEF(snd_pcm_hw_params_any); ++MAKE_TYPEDEF(snd_pcm_hw_params_get_channels_max); ++MAKE_TYPEDEF(snd_pcm_hw_params_get_rate); ++MAKE_TYPEDEF(snd_pcm_hw_params_set_rate_near); ++MAKE_TYPEDEF(snd_pcm_nonblock); ++MAKE_TYPEDEF(snd_pcm_open); ++MAKE_TYPEDEF(snd_pcm_open_lconf); ++MAKE_TYPEDEF(snd_pcm_pause); ++MAKE_TYPEDEF(snd_pcm_poll_descriptors); ++MAKE_TYPEDEF(snd_pcm_poll_descriptors_count); ++MAKE_TYPEDEF(snd_pcm_poll_descriptors_revents); ++MAKE_TYPEDEF(snd_pcm_recover); ++MAKE_TYPEDEF(snd_pcm_set_params); ++MAKE_TYPEDEF(snd_pcm_state); ++MAKE_TYPEDEF(snd_pcm_writei); ++ ++#undef MAKE_TYPEDEF ++#endif ++ + /* ALSA is not thread-safe. snd_pcm_t instances are individually protected + by the owning cubeb_stream's mutex. snd_pcm_t creation and destruction + is not thread-safe until ALSA 1.0.24 (see alsa-lib.git commit 91c9c8f1), +@@ -65,6 +116,8 @@ struct cubeb { + workaround is not required. */ + snd_config_t * local_config; + int is_pa; ++ ++ void * libasound; + }; + + enum stream_state { +@@ -258,32 +311,35 @@ alsa_refill_stream(cubeb_stream * stm) + long got; + void * p; + int draining; ++ unsigned pipefailures, againfailures; + + draining = 0; + + pthread_mutex_lock(&stm->mutex); + +- r = snd_pcm_poll_descriptors_revents(stm->pcm, stm->fds, stm->nfds, &revents); +- if (r < 0 || revents != POLLOUT) { +- /* This should be a stream error; it makes no sense for poll(2) to wake +- for this stream and then have the stream report that it's not ready. +- Unfortunately, this does happen, so just bail out and try again. */ +- pthread_mutex_unlock(&stm->mutex); +- return RUNNING; +- } +- +- avail = snd_pcm_avail_update(stm->pcm); +- if (avail == -EPIPE) { +- snd_pcm_recover(stm->pcm, avail, 1); +- avail = snd_pcm_avail_update(stm->pcm); +- } ++ for (pipefailures = 0;;) { ++ r = WRAP(snd_pcm_poll_descriptors_revents)(stm->pcm, stm->fds, stm->nfds, &revents); ++ if (r < 0 || revents != POLLOUT || ++ (avail = WRAP(snd_pcm_avail_update)(stm->pcm)) == 0) { ++ /* This should be a stream error; it makes no sense for poll(2) to wake ++ for this stream and then have the stream report that it's not ready. ++ Unfortunately, this does happen, so just bail out and try again. */ ++ pthread_mutex_unlock(&stm->mutex); ++ return RUNNING; ++ } + +- /* Failed to recover from an xrun, this stream must be broken. */ +- if (avail < 0) { +- pthread_mutex_unlock(&stm->mutex); +- stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); +- return ERROR; ++ if (avail > 0) ++ break; ++ if (pipefailures++ > 11) { ++ fprintf(stderr, "%s: repeated failures from snd_pcm_avail_update, " ++ "giving up\n", __func__); ++ pthread_mutex_unlock(&stm->mutex); ++ stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); ++ return ERROR; ++ } ++ WRAP(snd_pcm_recover)(stm->pcm, avail, 1); + } ++ pipefailures = againfailures = 0; + + /* This should never happen. */ + if ((unsigned int) avail > stm->buffer_size) { +@@ -294,8 +350,8 @@ alsa_refill_stream(cubeb_stream * stm) + available to write. If avail is still zero here, the stream must be in + a funky state, so recover and try again. */ + if (avail == 0) { +- snd_pcm_recover(stm->pcm, -EPIPE, 1); +- avail = snd_pcm_avail_update(stm->pcm); ++ WRAP(snd_pcm_recover)(stm->pcm, -EPIPE, 1); ++ avail = WRAP(snd_pcm_avail_update)(stm->pcm); + if (avail <= 0) { + pthread_mutex_unlock(&stm->mutex); + stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); +@@ -303,7 +359,7 @@ alsa_refill_stream(cubeb_stream * stm) + } + } + +- p = calloc(1, snd_pcm_frames_to_bytes(stm->pcm, avail)); ++ p = calloc(1, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, avail)); + assert(p); + + pthread_mutex_unlock(&stm->mutex); +@@ -312,10 +368,11 @@ alsa_refill_stream(cubeb_stream * stm) + if (got < 0) { + pthread_mutex_unlock(&stm->mutex); + stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); ++ free(p); + return ERROR; + } + if (got > 0) { +- snd_pcm_sframes_t wrote; ++ snd_pcm_sframes_t wrote, towrite = got; + + if (stm->params.format == CUBEB_SAMPLE_FLOAT32NE) { + float * b = (float *) p; +@@ -328,14 +385,66 @@ alsa_refill_stream(cubeb_stream * stm) + b[i] *= stm->volume; + } + } +- wrote = snd_pcm_writei(stm->pcm, p, got); +- if (wrote == -EPIPE) { +- snd_pcm_recover(stm->pcm, wrote, 1); +- wrote = snd_pcm_writei(stm->pcm, p, got); +- } +- assert(wrote >= 0 && wrote == got); +- stm->write_position += wrote; +- gettimeofday(&stm->last_activity, NULL); ++ for (;;) { ++ wrote = WRAP(snd_pcm_writei)(stm->pcm, p, ++ towrite > avail ? avail : towrite); ++ switch(wrote) { ++ case -EPIPE: ++ if (pipefailures++ > 3) { ++ fprintf(stderr, "%s: Too many underflows, giving up\n", __func__); ++ stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); ++ pthread_mutex_unlock(&stm->mutex); ++ free(p); ++ return ERROR; ++ } ++ WRAP(snd_pcm_recover)(stm->pcm, wrote, 1); ++ continue; ++ case -EAGAIN: ++ if (againfailures++ > 3) { ++ fprintf(stderr, "%s: Too many -EAGAIN errors from snd_pcm_writei, " ++ "giving up\n", __func__); ++ stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); ++ pthread_mutex_unlock(&stm->mutex); ++ free(p); ++ return ERROR; ++ } ++ continue; ++#if __linux__ ++ case -EBADFD: ++#else ++ case -EBADF: ++#endif ++ fprintf(stderr, "%s: snc_pcm_writei returned -%s, giving up\n", ++ __func__, "EBADFD"); ++ free(p); ++ stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); ++ pthread_mutex_unlock(&stm->mutex); ++ return ERROR; ++ } ++ if (wrote < 0) { ++ fprintf(stderr, "%s: snc_pcm_writei returned unexpected error %lld, " ++ "giving up\n", __func__, (long long)wrote); ++ free(p); ++ stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); ++ pthread_mutex_unlock(&stm->mutex); ++ return ERROR; ++ } ++ pipefailures = againfailures = 0; ++ stm->write_position += wrote; ++ gettimeofday(&stm->last_activity, NULL); ++ if (wrote > towrite) { ++ fprintf(stderr, "%s: snc_pcm_writei wrote %lld frames, which was more " ++ "than we requested (%lld). This should not happen, giving up\n", ++ __func__, (long long)wrote, (long long)towrite); ++ free(p); ++ stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); ++ pthread_mutex_unlock(&stm->mutex); ++ return ERROR; ++ } ++ if (towrite == wrote) ++ break; ++ towrite -= wrote; ++ } + } + if (got != avail) { + long buffer_fill = stm->buffer_size - (avail - got); +@@ -343,7 +452,7 @@ alsa_refill_stream(cubeb_stream * stm) + + /* Fill the remaining buffer with silence to guarantee one full period + has been written. */ +- snd_pcm_writei(stm->pcm, (char *) p + got, avail - got); ++ WRAP(snd_pcm_writei)(stm->pcm, (char *) p + got, avail - got); + + set_timeout(&stm->drain_timeout, buffer_time * 1000); + +@@ -454,26 +563,26 @@ get_slave_pcm_node(snd_config_t * lconf, + + slave_def = NULL; + +- r = snd_config_search(root_pcm, "slave", &slave_pcm); ++ r = WRAP(snd_config_search)(root_pcm, "slave", &slave_pcm); + if (r < 0) { + return NULL; + } + +- r = snd_config_get_string(slave_pcm, &string); ++ r = WRAP(snd_config_get_string)(slave_pcm, &string); + if (r >= 0) { +- r = snd_config_search_definition(lconf, "pcm_slave", string, &slave_def); ++ r = WRAP(snd_config_search_definition)(lconf, "pcm_slave", string, &slave_def); + if (r < 0) { + return NULL; + } + } + + do { +- r = snd_config_search(slave_def ? slave_def : slave_pcm, "pcm", &pcm); ++ r = WRAP(snd_config_search)(slave_def ? slave_def : slave_pcm, "pcm", &pcm); + if (r < 0) { + break; + } + +- r = snd_config_get_string(slave_def ? slave_def : slave_pcm, &string); ++ r = WRAP(snd_config_get_string)(slave_def ? slave_def : slave_pcm, &string); + if (r < 0) { + break; + } +@@ -482,7 +591,7 @@ get_slave_pcm_node(snd_config_t * lconf, + if (r < 0 || r > (int) sizeof(node_name)) { + break; + } +- r = snd_config_search(lconf, node_name, &pcm); ++ r = WRAP(snd_config_search)(lconf, node_name, &pcm); + if (r < 0) { + break; + } +@@ -491,7 +600,7 @@ get_slave_pcm_node(snd_config_t * lconf, + } while (0); + + if (slave_def) { +- snd_config_delete(slave_def); ++ WRAP(snd_config_delete)(slave_def); + } + + return NULL; +@@ -514,22 +623,22 @@ init_local_config_with_workaround(char c + + lconf = NULL; + +- if (snd_config == NULL) { ++ if (*WRAP(snd_config) == NULL) { + return NULL; + } + +- r = snd_config_copy(&lconf, snd_config); ++ r = WRAP(snd_config_copy)(&lconf, *WRAP(snd_config)); + if (r < 0) { + return NULL; + } + + do { +- r = snd_config_search_definition(lconf, "pcm", pcm_name, &pcm_node); ++ r = WRAP(snd_config_search_definition)(lconf, "pcm", pcm_name, &pcm_node); + if (r < 0) { + break; + } + +- r = snd_config_get_id(pcm_node, &string); ++ r = WRAP(snd_config_get_id)(pcm_node, &string); + if (r < 0) { + break; + } +@@ -538,7 +647,7 @@ init_local_config_with_workaround(char c + if (r < 0 || r > (int) sizeof(node_name)) { + break; + } +- r = snd_config_search(lconf, node_name, &pcm_node); ++ r = WRAP(snd_config_search)(lconf, node_name, &pcm_node); + if (r < 0) { + break; + } +@@ -549,12 +658,12 @@ init_local_config_with_workaround(char c + } + + /* Fetch the PCM node's type, and bail out if it's not the PulseAudio plugin. */ +- r = snd_config_search(pcm_node, "type", &node); ++ r = WRAP(snd_config_search)(pcm_node, "type", &node); + if (r < 0) { + break; + } + +- r = snd_config_get_string(node, &string); ++ r = WRAP(snd_config_get_string)(node, &string); + if (r < 0) { + break; + } +@@ -565,18 +674,18 @@ init_local_config_with_workaround(char c + + /* Don't clobber an explicit existing handle_underrun value, set it only + if it doesn't already exist. */ +- r = snd_config_search(pcm_node, "handle_underrun", &node); ++ r = WRAP(snd_config_search)(pcm_node, "handle_underrun", &node); + if (r != -ENOENT) { + break; + } + + /* Disable pcm_pulse's asynchronous underrun handling. */ +- r = snd_config_imake_integer(&node, "handle_underrun", 0); ++ r = WRAP(snd_config_imake_integer)(&node, "handle_underrun", 0); + if (r < 0) { + break; + } + +- r = snd_config_add(pcm_node, node); ++ r = WRAP(snd_config_add)(pcm_node, node); + if (r < 0) { + break; + } +@@ -584,7 +693,7 @@ init_local_config_with_workaround(char c + return lconf; + } while (0); + +- snd_config_delete(lconf); ++ WRAP(snd_config_delete)(lconf); + + return NULL; + } +@@ -596,9 +705,9 @@ alsa_locked_pcm_open(snd_pcm_t ** pcm, s + + pthread_mutex_lock(&cubeb_alsa_mutex); + if (local_config) { +- r = snd_pcm_open_lconf(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK, local_config); ++ r = WRAP(snd_pcm_open_lconf)(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK, local_config); + } else { +- r = snd_pcm_open(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK); ++ r = WRAP(snd_pcm_open)(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK); + } + pthread_mutex_unlock(&cubeb_alsa_mutex); + +@@ -611,7 +720,7 @@ alsa_locked_pcm_close(snd_pcm_t * pcm) + int r; + + pthread_mutex_lock(&cubeb_alsa_mutex); +- r = snd_pcm_close(pcm); ++ r = WRAP(snd_pcm_close)(pcm); + pthread_mutex_unlock(&cubeb_alsa_mutex); + + return r; +@@ -668,12 +777,65 @@ alsa_init(cubeb ** context, char const * + pthread_attr_t attr; + snd_pcm_t * dummy; + ++ void * libasound = NULL; ++ ++#ifndef DISABLE_LIBASOUND_DLOPEN ++ libasound = dlopen("libasound.so", RTLD_LAZY); ++ if (!libasound) { ++ return CUBEB_ERROR; ++ } ++ ++#define LOAD(x) do { \ ++ cubeb_##x = dlsym(libasound, #x); \ ++ if (!cubeb_##x) { \ ++ dlclose(libasound); \ ++ return CUBEB_ERROR; \ ++ } \ ++ } while(0) ++ ++ LOAD(snd_config); ++ LOAD(snd_config_add); ++ LOAD(snd_config_copy); ++ LOAD(snd_config_delete); ++ LOAD(snd_config_get_id); ++ LOAD(snd_config_get_string); ++ LOAD(snd_config_imake_integer); ++ LOAD(snd_config_search); ++ LOAD(snd_config_search_definition); ++ LOAD(snd_lib_error_set_handler); ++ LOAD(snd_pcm_avail_update); ++ LOAD(snd_pcm_close); ++ LOAD(snd_pcm_delay); ++ LOAD(snd_pcm_drain); ++ LOAD(snd_pcm_frames_to_bytes); ++ LOAD(snd_pcm_get_params); ++ /* snd_pcm_hw_params_alloca is actually a macro */ ++ /* LOAD(snd_pcm_hw_params_alloca); */ ++ LOAD(snd_pcm_hw_params_sizeof); ++ LOAD(snd_pcm_hw_params_any); ++ LOAD(snd_pcm_hw_params_get_channels_max); ++ LOAD(snd_pcm_hw_params_get_rate); ++ LOAD(snd_pcm_hw_params_set_rate_near); ++ LOAD(snd_pcm_nonblock); ++ LOAD(snd_pcm_open); ++ LOAD(snd_pcm_open_lconf); ++ LOAD(snd_pcm_pause); ++ LOAD(snd_pcm_poll_descriptors); ++ LOAD(snd_pcm_poll_descriptors_count); ++ LOAD(snd_pcm_poll_descriptors_revents); ++ LOAD(snd_pcm_recover); ++ LOAD(snd_pcm_set_params); ++ LOAD(snd_pcm_state); ++ LOAD(snd_pcm_writei); ++ ++#undef LOAD ++#endif + assert(context); + *context = NULL; + + pthread_mutex_lock(&cubeb_alsa_mutex); + if (!cubeb_alsa_error_handler_set) { +- snd_lib_error_set_handler(silent_error_handler); ++ WRAP(snd_lib_error_set_handler)(silent_error_handler); + cubeb_alsa_error_handler_set = 1; + } + pthread_mutex_unlock(&cubeb_alsa_mutex); +@@ -681,6 +843,8 @@ alsa_init(cubeb ** context, char const * + ctx = calloc(1, sizeof(*ctx)); + assert(ctx); + ++ ctx->libasound = libasound; ++ + ctx->ops = &alsa_ops; + + r = pthread_mutex_init(&ctx->mutex, NULL); +@@ -730,7 +894,7 @@ alsa_init(cubeb ** context, char const * + config fails with EINVAL, the PA PCM is too old for this workaround. */ + if (r == -EINVAL) { + pthread_mutex_lock(&cubeb_alsa_mutex); +- snd_config_delete(ctx->local_config); ++ WRAP(snd_config_delete)(ctx->local_config); + pthread_mutex_unlock(&cubeb_alsa_mutex); + ctx->local_config = NULL; + } else if (r >= 0) { +@@ -769,9 +933,13 @@ alsa_destroy(cubeb * ctx) + pthread_mutex_destroy(&ctx->mutex); + free(ctx->fds); + ++ if (ctx->libasound) { ++ dlclose(ctx->libasound); ++ } ++ + if (ctx->local_config) { + pthread_mutex_lock(&cubeb_alsa_mutex); +- snd_config_delete(ctx->local_config); ++ WRAP(snd_config_delete)(ctx->local_config); + pthread_mutex_unlock(&cubeb_alsa_mutex); + } + +@@ -839,7 +1007,7 @@ alsa_stream_init(cubeb * ctx, cubeb_stre + return CUBEB_ERROR; + } + +- r = snd_pcm_nonblock(stm->pcm, 1); ++ r = WRAP(snd_pcm_nonblock)(stm->pcm, 1); + assert(r == 0); + + /* Ugly hack: the PA ALSA plugin allows buffer configurations that can't +@@ -849,23 +1017,23 @@ alsa_stream_init(cubeb * ctx, cubeb_stre + latency = latency < 500 ? 500 : latency; + } + +- r = snd_pcm_set_params(stm->pcm, format, SND_PCM_ACCESS_RW_INTERLEAVED, +- stm->params.channels, stm->params.rate, 1, +- latency * 1000); ++ r = WRAP(snd_pcm_set_params)(stm->pcm, format, SND_PCM_ACCESS_RW_INTERLEAVED, ++ stm->params.channels, stm->params.rate, 1, ++ latency * 1000); + if (r < 0) { + alsa_stream_destroy(stm); + return CUBEB_ERROR_INVALID_FORMAT; + } + +- r = snd_pcm_get_params(stm->pcm, &stm->buffer_size, &stm->period_size); ++ r = WRAP(snd_pcm_get_params)(stm->pcm, &stm->buffer_size, &stm->period_size); + assert(r == 0); + +- stm->nfds = snd_pcm_poll_descriptors_count(stm->pcm); ++ stm->nfds = WRAP(snd_pcm_poll_descriptors_count)(stm->pcm); + assert(stm->nfds > 0); + + stm->saved_fds = calloc(stm->nfds, sizeof(struct pollfd)); + assert(stm->saved_fds); +- r = snd_pcm_poll_descriptors(stm->pcm, stm->saved_fds, stm->nfds); ++ r = WRAP(snd_pcm_poll_descriptors)(stm->pcm, stm->saved_fds, stm->nfds); + assert((nfds_t) r == stm->nfds); + + r = pthread_cond_init(&stm->cond, NULL); +@@ -896,7 +1064,7 @@ alsa_stream_destroy(cubeb_stream * stm) + pthread_mutex_lock(&stm->mutex); + if (stm->pcm) { + if (stm->state == DRAINING) { +- snd_pcm_drain(stm->pcm); ++ WRAP(snd_pcm_drain)(stm->pcm); + } + alsa_locked_pcm_close(stm->pcm); + stm->pcm = NULL; +@@ -906,7 +1074,10 @@ alsa_stream_destroy(cubeb_stream * stm) + pthread_mutex_destroy(&stm->mutex); + + r = pthread_cond_destroy(&stm->cond); +- assert(r == 0); ++ if (r != 0) { /* XXX stopgap until someone figures out the real reason */ ++ fprintf(stderr,"alsa_stream_destroy: pthread_cond_destroy failed: %s", ++ strerror(r)); ++ } + + alsa_unregister_stream(stm); + +@@ -938,12 +1109,12 @@ alsa_get_max_channel_count(cubeb * ctx, + return CUBEB_ERROR; + } + +- r = snd_pcm_hw_params_any(stm->pcm, hw_params); ++ r = WRAP(snd_pcm_hw_params_any)(stm->pcm, hw_params); + if (r < 0) { + return CUBEB_ERROR; + } + +- r = snd_pcm_hw_params_get_channels_max(hw_params, max_channels); ++ r = WRAP(snd_pcm_hw_params_get_channels_max)(hw_params, max_channels); + if (r < 0) { + return CUBEB_ERROR; + } +@@ -963,34 +1134,34 @@ alsa_get_preferred_sample_rate(cubeb * c + + /* get a pcm, disabling resampling, so we get a rate the + * hardware/dmix/pulse/etc. supports. */ +- r = snd_pcm_open(&pcm, CUBEB_ALSA_PCM_NAME, SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0); ++ r = WRAP(snd_pcm_open)(&pcm, CUBEB_ALSA_PCM_NAME, SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0); + if (r < 0) { + return CUBEB_ERROR; + } + +- r = snd_pcm_hw_params_any(pcm, hw_params); ++ r = WRAP(snd_pcm_hw_params_any)(pcm, hw_params); + if (r < 0) { +- snd_pcm_close(pcm); ++ WRAP(snd_pcm_close)(pcm); + return CUBEB_ERROR; + } + +- r = snd_pcm_hw_params_get_rate(hw_params, rate, &dir); ++ r = WRAP(snd_pcm_hw_params_get_rate)(hw_params, rate, &dir); + if (r >= 0) { + /* There is a default rate: use it. */ +- snd_pcm_close(pcm); ++ WRAP(snd_pcm_close)(pcm); + return CUBEB_OK; + } + + /* Use a common rate, alsa may adjust it based on hw/etc. capabilities. */ + *rate = 44100; + +- r = snd_pcm_hw_params_set_rate_near(pcm, hw_params, rate, NULL); ++ r = WRAP(snd_pcm_hw_params_set_rate_near)(pcm, hw_params, rate, NULL); + if (r < 0) { +- snd_pcm_close(pcm); ++ WRAP(snd_pcm_close)(pcm); + return CUBEB_ERROR; + } + +- snd_pcm_close(pcm); ++ WRAP(snd_pcm_close)(pcm); + + return CUBEB_OK; + } +@@ -1014,7 +1185,7 @@ alsa_stream_start(cubeb_stream * stm) + ctx = stm->context; + + pthread_mutex_lock(&stm->mutex); +- snd_pcm_pause(stm->pcm, 0); ++ WRAP(snd_pcm_pause)(stm->pcm, 0); + gettimeofday(&stm->last_activity, NULL); + pthread_mutex_unlock(&stm->mutex); + +@@ -1048,7 +1219,7 @@ alsa_stream_stop(cubeb_stream * stm) + pthread_mutex_unlock(&ctx->mutex); + + pthread_mutex_lock(&stm->mutex); +- snd_pcm_pause(stm->pcm, 1); ++ WRAP(snd_pcm_pause)(stm->pcm, 1); + pthread_mutex_unlock(&stm->mutex); + + return CUBEB_OK; +@@ -1064,14 +1235,17 @@ alsa_stream_get_position(cubeb_stream * + pthread_mutex_lock(&stm->mutex); + + delay = -1; +- if (snd_pcm_state(stm->pcm) != SND_PCM_STATE_RUNNING || +- snd_pcm_delay(stm->pcm, &delay) != 0) { ++ if (WRAP(snd_pcm_state)(stm->pcm) != SND_PCM_STATE_RUNNING || ++ WRAP(snd_pcm_delay)(stm->pcm, &delay) != 0) { + *position = stm->last_position; + pthread_mutex_unlock(&stm->mutex); + return CUBEB_OK; + } + +- assert(delay >= 0); ++ if (delay < 0) { ++ WRAP(snd_pcm_forward)(stm->pcm, -delay); ++ delay = 0; ++ } + + *position = 0; + if (stm->write_position >= (snd_pcm_uframes_t) delay) { +@@ -1090,7 +1264,7 @@ alsa_stream_get_latency(cubeb_stream * s + snd_pcm_sframes_t delay; + /* This function returns the delay in frames until a frame written using + snd_pcm_writei is sent to the DAC. The DAC delay should be < 1ms anyways. */ +- if (snd_pcm_delay(stm->pcm, &delay)) { ++ if (WRAP(snd_pcm_delay)(stm->pcm, &delay)) { + return CUBEB_ERROR; + } + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__oss.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__oss.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_cubeb__oss.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,407 @@ +$NetBSD: patch-mozilla_media_libcubeb_src_cubeb__oss.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libcubeb/src/cubeb_oss.c.orig 2016-04-17 13:47:46.296872813 +0000 ++++ mozilla/media/libcubeb/src/cubeb_oss.c +@@ -0,0 +1,402 @@ ++/* ++ * Copyright © 2014 Mozilla Foundation ++ * ++ * This program is made available under an ISC-style license. See the ++ * accompanying file LICENSE for details. ++ */ ++#if defined(HAVE_SYS_SOUNDCARD_H) ++#include ++#else ++#include ++#endif ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include "cubeb/cubeb.h" ++#include "cubeb-internal.h" ++ ++#ifndef CUBEB_OSS_DEFAULT_OUTPUT ++#define CUBEB_OSS_DEFAULT_OUTPUT "/dev/dsp" ++#endif ++ ++#define OSS_BUFFER_SIZE 1024 ++ ++struct cubeb { ++ struct cubeb_ops const * ops; ++}; ++ ++struct cubeb_stream { ++ cubeb * context; ++ ++ cubeb_data_callback data_callback; ++ cubeb_state_callback state_callback; ++ void * user_ptr; ++ float volume; ++ float panning; ++ ++ pthread_mutex_t state_mutex; ++ pthread_cond_t state_cond; ++ ++ int running; ++ int stopped; ++ int floating; ++ ++ /* These two vars are needed to support old versions of OSS */ ++ unsigned int position_bytes; ++ unsigned int last_position_bytes; ++ ++ uint64_t written_frags; /* The number of fragments written to /dev/dsp */ ++ uint64_t missed_frags; /* fragments output with stopped stream */ ++ ++ cubeb_stream_params params; ++ int fd; ++ pthread_t th; ++}; ++ ++static struct cubeb_ops const oss_ops; ++ ++int oss_init(cubeb ** context, char const * context_name) ++{ ++ cubeb* ctx = (cubeb*)malloc(sizeof(cubeb)); ++ ctx->ops = &oss_ops; ++ *context = ctx; ++ return CUBEB_OK; ++} ++ ++static void oss_destroy(cubeb *ctx) ++{ ++ free(ctx); ++} ++ ++static char const * oss_get_backend_id(cubeb * context) ++{ ++ static char oss_name[] = "oss"; ++ return oss_name; ++} ++ ++static int oss_get_max_channel_count(cubeb * ctx, uint32_t * max_channels) ++{ ++ *max_channels = 2; /* Let's support only stereo for now */ ++ return CUBEB_OK; ++} ++ ++static int oss_get_min_latency(cubeb * context, cubeb_stream_params params, ++ uint32_t * latency_ms) ++{ ++ /* 40ms is a big enough number to work ok */ ++ *latency_ms = 40; ++ return CUBEB_OK; ++} ++ ++static int oss_get_preferred_sample_rate(cubeb *context, uint32_t * rate) ++{ ++ /* 48000 seems a prefered choice for most audio devices ++ * and a good choice for OSS */ ++ *rate = 48000; ++ return CUBEB_OK; ++} ++ ++static void run_state_callback(cubeb_stream *stream, cubeb_state state) ++{ ++ if (stream->state_callback) { ++ stream->state_callback(stream, stream->user_ptr, state); ++ } ++} ++ ++static long run_data_callback(cubeb_stream *stream, void *buffer, long nframes) ++{ ++ long got = 0; ++ pthread_mutex_lock(&stream->state_mutex); ++ if (stream->data_callback && stream->running && !stream->stopped) { ++ pthread_mutex_unlock(&stream->state_mutex); ++ got = stream->data_callback(stream, stream->user_ptr, buffer, nframes); ++ } else { ++ pthread_mutex_unlock(&stream->state_mutex); ++ } ++ return got; ++} ++ ++static void apply_volume(int16_t* buffer, unsigned int n, ++ float volume, float panning) ++{ ++ float left = volume; ++ float right = volume; ++ unsigned int i; ++ int pan[2]; ++ if (panning<0) { ++ right *= (1+panning); ++ } else { ++ left *= (1-panning); ++ } ++ pan[0] = 128.0*left; ++ pan[1] = 128.0*right; ++ for(i=0; irunning) { ++ pthread_mutex_lock(&stream->state_mutex); ++ if (stream->stopped) { ++ pthread_mutex_unlock(&stream->state_mutex); ++ run_state_callback(stream, CUBEB_STATE_STOPPED); ++ pthread_mutex_lock(&stream->state_mutex); ++ while (stream->stopped) { ++ pthread_cond_wait(&stream->state_cond, &stream->state_mutex); ++ } ++ pthread_mutex_unlock(&stream->state_mutex); ++ run_state_callback(stream, CUBEB_STATE_STARTED); ++ continue; ++ } ++ pthread_mutex_unlock(&stream->state_mutex); ++ if (stream->floating) { ++ got = run_data_callback(stream, f_buffer, ++ OSS_BUFFER_SIZE/stream->params.channels); ++ for (i=0; i<((unsigned long)got)*stream->params.channels; i++) { ++ buffer[i] = f_buffer[i]*32767.0; ++ } ++ } else { ++ got = run_data_callback(stream, buffer, ++ OSS_BUFFER_SIZE/stream->params.channels); ++ } ++ apply_volume(buffer, got*stream->params.channels, ++ stream->volume, stream->panning); ++ if (got<0) { ++ run_state_callback(stream, CUBEB_STATE_ERROR); ++ break; ++ } ++ if (!got) { ++ run_state_callback(stream, CUBEB_STATE_DRAINED); ++ } ++ if (got) { ++ size_t i = 0; ++ size_t s = got*stream->params.channels*sizeof(int16_t); ++ while (i < s) { ++ ssize_t n = write(stream->fd, ((char*)buffer) + i, s - i); ++ if (n<=0) { ++ run_state_callback(stream, CUBEB_STATE_ERROR); ++ break; ++ } ++ i+=n; ++ } ++ stream->written_frags+=got; ++ } ++ } ++ return NULL; ++} ++ ++static void oss_try_set_latency(cubeb_stream* stream, unsigned int latency) ++{ ++ unsigned int latency_bytes, n_frag; ++ int frag; ++ /* fragment size of 1024 is a good choice with good chances to be accepted */ ++ unsigned int frag_size=1024; ++ unsigned int frag_log=10; /* 2^frag_log = frag_size */ ++ latency_bytes = ++ latency*stream->params.rate*stream->params.channels*sizeof(uint16_t)/1000; ++ n_frag = latency_bytes>>frag_log; ++ frag = (n_frag<<16) | frag_log; ++ /* Even if this fails we wish to continue, not checking for errors */ ++ ioctl(stream->fd, SNDCTL_DSP_SETFRAGMENT, &frag); ++} ++ ++static int oss_stream_init(cubeb * context, cubeb_stream ** stm, ++ char const * stream_name, ++ cubeb_stream_params stream_params, ++ unsigned int latency, ++ cubeb_data_callback data_callback, ++ cubeb_state_callback state_callback, void * user_ptr) ++{ ++ cubeb_stream* stream = (cubeb_stream*)malloc(sizeof(cubeb_stream)); ++ stream->context = context; ++ stream->data_callback = data_callback; ++ stream->state_callback = state_callback; ++ stream->user_ptr = user_ptr; ++ ++ if ((stream->fd = open(CUBEB_OSS_DEFAULT_OUTPUT, O_WRONLY)) == -1) { ++ free(stream); ++ return CUBEB_ERROR; ++ } ++#define SET(what, to) do { unsigned int i = to; \ ++ int j = ioctl(stream->fd, what, &i); \ ++ if (j == -1 || i != to) { \ ++ close(stream->fd); \ ++ free(stream); \ ++ return CUBEB_ERROR_INVALID_FORMAT; } } while (0) ++ ++ stream->params = stream_params; ++ stream->volume = 1.0; ++ stream->panning = 0.0; ++ ++ oss_try_set_latency(stream, latency); ++ ++ stream->floating = 0; ++ SET(SNDCTL_DSP_CHANNELS, stream_params.channels); ++ SET(SNDCTL_DSP_SPEED, stream_params.rate); ++ switch (stream_params.format) { ++ case CUBEB_SAMPLE_S16LE: ++ SET(SNDCTL_DSP_SETFMT, AFMT_S16_LE); ++ break; ++ case CUBEB_SAMPLE_S16BE: ++ SET(SNDCTL_DSP_SETFMT, AFMT_S16_BE); ++ break; ++ case CUBEB_SAMPLE_FLOAT32LE: ++ SET(SNDCTL_DSP_SETFMT, AFMT_S16_NE); ++ stream->floating = 1; ++ break; ++ default: ++ close(stream->fd); ++ free(stream); ++ return CUBEB_ERROR; ++ } ++ ++ ++ pthread_mutex_init(&stream->state_mutex, NULL); ++ pthread_cond_init(&stream->state_cond, NULL); ++ ++ stream->running = 1; ++ stream->stopped = 1; ++ stream->position_bytes = 0; ++ stream->last_position_bytes = 0; ++ stream->written_frags = 0; ++ stream->missed_frags = 0; ++ ++ pthread_create(&stream->th, NULL, writer, (void*)stream); ++ ++ *stm = stream; ++ ++ return CUBEB_OK; ++} ++ ++static void oss_stream_destroy(cubeb_stream * stream) ++{ ++ pthread_mutex_lock(&stream->state_mutex); ++ ++ stream->running = 0; ++ stream->stopped = 0; ++ pthread_cond_signal(&stream->state_cond); ++ ++ pthread_mutex_unlock(&stream->state_mutex); ++ ++ pthread_join(stream->th, NULL); ++ ++ pthread_mutex_destroy(&stream->state_mutex); ++ pthread_cond_destroy(&stream->state_cond); ++ close(stream->fd); ++ free(stream); ++} ++ ++static int oss_stream_get_latency(cubeb_stream * stream, uint32_t * latency) ++{ ++ if (ioctl(stream->fd, SNDCTL_DSP_GETODELAY, latency)==-1) { ++ return CUBEB_ERROR; ++ } ++ /* Convert latency from bytes to frames */ ++ *latency /= stream->params.channels*sizeof(int16_t); ++ return CUBEB_OK; ++} ++ ++ ++static int oss_stream_current_optr(cubeb_stream * stream, uint64_t * position) ++{ ++ count_info ci; ++ /* Unfortunately, this ioctl is only available in OSS 4.x */ ++#ifdef SNDCTL_DSP_CURRENT_OPTR ++ oss_count_t count; ++ if (ioctl(stream->fd, SNDCTL_DSP_CURRENT_OPTR, &count) != -1) { ++ *position = count.samples;// + count.fifo_samples; ++ return CUBEB_OK; ++ } ++#endif ++ /* Fall back to this ioctl in case the previous one fails */ ++ if (ioctl(stream->fd, SNDCTL_DSP_GETOPTR, &ci) == -1) { ++ return CUBEB_ERROR; ++ } ++ /* ci.bytes is only 32 bit and will start to wrap after arithmetic overflow */ ++ stream->position_bytes += ci.bytes - stream->last_position_bytes; ++ stream->last_position_bytes = ci.bytes; ++ *position = stream->position_bytes/stream->params.channels/sizeof(int16_t); ++ return CUBEB_OK; ++} ++ ++static int oss_stream_get_position(cubeb_stream * stream, uint64_t * position) ++{ ++ if ( oss_stream_current_optr(stream, position) == CUBEB_OK ){ ++ *position -= stream->missed_frags; ++ return CUBEB_OK; ++ } ++ /* If no correct method to get position works we resort to this */ ++ *position = stream->written_frags; ++ return CUBEB_OK; ++} ++ ++ ++static int oss_stream_start(cubeb_stream * stream) ++{ ++ pthread_mutex_lock(&stream->state_mutex); ++ if (stream->stopped) { ++ uint64_t ptr; ++ oss_stream_current_optr(stream, &ptr); ++ stream->missed_frags = ptr - stream->written_frags; ++ stream->stopped = 0; ++ pthread_cond_signal(&stream->state_cond); ++ } ++ pthread_mutex_unlock(&stream->state_mutex); ++ return CUBEB_OK; ++} ++ ++static int oss_stream_stop(cubeb_stream * stream) ++{ ++ pthread_mutex_lock(&stream->state_mutex); ++ stream->stopped = 1; ++ pthread_mutex_unlock(&stream->state_mutex); ++ return CUBEB_OK; ++} ++ ++int oss_stream_set_panning(cubeb_stream * stream, float panning) ++{ ++ if (stream->params.channels == 2) { ++ stream->panning=panning; ++ } ++ return CUBEB_OK; ++} ++ ++int oss_stream_set_volume(cubeb_stream * stream, float volume) ++{ ++ stream->volume=volume; ++ return CUBEB_OK; ++} ++ ++static struct cubeb_ops const oss_ops = { ++ .init = oss_init, ++ .get_backend_id = oss_get_backend_id, ++ .get_max_channel_count = oss_get_max_channel_count, ++ .get_min_latency = oss_get_min_latency, ++ .get_preferred_sample_rate = oss_get_preferred_sample_rate, ++ .destroy = oss_destroy, ++ .stream_init = oss_stream_init, ++ .stream_destroy = oss_stream_destroy, ++ .stream_start = oss_stream_start, ++ .stream_stop = oss_stream_stop, ++ .stream_get_position = oss_stream_get_position, ++ .stream_get_latency = oss_stream_get_latency, ++ .stream_set_volume = oss_stream_set_volume, ++ .stream_set_panning = oss_stream_set_panning, ++ .stream_get_current_device = NULL, ++ .stream_device_destroy = NULL, ++ .stream_register_device_changed_callback = NULL ++}; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libcubeb_src_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,43 @@ +$NetBSD: patch-mozilla_media_libcubeb_src_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libcubeb/src/moz.build.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libcubeb/src/moz.build +@@ -17,6 +17,12 @@ if CONFIG['MOZ_ALSA']: + ] + DEFINES['USE_ALSA'] = True + ++if CONFIG['MOZ_OSS']: ++ SOURCES += [ ++ 'cubeb_oss.c', ++ ] ++ DEFINES['USE_OSS'] = True ++ + if CONFIG['MOZ_PULSEAUDIO']: + SOURCES += [ + 'cubeb_pulse.c', +@@ -31,7 +37,7 @@ if CONFIG['OS_ARCH'] == 'OpenBSD': + ] + DEFINES['USE_SNDIO'] = True + +-if CONFIG['OS_TARGET'] == 'Darwin': ++if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': + SOURCES += [ + 'cubeb_audiounit.c', + ] +@@ -64,6 +70,9 @@ if CONFIG['OS_TARGET'] == 'Android': + + FINAL_LIBRARY = 'gkmedias' + ++if CONFIG['MOZ_NATIVE_SPEEX']: ++ SOURCES['cubeb_resampler.cpp'].flags += CONFIG['MOZ_SPEEX_CFLAGS'] ++ + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': + if CONFIG['ANDROID_VERSION'] >= '17': + LOCAL_INCLUDES += [ +@@ -74,5 +83,6 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk + '%' + '%s/system/media/wilhelm/include' % CONFIG['ANDROID_SOURCE'], + ] + ++CFLAGS += CONFIG['MOZ_OSS_CFLAGS'] + CFLAGS += CONFIG['MOZ_ALSA_CFLAGS'] + CFLAGS += CONFIG['MOZ_PULSEAUDIO_CFLAGS'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libpng_pngpriv.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libpng_pngpriv.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libpng_pngpriv.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_media_libpng_pngpriv.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libpng/pngpriv.h.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libpng/pngpriv.h +@@ -36,6 +36,7 @@ + * still required (as of 2011-05-02.) + */ + #define _POSIX_SOURCE 1 /* Just the POSIX 1003.1 and C89 APIs */ ++#define _XOPEN_SOURCE 600 + + #ifndef PNG_VERSION_INFO_ONLY + /* Standard library headers not required by png.h: */ Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,15 @@ +$NetBSD: patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libsoundtouch/src/cpu_detect_x86.cpp.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libsoundtouch/src/cpu_detect_x86.cpp +@@ -125,7 +125,9 @@ uint detectCPUextensions(void) + #endif + + return res & ~_dwDisabledISA; +- ++#elif defined(__GNUC__) ++ // No cpuid.h --> no cpuid support ++ return 0; + #else + + /// One of these is true: Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_include_media_stagefright_foundation_AString.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_include_media_stagefright_foundation_AString.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_include_media_stagefright_foundation_AString.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_media_libstagefright_frameworks_av_include_media_stagefright_foundation_AString.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libstagefright/frameworks/av/include/media/stagefright/foundation/AString.h.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libstagefright/frameworks/av/include/media/stagefright/foundation/AString.h +@@ -18,6 +18,7 @@ + + #define A_STRING_H_ + ++#include + #include + + namespace stagefright { Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libstagefright/frameworks/av/media/libstagefright/foundation/AString.cpp.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libstagefright/frameworks/av/media/libstagefright/foundation/AString.cpp +@@ -23,6 +23,17 @@ + #include "ADebug.h" + #include "AString.h" + ++#ifdef __FreeBSD__ ++# include ++# if __FreeBSD_version < 900506 ++# undef tolower ++# endif ++#endif ++ ++#if defined(__NetBSD__) && defined(tolower) ++#undef tolower ++#endif ++ + namespace stagefright { + + // static Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,27 @@ +$NetBSD: patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libstagefright/system/core/liblog/fake_log_device.c.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libstagefright/system/core/liblog/fake_log_device.c +@@ -231,11 +231,11 @@ static void configureInitialState(const + char tagName[kMaxTagLen]; + int i, minPrio; + +- while (isspace(*tags)) ++ while (isspace((unsigned char)*tags)) + tags++; + + i = 0; +- while (*tags != '\0' && !isspace(*tags) && *tags != ':' && ++ while (*tags != '\0' && !isspace((unsigned char)*tags) && *tags != ':' && + i < kMaxTagLen) + { + tagName[i++] = *tags++; +@@ -274,7 +274,7 @@ static void configureInitialState(const + } + + tags++; +- if (*tags != '\0' && !isspace(*tags)) { ++ if (*tags != '\0' && !isspace((unsigned char)*tags)) { + TRACE("ERROR: garbage in tag env; expected whitespace\n"); + TRACE(" env='%s'\n", tags); + return; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_logprint.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_logprint.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libstagefright_system_core_liblog_logprint.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_media_libstagefright_system_core_liblog_logprint.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libstagefright/system/core/liblog/logprint.c.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libstagefright/system/core/liblog/logprint.c +@@ -103,7 +103,7 @@ static android_LogPriority filterCharToP + { + android_LogPriority pri; + +- c = tolower(c); ++ c = tolower((unsigned char)c); + + if (c >= '0' && c <= '9') { + if (c >= ('0'+ANDROID_LOG_SILENT)) { +@@ -372,7 +372,7 @@ static inline char * strip_end(char *str + { + char *end = str + strlen(str) - 1; + +- while (end >= str && isspace(*end)) ++ while (end >= str && isspace((unsigned char)*end)) + *end-- = '\0'; + return str; + } Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_arm_armcpu.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_arm_armcpu.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_arm_armcpu.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,23 @@ +$NetBSD: patch-mozilla_media_libtheora_lib_arm_armcpu.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libtheora/lib/arm/armcpu.c.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libtheora/lib/arm/armcpu.c +@@ -107,6 +107,18 @@ ogg_uint32_t oc_cpu_flags_get(void){ + return flags; + } + ++#elif defined(__NetBSD__) ++ogg_uint32_t oc_cpu_flags_get(void){ ++ ogg_uint32_t flags; ++ /* XXX ryoon: I have no idea about ARM CPU extensions detection mechanism ++ under NetBSD/earm. ++ evbearmv6hf-el machine, Raspberry Pi does not have NEON. ++ evbearmv7hf-el machine, CubieBoard2 does not have EDSP. ++ I have no idea about MEDIA. ++ So I will disable all options. */ ++ flags=0; ++ return flags; ++} + #else + /*The feature registers which can tell us what the processor supports are + accessible in priveleged modes only, so we can't have a general user-space Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_info.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_info.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_lib_info.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_libtheora_lib_info.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libtheora/lib/info.c.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libtheora/lib/info.c +@@ -29,7 +29,7 @@ + static int oc_tagcompare(const char *_s1,const char *_s2,int _n){ + int c; + for(c=0;c<_n;c++){ +- if(toupper(_s1[c])!=toupper(_s2[c]))return !0; ++ if(toupper((unsigned char)_s1[c])!=toupper((unsigned char)_s2[c]))return !0; + } + return _s1[c]!='='; + } Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtheora_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_media_libtheora_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libtheora/moz.build.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libtheora/moz.build +@@ -21,6 +21,9 @@ FINAL_LIBRARY = 'gkmedias' + # The encoder is currently not included. + DEFINES['THEORA_DISABLE_ENCODE'] = True + ++if CONFIG['MOZ_NATIVE_OGG']: ++ CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] ++ + # Suppress warnings in third-party code. + if CONFIG['GNU_CC']: + CFLAGS += ['-Wno-type-limits'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_Makefile.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_Makefile.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_Makefile.in Thu Apr 27 13:38:19 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_media_libtremor_Makefile.in,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libtremor/Makefile.in.orig 2016-04-17 13:47:46.300311547 +0000 ++++ mozilla/media/libtremor/Makefile.in +@@ -0,0 +1,9 @@ ++# This Source Code Form is subject to the terms of the Mozilla Public ++# 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 $(topsrcdir)/config/rules.mk ++ ++ifdef MOZ_NATIVE_OGG ++CFLAGS += $(MOZ_OGG_CFLAGS) ++endif Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libtremor_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,10 @@ +$NetBSD: patch-mozilla_media_libtremor_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libtremor/moz.build.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libtremor/moz.build +@@ -9,3 +9,5 @@ with Files('*'): + + DIRS += ['include/tremor', 'lib'] + ++if CONFIG['MOZ_NATIVE_OGG']: ++ CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_Makefile.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_Makefile.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_Makefile.in Thu Apr 27 13:38:19 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_media_libvorbis_Makefile.in,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libvorbis/Makefile.in.orig 2016-04-17 13:47:46.301306422 +0000 ++++ mozilla/media/libvorbis/Makefile.in +@@ -0,0 +1,9 @@ ++# This Source Code Form is subject to the terms of the Mozilla Public ++# 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 $(topsrcdir)/config/rules.mk ++ ++ifdef MOZ_NATIVE_OGG ++CFLAGS += $(MOZ_OGG_CFLAGS) ++endif Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_lib_vorbis__info.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_lib_vorbis__info.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_lib_vorbis__info.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_libvorbis_lib_vorbis__info.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libvorbis/lib/vorbis_info.c.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libvorbis/lib/vorbis_info.c +@@ -77,7 +77,7 @@ void vorbis_comment_add_tag(vorbis_comme + static int tagcompare(const char *s1, const char *s2, int n){ + int c=0; + while(c < n){ +- if(toupper(s1[c]) != toupper(s2[c])) ++ if(toupper((unsigned char)s1[c]) != toupper((unsigned char)s2[c])) + return !0; + c++; + } Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libvorbis_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,11 @@ +$NetBSD: patch-mozilla_media_libvorbis_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libvorbis/moz.build.orig 2016-04-07 21:33:21.000000000 +0000 ++++ mozilla/media/libvorbis/moz.build +@@ -56,3 +56,6 @@ FINAL_LIBRARY = 'gkmedias' + # Suppress warnings in third-party code. + if CONFIG['GNU_CC']: + CFLAGS += ['-Wno-uninitialized'] ++ ++if CONFIG['MOZ_NATIVE_OGG']: ++ CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libyuv_include_libyuv_scale__row.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libyuv_include_libyuv_scale__row.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_libyuv_include_libyuv_scale__row.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,17 @@ +$NetBSD: patch-mozilla_media_libyuv_include_libyuv_scale__row.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/libyuv/include/libyuv/scale_row.h.orig 2016-04-07 21:33:22.000000000 +0000 ++++ mozilla/media/libyuv/include/libyuv/scale_row.h +@@ -219,10 +219,10 @@ void ScaleARGBFilterCols_SSSE3(uint8* ds + void ScaleARGBColsUp2_SSE2(uint8* dst_argb, const uint8* src_argb, + int dst_width, int x, int dx); + // Row functions. +-void ScaleARGBRowDownEven_NEON(const uint8* src_argb, int src_stride, ++void ScaleARGBRowDownEven_NEON(const uint8* src_argb, ptrdiff_t src_stride, + int src_stepx, + uint8* dst_argb, int dst_width); +-void ScaleARGBRowDownEvenBox_NEON(const uint8* src_argb, int src_stride, ++void ScaleARGBRowDownEvenBox_NEON(const uint8* src_argb, ptrdiff_t src_stride, + int src_stepx, + uint8* dst_argb, int dst_width); + void ScaleARGBRowDown2_NEON(const uint8* src_ptr, ptrdiff_t src_stride, Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,18 @@ +$NetBSD: patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/mtransport/third_party/nICEr/src/util/mbslen.c.orig 2016-04-07 21:33:22.000000000 +0000 ++++ mozilla/media/mtransport/third_party/nICEr/src/util/mbslen.c +@@ -47,6 +47,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE + #define HAVE_XLOCALE + #endif + ++#ifdef __DragonFly__ ++#include ++# if __DragonFly_version > 300502 ++# define HAVE_XLOCALE ++# endif ++#endif ++ + #ifdef HAVE_XLOCALE + #include + #endif /* HAVE_XLOCALE */ Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,19 @@ +$NetBSD: patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h.orig 2016-04-07 21:33:22.000000000 +0000 ++++ mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h +@@ -30,7 +30,13 @@ + * $FreeBSD: src/sys/sys/queue.h,v 1.58 2004/04/07 04:19:49 imp Exp $ + */ + +-#ifndef _SYS_QUEUE_H_ ++#if (defined(BSD) && !defined(__OpenBSD__)) || defined(DARWIN) ++#include_next ++# if defined(__DragonFly__) ++#define STAILQ_FOREACH_SAFE STAILQ_FOREACH_MUTABLE ++#define TAILQ_FOREACH_SAFE TAILQ_FOREACH_MUTABLE ++# endif ++#elif !defined(_SYS_QUEUE_H_) + #define _SYS_QUEUE_H_ + + #include Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_openmax__dl_dl_api_armCOMM__s.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_openmax__dl_dl_api_armCOMM__s.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_openmax__dl_dl_api_armCOMM__s.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,37 @@ +$NetBSD: patch-mozilla_media_openmax__dl_dl_api_armCOMM__s.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/openmax_dl/dl/api/armCOMM_s.h.orig 2016-04-07 21:33:22.000000000 +0000 ++++ mozilla/media/openmax_dl/dl/api/armCOMM_s.h +@@ -11,6 +11,12 @@ + @// This file was originally licensed as follows. It has been + @// relicensed with permission from the copyright holders. + @// ++ ++#if defined(__ARM_EABI__) && !defined(__ARM_DWARF_EH__) ++#define UNWIND ++#else ++#define UNWIND @ ++#endif + + @// + @// File Name: armCOMM_s.h +@@ -175,7 +181,8 @@ + .object_arch armv4 + .align 2 + \name : +-.fnstart ++ .cfi_startproc ++ UNWIND .fnstart + @ Save specified R registers + _M_GETRREGLIST \rreg + _M_PUSH_RREG +@@ -202,7 +209,8 @@ + .endif + @ Restore any saved R or D registers. + _M_RET +- .fnend ++ UNWIND .fnend ++ .cfi_endproc + .endfunc + @ Reset the global stack tracking variables back to their + @ initial values. Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_signaling_test_common.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_signaling_test_common.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_signaling_test_common.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,26 @@ +$NetBSD: patch-mozilla_media_webrtc_signaling_test_common.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/signaling/test/common.build.orig 2016-04-07 21:33:22.000000000 +0000 ++++ mozilla/media/webrtc/signaling/test/common.build +@@ -99,15 +99,19 @@ if CONFIG['JS_SHARED_LIBRARY']: + + USE_LIBS += ['mozglue'] + ++OS_LIBS += CONFIG['MOZ_LIBV4L2_LIBS'] + OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] + OS_LIBS += CONFIG['REALTIME_LIBS'] + +-if CONFIG['MOZ_ALSA']: +- OS_LIBS += CONFIG['MOZ_ALSA_LIBS'] ++if CONFIG['MOZ_OSS']: ++ OS_LIBS += CONFIG['MOZ_OSS_LIBS'] + + if CONFIG['MOZ_NATIVE_JPEG']: + OS_LIBS += CONFIG['MOZ_JPEG_LIBS'] + ++if CONFIG['MOZ_NATIVE_OPUS']: ++ OS_LIBS += CONFIG['MOZ_OPUS_LIBS'] ++ + if CONFIG['MOZ_NATIVE_LIBVPX']: + OS_LIBS += CONFIG['MOZ_LIBVPX_LIBS'] + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/build/common.gypi.orig 2016-04-07 21:33:23.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/build/common.gypi +@@ -335,7 +335,7 @@ + }], + ['OS=="dragonfly" or OS=="netbsd"', { + 'defines': [ +- # doesn't support pthread_condattr_setclock ++ # doesn't support pthread_condattr_setclock, NetBSD 6 supports it. + 'WEBRTC_CLOCK_TYPE_REALTIME', + ], + }], Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi Thu Apr 27 13:38:19 2017 @@ -0,0 +1,28 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi.orig 2016-04-07 21:33:23.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi +@@ -85,19 +85,11 @@ + ], + }], + ['build_with_mozilla==1', { +- 'include_dirs': [ +- # Need Opus header files for the audio classifier. +- '<(DEPTH)/../../../media/opus/celt', +-# '<(DEPTH)/third_party/opus/src/src', ++ 'cflags_mozilla': [ ++ '$(filter -I%, $(MOZ_CELT_CFLAGS))/celt', ++ '$(MOZ_OPUS_CFLAGS)', ++ '$(filter -I%, $(MOZ_OPUS_CFLAGS))/../src', + ], +- 'direct_dependent_settings': { +- 'include_dirs': [ +- '../../../../../../media/opus/celt', +- # Need Opus header files for the audio classifier. +- '<(DEPTH)/../../../media/opus/celt', +-# '<(DEPTH)/third_party/opus/src/src', +- ], +- }, + }], + ], + 'sources': [ Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/desktop_capture/screen_capturer.cc.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/modules/desktop_capture/screen_capturer.cc +@@ -18,7 +18,7 @@ ScreenCapturer* ScreenCapturer::Create() + return Create(DesktopCaptureOptions::CreateDefault()); + } + +-#if defined(WEBRTC_LINUX) ++#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) + ScreenCapturer* ScreenCapturer::CreateWithXDamage( + bool use_update_notifications) { + DesktopCaptureOptions options; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/desktop_capture/screen_capturer.h.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/modules/desktop_capture/screen_capturer.h +@@ -63,7 +63,7 @@ class ScreenCapturer : public DesktopCap + static ScreenCapturer* Create(const DesktopCaptureOptions& options); + static ScreenCapturer* Create(); + +-#if defined(WEBRTC_LINUX) ++#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) + // Creates platform-specific capturer and instructs it whether it should use + // X DAMAGE support. + static ScreenCapturer* CreateWithXDamage(bool use_x_damage); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc Thu Apr 27 13:38:19 2017 @@ -0,0 +1,38 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc +@@ -25,10 +25,21 @@ + #else + #include + #endif ++#ifdef HAVE_LIBV4L2 ++#include ++#endif + + #include "webrtc/system_wrappers/interface/ref_count.h" + #include "webrtc/system_wrappers/interface/trace.h" + ++#ifdef HAVE_LIBV4L2 ++#define open v4l2_open ++#define close v4l2_close ++#define dup v4l2_dup ++#define ioctl v4l2_ioctl ++#define mmap v4l2_mmap ++#define munmap v4l2_munmap ++#endif + + namespace webrtc + { +@@ -136,6 +147,11 @@ int32_t DeviceInfoLinux::GetDeviceName( + memset(deviceNameUTF8, 0, deviceNameLength); + memcpy(cameraName, cap.card, sizeof(cap.card)); + ++ if (cameraName[0] == '\0') ++ { ++ sprintf(cameraName, "Camera at /dev/video%d", deviceNumber); ++ } ++ + if (deviceNameLength >= strlen(cameraName)) + { + memcpy(deviceNameUTF8, cameraName, strlen(cameraName)); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc Thu Apr 27 13:38:19 2017 @@ -0,0 +1,30 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc +@@ -25,6 +25,9 @@ + #else + #include + #endif ++#ifdef HAVE_LIBV4L2 ++#include ++#endif + + #include + +@@ -33,6 +36,15 @@ + #include "webrtc/system_wrappers/interface/ref_count.h" + #include "webrtc/system_wrappers/interface/trace.h" + ++#ifdef HAVE_LIBV4L2 ++#define open v4l2_open ++#define close v4l2_close ++#define dup v4l2_dup ++#define ioctl v4l2_ioctl ++#define mmap v4l2_mmap ++#define munmap v4l2_munmap ++#endif ++ + namespace webrtc + { + namespace videocapturemodule Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi Thu Apr 27 13:38:19 2017 @@ -0,0 +1,49 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi +@@ -7,6 +7,9 @@ + # be found in the AUTHORS file in the root of the source tree. + + { ++ 'variables': { ++ 'use_libv4l2%': 0, ++ }, + 'targets': [ + { + # Note this library is missing an implementation for the video capture. +@@ -64,8 +67,32 @@ + 'video_capture_module', + '<(webrtc_root)/common.gyp:webrtc_common', + ], +- 'cflags_mozilla': [ +- '$(NSPR_CFLAGS)', ++ 'conditions': [ ++ ['use_libv4l2==1', { ++ 'defines': [ ++ 'HAVE_LIBV4L2', ++ ], ++ 'cflags_mozilla': [ ++ '$(MOZ_LIBV4L2_CFLAGS)', ++ ], ++ 'libraries': [ ++ '-lv4l2', ++ ], ++ }], ++ ], ++ }], # linux ++ ['OS=="mac"', { ++ 'sources': [ ++ 'mac/qtkit/video_capture_qtkit.h', ++ 'mac/qtkit/video_capture_qtkit.mm', ++ 'mac/qtkit/video_capture_qtkit_info.h', ++ 'mac/qtkit/video_capture_qtkit_info.mm', ++ 'mac/qtkit/video_capture_qtkit_info_objc.h', ++ 'mac/qtkit/video_capture_qtkit_info_objc.mm', ++ 'mac/qtkit/video_capture_qtkit_objc.h', ++ 'mac/qtkit/video_capture_qtkit_objc.mm', ++ 'mac/qtkit/video_capture_qtkit_utility.h', ++ 'mac/video_capture_mac.mm', + ], + 'conditions': [ + ['include_v4l2_video_capture==1', { Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,43 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp.orig 2016-04-07 21:33:24.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp +@@ -14,6 +14,13 @@ Cygwin fix provided by: + Scott McMurray + */ + ++#ifdef __FreeBSD__ ++# include ++# if __FreeBSD_version < 900506 ++# define getchar boost_getchar ++# endif ++#endif ++ + #ifndef BOOST_SPREAD_SORT_H + #define BOOST_SPREAD_SORT_H + #include +@@ -21,10 +28,24 @@ Scott McMurray + #include + #include "webrtc/system_wrappers/source/spreadsortlib/constants.hpp" + ++#ifdef __FreeBSD__ ++# include ++# if __FreeBSD_version < 900506 ++# define getchar boost_getchar ++# endif ++#endif ++ + #ifdef getchar + #undef getchar + #endif + ++#ifdef __FreeBSD__ ++# include ++# if __FreeBSD_version < 900506 ++# define getchar boost_getchar ++# endif ++#endif ++ + namespace boost { + namespace detail { + //This only works on unsigned data types Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_build_mozjemalloc__compat.c diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_build_mozjemalloc__compat.c:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_build_mozjemalloc__compat.c Thu Apr 27 13:38:19 2017 @@ -0,0 +1,53 @@ +$NetBSD: patch-mozilla_memory_build_mozjemalloc__compat.c,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/memory/build/mozjemalloc_compat.c.orig 2016-04-07 21:33:25.000000000 +0000 ++++ mozilla/memory/build/mozjemalloc_compat.c +@@ -131,6 +131,48 @@ compute_bin_unused_and_bookkeeping(jemal + stats->bin_unused = bin_unused; + } + ++static size_t ++compute_bin_unused(unsigned int narenas) ++{ ++ size_t bin_unused = 0; ++ ++ uint32_t nregs; // number of regions per run in the j-th bin ++ size_t reg_size; // size of regions served by the j-th bin ++ size_t curruns; // number of runs belonging to a bin ++ size_t curregs; // number of allocated regions in a bin ++ ++ unsigned int nbins; // number of bins per arena ++ unsigned int i, j; ++ ++ // curruns and curregs are not defined for uninitialized arenas, ++ // so we skip them when computing bin_unused. However, initialized ++ // arenas are not guaranteed to be sequential, so we must test each ++ // one when iterating below. ++ bool initialized[100]; // should be narenas, but MSVC doesn't have VLAs ++ size_t isz = sizeof(initialized) / sizeof(initialized[0]); ++ ++ je_(mallctl)("arenas.initialized", initialized, &isz, NULL, 0); ++ CTL_GET("arenas.nbins", nbins); ++ ++ for (j = 0; j < nbins; j++) { ++ CTL_I_GET("arenas.bin.0.nregs", nregs, j); ++ CTL_I_GET("arenas.bin.0.size", reg_size, j); ++ ++ for (i = 0; i < narenas; i++) { ++ if (!initialized[i]) { ++ continue; ++ } ++ ++ CTL_IJ_GET("stats.arenas.0.bins.0.curruns", curruns, i, j); ++ CTL_IJ_GET("stats.arenas.0.bins.0.curregs", curregs, i, j); ++ ++ bin_unused += (nregs * curruns - curregs) * reg_size; ++ } ++ } ++ ++ return bin_unused; ++} ++ + MOZ_JEMALLOC_API void + jemalloc_stats_impl(jemalloc_stats_t *stats) + { Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,16 @@ +$NetBSD: patch-mozilla_memory_mozalloc_mozalloc__abort.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/memory/mozalloc/mozalloc_abort.cpp.orig 2016-04-07 21:33:25.000000000 +0000 ++++ mozilla/memory/mozalloc/mozalloc_abort.cpp +@@ -68,7 +68,11 @@ void fillAbortMessage(char (&msg)[N], ui + // + // That segmentation fault will be interpreted as another bug by ASan and as a + // result, ASan will just exit(1) instead of aborting. ++#if defined(SOLARIS) ++void std::abort(void) ++#else + void abort(void) ++#endif + { + #ifdef MOZ_WIDGET_ANDROID + char msg[64] = {}; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_volatile_VolatileBufferOSX.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_volatile_VolatileBufferOSX.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_memory_volatile_VolatileBufferOSX.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,19 @@ +$NetBSD: patch-mozilla_memory_volatile_VolatileBufferOSX.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/memory/volatile/VolatileBufferOSX.cpp.orig 2016-04-07 21:33:25.000000000 +0000 ++++ mozilla/memory/volatile/VolatileBufferOSX.cpp +@@ -47,7 +47,14 @@ VolatileBuffer::Init(size_t aSize, size_ + } + + heap_alloc: ++#if defined(HAVE_POSIX_MEMALIGN) + (void)moz_posix_memalign(&mBuf, aAlignment, aSize); ++#else ++ MOZ_RELEASE_ASSERT( ++ !(aAlignment > (size_t)getpagesize()), ++ "Cannot fallback to valloc(3): alignment is larger than the page size"); ++ mBuf = valloc(aSize); ++#endif + mHeap = true; + return !!mBuf; + } Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Attributes.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Attributes.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Attributes.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,30 @@ +$NetBSD: patch-mozilla_mfbt_Attributes.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/mfbt/Attributes.h.orig 2016-04-07 21:33:25.000000000 +0000 ++++ mozilla/mfbt/Attributes.h +@@ -50,6 +50,7 @@ + * don't indicate support for them here, due to + * http://stackoverflow.com/questions/20498142/visual-studio-2013-explicit-keyword-bug + */ ++# define MOZ_HAVE_CXX11_ALIGNAS + # define MOZ_HAVE_NEVER_INLINE __declspec(noinline) + # define MOZ_HAVE_NORETURN __declspec(noreturn) + # if _MSC_VER >= 1900 +@@ -75,6 +76,9 @@ + # ifndef __has_extension + # define __has_extension __has_feature /* compatibility, for older versions of clang */ + # endif ++# if __has_extension(cxx_alignas) ++# define MOZ_HAVE_CXX11_ALIGNAS ++# endif + # if __has_extension(cxx_constexpr) + # define MOZ_HAVE_CXX11_CONSTEXPR + # endif +@@ -91,6 +95,7 @@ + # if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L + # define MOZ_HAVE_CXX11_CONSTEXPR + # if MOZ_GCC_VERSION_AT_LEAST(4, 8, 0) ++# define MOZ_HAVE_CXX11_ALIGNAS + # define MOZ_HAVE_CXX11_CONSTEXPR_IN_TEMPLATES + # endif + # define MOZ_HAVE_EXPLICIT_CONVERSION Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Poison.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Poison.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mfbt_Poison.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,16 @@ +$NetBSD: patch-mozilla_mfbt_Poison.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/mfbt/Poison.cpp.orig 2016-04-07 21:33:25.000000000 +0000 ++++ mozilla/mfbt/Poison.cpp +@@ -129,7 +129,11 @@ ReleaseRegion(void* aRegion, uintptr_t a + static bool + ProbeRegion(uintptr_t aRegion, uintptr_t aSize) + { ++#if !defined(__sun__) + if (madvise(reinterpret_cast(aRegion), aSize, MADV_NORMAL)) { ++#else ++ if (posix_madvise(reinterpret_cast(aRegion), aSize, MADV_NORMAL)) { ++#endif + return true; + } else { + return false; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libjar_nsZipArchive.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libjar_nsZipArchive.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libjar_nsZipArchive.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,15 @@ +$NetBSD: patch-mozilla_modules_libjar_nsZipArchive.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/modules/libjar/nsZipArchive.cpp.orig 2016-04-07 21:33:29.000000000 +0000 ++++ mozilla/modules/libjar/nsZipArchive.cpp +@@ -626,7 +626,9 @@ MOZ_WIN_MEM_TRY_BEGIN + // Success means optimized jar layout from bug 559961 is in effect + uint32_t readaheadLength = xtolong(startp); + if (readaheadLength) { +-#if defined(XP_UNIX) ++#if defined(OS_SOLARIS) ++ posix_madvise(const_cast(startp), readaheadLength, POSIX_MADV_WILLNEED); ++#elif defined(XP_UNIX) + madvise(const_cast(startp), readaheadLength, MADV_WILLNEED); + #elif defined(XP_WIN) + if (aFd) { Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libpref_init_all.js diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libpref_init_all.js:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_modules_libpref_init_all.js Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_modules_libpref_init_all.js,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/modules/libpref/init/all.js.orig 2016-04-07 21:33:29.000000000 +0000 ++++ mozilla/modules/libpref/init/all.js +@@ -4332,7 +4332,7 @@ pref("layers.max-active", -1); + pref("layers.tiles.adjust", true); + + // Set the default values, and then override per-platform as needed +-pref("layers.offmainthreadcomposition.enabled", true); ++pref("layers.offmainthreadcomposition.enabled", false); + // Compositor target frame rate. NOTE: If vsync is enabled the compositor + // frame rate will still be capped. + // -1 -> default (match layout.frame_rate or 60 FPS) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,57 @@ +$NetBSD: patch-mozilla_mozglue_build_arm.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/mozglue/build/arm.cpp.orig 2016-04-07 21:33:29.000000000 +0000 ++++ mozilla/mozglue/build/arm.cpp +@@ -102,10 +102,13 @@ check_neon(void) + } + # endif // !MOZILLA_PRESUME_NEON + +-# elif defined(__linux__) || defined(ANDROID) ++# elif defined(__linux__) || defined(ANDROID) || defined(__NetBSD__) + # include + # include + # include ++# if defined(__NetBSD__) ++# include ++# endif + + enum{ + MOZILLA_HAS_EDSP_FLAG=1, +@@ -114,6 +117,29 @@ enum{ + MOZILLA_HAS_NEON_FLAG=8 + }; + ++# if defined(__NetBSD__) ++static unsigned ++get_arm_cpu_flags(void) ++{ ++ unsigned flags = 0; ++ size_t len; ++ int flag; ++ ++ len = sizeof(flag); ++ if (sysctlbyname("machdep.simdex_present", &flag, &len, NULL, 0) == 0 && flag) { ++ flags |= MOZILLA_HAS_ARMV6_FLAG; ++ flags |= MOZILLA_HAS_EDSP_FLAG; ++ } ++ ++ len = sizeof(flag); ++ if (sysctlbyname("machdep.neon_present", &flag, &len, NULL, 0) == 0 && flag) { ++ flags |= MOZILLA_HAS_ARMV7_FLAG; ++ flags |= MOZILLA_HAS_NEON_FLAG; ++ } ++ ++ return flags; ++} ++# else + static unsigned + get_arm_cpu_flags(void) + { +@@ -178,6 +204,7 @@ get_arm_cpu_flags(void) + } + return flags; + } ++# endif + + // Cache a local copy so we only have to read /proc/cpuinfo once. + static unsigned arm_cpu_flags = get_arm_cpu_flags(); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_mozglue_build_arm.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_mozglue_build_arm.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/mozglue/build/arm.h.orig 2016-04-07 21:33:29.000000000 +0000 ++++ mozilla/mozglue/build/arm.h +@@ -76,7 +76,7 @@ + # endif + + // Currently we only have CPU detection for Linux via /proc/cpuinfo +-# if defined(__linux__) || defined(ANDROID) ++# if defined(__linux__) || defined(ANDROID) || defined(__NetBSD__) + # define MOZILLA_ARM_HAVE_CPUID_DETECTION 1 + # endif + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_netwerk_dns_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_netwerk_dns_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_netwerk_dns_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_netwerk_dns_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/netwerk/dns/moz.build.orig 2016-04-07 21:33:29.000000000 +0000 ++++ mozilla/netwerk/dns/moz.build +@@ -66,6 +66,9 @@ LOCAL_INCLUDES += [ + '/netwerk/base', + ] + ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk' and CONFIG['ANDROID_VERSION'] > '19': + LOCAL_INCLUDES += ['%' + '%s/bionic/libc/dns/include' % CONFIG['ANDROID_SOURCE']] + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_storage_SQLiteMutex.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_storage_SQLiteMutex.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_storage_SQLiteMutex.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,24 @@ +$NetBSD: patch-mozilla_storage_SQLiteMutex.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/storage/SQLiteMutex.h.orig 2016-04-07 21:33:16.000000000 +0000 ++++ mozilla/storage/SQLiteMutex.h +@@ -107,15 +107,19 @@ public: + void assertCurrentThreadOwns() + { + NS_ASSERTION(mMutex, "No mutex associated with this wrapper!"); ++#if 0 + NS_ASSERTION(sqlite3_mutex_held(mMutex), + "Mutex is not held, but we expect it to be!"); ++#endif + } + + void assertNotCurrentThreadOwns() + { + NS_ASSERTION(mMutex, "No mutex associated with this wrapper!"); ++#if 0 + NS_ASSERTION(sqlite3_mutex_notheld(mMutex), + "Mutex is held, but we expect it to not be!"); ++#endif + } + #endif // ifndef DEBUG + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,20 @@ +$NetBSD: patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/components/protobuf/src/google/protobuf/stubs/atomicops.h.orig 2016-04-07 21:33:32.000000000 +0000 ++++ mozilla/toolkit/components/protobuf/src/google/protobuf/stubs/atomicops.h +@@ -76,9 +76,15 @@ typedef intptr_t Atomic64; + #endif + #endif + ++#if defined(__NetBSD__) && defined(__arm__) ++// NetBSD/arm uses long for intptr_t, which fails -fpermissive checks. So ++// explicitly use int32 here instead. ++typedef int32 AtomicWord; ++#else + // Use AtomicWord for a machine-sized pointer. It will use the Atomic32 or + // Atomic64 routines below, depending on your architecture. + typedef intptr_t AtomicWord; ++#endif + + // Atomically execute: + // result = *ptr; Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/components/protobuf/src/google/protobuf/stubs/platform_macros.h.orig 2016-04-07 21:33:32.000000000 +0000 ++++ mozilla/toolkit/components/protobuf/src/google/protobuf/stubs/platform_macros.h +@@ -67,7 +67,7 @@ + #define GOOGLE_PROTOBUF_ARCH_32_BIT 1 + #elif defined(sparc) + #define GOOGLE_PROTOBUF_ARCH_SPARC 1 +-#ifdef SOLARIS_64BIT_ENABLED ++#if (defined(sun) && defined(SOLARIS_64BIT_ENABLED)) || __LP64__ + #define GOOGLE_PROTOBUF_ARCH_64_BIT 1 + #else + #define GOOGLE_PROTOBUF_ARCH_32_BIT 1 Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_library_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_library_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_library_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,69 @@ +$NetBSD: patch-mozilla_toolkit_library_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/library/moz.build.orig 2016-04-07 21:33:33.000000000 +0000 ++++ mozilla/toolkit/library/moz.build +@@ -211,6 +211,7 @@ if CONFIG['OS_ARCH'] == 'Linux' and CONF + ] + + OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS'] ++OS_LIBS += CONFIG['MOZ_LIBV4L2_LIBS'] + OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] + + if CONFIG['MOZ_NATIVE_JPEG']: +@@ -222,6 +223,30 @@ if CONFIG['MOZ_NATIVE_PNG']: + if CONFIG['MOZ_NATIVE_HUNSPELL']: + OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS'] + ++if CONFIG['MOZ_NATIVE_OGG']: ++ OS_LIBS += CONFIG['MOZ_OGG_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_THEORA']: ++ OS_LIBS += CONFIG['MOZ_THEORA_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_VORBIS']: ++ OS_LIBS += CONFIG['MOZ_VORBIS_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_TREMOR']: ++ OS_LIBS += CONFIG['MOZ_TREMOR_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_CELT']: ++ OS_LIBS += CONFIG['MOZ_CELT_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_OPUS']: ++ OS_LIBS += CONFIG['MOZ_OPUS_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_SPEEX']: ++ OS_LIBS += CONFIG['MOZ_SPEEX_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_SOUNDTOUCH']: ++ OS_LIBS += CONFIG['MOZ_SOUNDTOUCH_LIBS'] ++ + if CONFIG['MOZ_NATIVE_LIBEVENT']: + OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS'] + +@@ -231,8 +256,14 @@ if CONFIG['MOZ_NATIVE_LIBVPX']: + if not CONFIG['MOZ_TREE_PIXMAN']: + OS_LIBS += CONFIG['MOZ_PIXMAN_LIBS'] + +-if CONFIG['MOZ_ALSA']: +- OS_LIBS += CONFIG['MOZ_ALSA_LIBS'] ++if CONFIG['MOZ_NATIVE_GRAPHITE2']: ++ OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS'] ++ ++if CONFIG['MOZ_OSS']: ++ OS_LIBS += CONFIG['MOZ_OSS_LIBS'] + + if CONFIG['HAVE_CLOCK_MONOTONIC']: + OS_LIBS += CONFIG['REALTIME_LIBS'] +@@ -368,7 +399,7 @@ if CONFIG['OS_ARCH'] == 'WINNT': + if CONFIG['MOZ_ENABLE_QT']: + OS_LIBS += CONFIG['XEXT_LIBS'] + +-if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa' and CONFIG['MOZ_GSTREAMER']: ++if CONFIG['OS_ARCH'] == 'Darwin' and CONFIG['MOZ_GSTREAMER']: + OS_LIBS += CONFIG['GSTREAMER_LIBS'] + + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk Thu Apr 27 13:38:19 2017 @@ -0,0 +1,15 @@ +$NetBSD: patch-mozilla_toolkit_mozapps_installer_packager.mk,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/mozapps/installer/packager.mk.orig 2017-03-05 20:58:33.000000000 +0000 ++++ mozilla/toolkit/mozapps/installer/packager.mk +@@ -132,8 +132,8 @@ endif + (cd $(DESTDIR)$(installdir) && tar -xf -) + $(NSINSTALL) -D $(DESTDIR)$(bindir) + $(RM) -f $(DESTDIR)$(bindir)/$(MOZ_APP_NAME) +- ln -s $(installdir)/$(MOZ_APP_NAME) $(DESTDIR)$(bindir) +-ifdef INSTALL_SDK # Here comes the hard part ++ ln -s $(installdir)/$(MOZ_APP_NAME) $(DESTDIR)$(bindir)/${MOZILLA_PKG_NAME} ++ifeq ($(MOZ_APP_NAME),xulrunner) + $(NSINSTALL) -D $(DESTDIR)$(includedir) + (cd $(DIST)/include && $(TAR) $(TAR_CREATE_FLAGS) - .) | \ + (cd $(DESTDIR)$(includedir) && tar -xf -) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk.orig diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk.orig:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_mozapps_installer_packager.mk.orig Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_toolkit_mozapps_installer_packager.mk.orig,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/mozapps/installer/packager.mk.orig 2016-04-07 21:33:34.000000000 +0000 ++++ mozilla/toolkit/mozapps/installer/packager.mk +@@ -133,7 +133,7 @@ endif + $(NSINSTALL) -D $(DESTDIR)$(bindir) + $(RM) -f $(DESTDIR)$(bindir)/$(MOZ_APP_NAME) + ln -s $(installdir)/$(MOZ_APP_NAME) $(DESTDIR)$(bindir) +-ifdef INSTALL_SDK # Here comes the hard part ++ifeq ($(MOZ_APP_NAME),xulrunner) + $(NSINSTALL) -D $(DESTDIR)$(includedir) + (cd $(DIST)/include && $(TAR) $(TAR_CREATE_FLAGS) - .) | \ + (cd $(DESTDIR)$(includedir) && tar -xf -) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_glxtest.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_glxtest.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_glxtest.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_toolkit_xre_glxtest.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/xre/glxtest.cpp.orig 2016-04-07 21:33:34.000000000 +0000 ++++ mozilla/toolkit/xre/glxtest.cpp +@@ -163,7 +163,7 @@ void glxtest() + fatal_error("The MOZ_AVOID_OPENGL_ALTOGETHER environment variable is defined"); + + ///// Open libGL and load needed symbols ///// +-#ifdef __OpenBSD__ ++#if defined(__OpenBSD__) || defined(__NetBSD__) + #define LIBGL_FILENAME "libGL.so" + #else + #define LIBGL_FILENAME "libGL.so.1" Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsAppRunner.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsAppRunner.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsAppRunner.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,31 @@ +$NetBSD: patch-mozilla_toolkit_xre_nsAppRunner.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/xre/nsAppRunner.cpp.orig 2016-04-07 21:33:34.000000000 +0000 ++++ mozilla/toolkit/xre/nsAppRunner.cpp +@@ -1893,6 +1893,18 @@ static nsresult LaunchChild(nsINativeApp + if (NS_FAILED(rv)) + return rv; + ++#if defined(XP_DARWIN) ++ pid_t pid = vfork(); ++ if (pid == 0) { // child ++ if (execv(exePath.get(), gRestartArgv) == -1) { ++ _exit(1); ++ } ++ } ++ else if (pid == -1) { ++ return NS_ERROR_FAILURE; ++ } ++#else ++ + #if defined(XP_UNIX) + if (execv(exePath.get(), gRestartArgv) == -1) + return NS_ERROR_FAILURE; +@@ -1906,6 +1918,7 @@ static nsresult LaunchChild(nsINativeApp + if (failed || exitCode) + return NS_ERROR_FAILURE; + #endif // XP_UNIX ++#endif // XP_DARWIN + #endif // WP_WIN + #endif // WP_MACOSX + #endif // MOZ_WIDGET_ANDROID Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/toolkit/xre/nsEmbedFunctions.cpp.orig 2016-04-07 21:33:34.000000000 +0000 ++++ mozilla/toolkit/xre/nsEmbedFunctions.cpp +@@ -259,7 +259,7 @@ XRE_SetRemoteExceptionHandler(const char + { + #if defined(XP_WIN) || defined(XP_MACOSX) + return CrashReporter::SetRemoteExceptionHandler(nsDependentCString(aPipe)); +-#elif defined(OS_LINUX) ++#elif defined(OS_LINUX) || defined(OS_SOLARIS) + return CrashReporter::SetRemoteExceptionHandler(); + #else + # error "OOP crash reporter unsupported on this platform" +@@ -449,7 +449,7 @@ XRE_InitChildProcess(int aArgc, + // Bug 684322 will add better visibility into this condition + NS_WARNING("Could not setup crash reporting\n"); + } +-# elif defined(OS_LINUX) ++# elif defined(OS_LINUX) || defined(OS_SOLARIS) + // on POSIX, |crashReporterArg| is "true" if crash reporting is + // enabled, false otherwise + if (0 != strcmp("false", crashReporterArg) && Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_webapprt_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_webapprt_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_webapprt_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_webapprt_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/webapprt/moz.build.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/webapprt/moz.build +@@ -9,7 +9,7 @@ with Files('**'): + + if CONFIG['OS_ARCH'] == 'WINNT': + DIRS += ['win'] +-elif CONFIG['OS_ARCH'] == 'Darwin': ++elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': + DIRS += ['mac'] + elif CONFIG['MOZ_ENABLE_GTK']: + DIRS += ['gtk'] Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_base_nscore.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_base_nscore.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_base_nscore.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xpcom_base_nscore.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/base/nscore.h.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/base/nscore.h +@@ -76,7 +76,7 @@ + * NS_HIDDEN_(int) NS_FASTCALL func2(char *foo); + */ + +-#if defined(__i386__) && defined(__GNUC__) ++#if defined(__i386__) && defined(__GNUC__) && !(defined(__clang__) && __clang_major__ == 3 && __clang_minor__ == 4 && __clang_patchlevel__ == 0) + #define NS_FASTCALL __attribute__ ((regparm (3), stdcall)) + #define NS_CONSTRUCTOR_FASTCALL __attribute__ ((regparm (3), stdcall)) + #elif defined(XP_WIN) && !defined(_WIN64) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,55 @@ +$NetBSD: patch-mozilla_xpcom_build_PoisonIOInterposer.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/build/PoisonIOInterposer.h.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/build/PoisonIOInterposer.h +@@ -36,7 +36,7 @@ void MozillaUnRegisterDebugFILE(FILE* aF + + MOZ_END_EXTERN_C + +-#if defined(XP_WIN) || defined(XP_MACOSX) ++#if defined(XP_WIN) || defined(XP_DARWIN) + + #ifdef __cplusplus + namespace mozilla { +@@ -54,7 +54,7 @@ bool IsDebugFile(intptr_t aFileID); + */ + void InitPoisonIOInterposer(); + +-#ifdef XP_MACOSX ++#ifdef XP_DARWIN + /** + * Check that writes are dirty before reporting I/O (Mac OS X only) + * This is necessary for late-write checks on Mac OS X, but reading the buffer +@@ -62,7 +62,7 @@ void InitPoisonIOInterposer(); + * to do this for everything else that uses + */ + void OnlyReportDirtyWrites(); +-#endif /* XP_MACOSX */ ++#endif /* XP_DARWIN */ + + /** + * Clear IO poisoning, this is only safe to do on the main-thread when no other +@@ -73,19 +73,19 @@ void ClearPoisonIOInterposer(); + } // namespace mozilla + #endif /* __cplusplus */ + +-#else /* XP_WIN || XP_MACOSX */ ++#else /* XP_WIN || XP_DARWIN */ + + #ifdef __cplusplus + namespace mozilla { + inline bool IsDebugFile(intptr_t aFileID) { return true; } + inline void InitPoisonIOInterposer() {} + inline void ClearPoisonIOInterposer() {} +-#ifdef XP_MACOSX ++#ifdef XP_DARWIN + inline void OnlyReportDirtyWrites() {} +-#endif /* XP_MACOSX */ ++#endif /* XP_DARWIN */ + } // namespace mozilla + #endif /* __cplusplus */ + +-#endif /* XP_WIN || XP_MACOSX */ ++#endif /* XP_WIN || XP_DARWIN */ + + #endif // mozilla_PoisonIOInterposer_h Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_components_Module.h diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_components_Module.h:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_components_Module.h Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xpcom_components_Module.h,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/components/Module.h.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/components/Module.h +@@ -125,7 +125,7 @@ struct Module + # define NSMODULE_SECTION __declspec(allocate(".kPStaticModules$M"), dllexport) + # elif defined(__GNUC__) + # if defined(__ELF__) +-# define NSMODULE_SECTION __attribute__((section(".kPStaticModules"), visibility("protected"))) ++# define NSMODULE_SECTION __attribute__((section(".kPStaticModules"), visibility("default"))) + # elif defined(__MACH__) + # define NSMODULE_SECTION __attribute__((section("__DATA, .kPStaticModules"), visibility("default"))) + # elif defined (_WIN32) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in Thu Apr 27 13:38:19 2017 @@ -0,0 +1,48 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/Makefile.in.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/Makefile.in +@@ -42,6 +42,43 @@ ifeq ($(OS_ARCH),AIX) + CXXFLAGS := $(filter-out $(MOZ_OPTIMIZE_FLAGS), $(CXXFLAGS)) + endif + ++###################################################################### ++# SPARC ++###################################################################### ++# ++# Linux/SPARC ++# ++ifeq ($(OS_ARCH),Linux) ++ifneq (,$(findstring sparc,$(OS_TEST))) ++ASFILES := xptcinvoke_asm_sparc_linux_GCC3.s xptcstubs_asm_sparc_solaris.s ++endif ++endif ++# ++# NetBSD/SPARC ++# ++ifeq ($(OS_ARCH)$(OS_TEST),NetBSDsparc) ++ASFILES := xptcinvoke_asm_sparc_netbsd.s xptcstubs_asm_sparc_netbsd.s ++endif ++# ++# OpenBSD/SPARC ++# ++ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDsparc) ++ASFILES := xptcinvoke_asm_sparc_openbsd.s xptcstubs_asm_sparc_openbsd.s ++endif ++# ++# OpenBSD/SPARC64 ++# ++ifneq (,$(filter OpenBSDsparc64 FreeBSDsparc64,$(OS_ARCH)$(OS_TEST))) ++ASFILES := xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparc64_openbsd.s ++endif ++# ++# NetBSD/SPARC64 ++# ++ifeq ($(OS_ARCH)$(OS_TEST),NetBSDsparc64) ++CPPSRCS := xptcinvoke_sparc64_netbsd.cpp xptcstubs_sparc64_openbsd.cpp ++ASFILES := xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparc64_netbsd.s ++endif ++ + include $(topsrcdir)/config/rules.mk + + ifeq ($(OS_ARCH),Linux) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build Thu Apr 27 13:38:19 2017 @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/moz.build.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/moz.build +@@ -9,7 +9,7 @@ if CONFIG['OS_ARCH'] == 'Darwin': + 'xptcinvoke_darwin.cpp', + 'xptcstubs_darwin.cpp', + ] +- if CONFIG['OS_TEST'] == 'powerpc': ++ if CONFIG['OS_TEST'] == 'ppc': + SOURCES += [ + '!xptcstubs_asm_ppc_darwin.s', + 'xptcinvoke_asm_ppc_rhapsody.s', +@@ -24,7 +24,7 @@ if CONFIG['OS_ARCH'] == 'GNU': + 'xptcstubs_gcc_x86_unix.cpp' + ] + +-if CONFIG['OS_ARCH'] in ('Linux', 'FreeBSD', 'NetBSD', 'OpenBSD') or \ ++if CONFIG['OS_ARCH'] in ('Linux', 'FreeBSD', 'NetBSD', 'OpenBSD', 'DragonFly') or \ + CONFIG['OS_ARCH'].startswith('GNU_'): + if CONFIG['OS_TEST'] == 'x86_64': + SOURCES += [ Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,527 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_arm_netbsd.cpp.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_arm_netbsd.cpp +@@ -7,82 +7,92 @@ + + #include "xptcprivate.h" + +-// Remember that these 'words' are 32bit DWORDS ++#include "mozilla/Compiler.h" + +-static uint32_t +-invoke_count_words(uint32_t paramCount, nsXPTCVariant* s) ++#ifndef __ARM_PCS_VFP ++ ++/* This function copies a 64-bits word from dw to the given pointer in ++ * a buffer delimited by start and end, possibly wrapping around the ++ * buffer boundaries, and/or properly aligning the data at 64-bits word ++ * boundaries (for EABI). ++ * start and end are both assumed to be 64-bits aligned. ++ * Returns a pointer to the second 32-bits word copied (to accomodate ++ * the invoke_copy_to_stack loop). ++ */ ++static uint32_t * ++copy_double_word(uint32_t *start, uint32_t *current, uint32_t *end, uint64_t *dw) + { +- uint32_t result = 0; +- for(uint32_t i = 0; i < paramCount; i++, s++) +- { +- if(s->IsPtrData()) +- { +- result++; +- continue; +- } +- switch(s->type) +- { +- case nsXPTType::T_I8 : +- case nsXPTType::T_I16 : +- case nsXPTType::T_I32 : +- result++; +- break; +- case nsXPTType::T_I64 : +- result+=2; +- break; +- case nsXPTType::T_U8 : +- case nsXPTType::T_U16 : +- case nsXPTType::T_U32 : +- result++; +- break; +- case nsXPTType::T_U64 : +- result+=2; +- break; +- case nsXPTType::T_FLOAT : +- result++; +- break; +- case nsXPTType::T_DOUBLE : +- result+=2; +- break; +- case nsXPTType::T_BOOL : +- case nsXPTType::T_CHAR : +- case nsXPTType::T_WCHAR : +- result++; +- break; +- default: +- // all the others are plain pointer types +- result++; +- break; +- } ++#ifdef __ARM_EABI__ ++ /* Aligning the pointer for EABI */ ++ current = (uint32_t *)(((uint32_t)current + 7) & ~7); ++ /* Wrap when reaching the end of the buffer */ ++ if (current == end) current = start; ++#else ++ /* On non-EABI, 64-bits values are not aligned and when we reach the end ++ * of the buffer, we need to write half of the data at the end, and the ++ * other half at the beginning. */ ++ if (current == end - 1) { ++ *current = ((uint32_t*)dw)[0]; ++ *start = ((uint32_t*)dw)[1]; ++ return start; + } +- return result; ++#endif ++ ++ *((uint64_t*) current) = *dw; ++ return current + 1; + } + +-static void +-invoke_copy_to_stack(uint32_t* d, uint32_t paramCount, nsXPTCVariant* s) ++/* See stack_space comment in NS_InvokeByIndex to see why this needs not to ++ * be static on DEBUG builds. */ ++#ifndef DEBUG ++static ++#endif ++void ++invoke_copy_to_stack(uint32_t* stk, uint32_t *end, ++ uint32_t paramCount, nsXPTCVariant* s) + { ++ /* The stack buffer is 64-bits aligned. The end argument points to its end. ++ * The caller is assumed to create a stack buffer of at least four 32-bits ++ * words. ++ * We use the last three 32-bit words to store the values for r1, r2 and r3 ++ * for the method call, i.e. the first words for arguments passing. ++ */ ++ uint32_t *d = end - 3; + for(uint32_t i = 0; i < paramCount; i++, d++, s++) + { ++ /* Wrap when reaching the end of the stack buffer */ ++ if (d == end) d = stk; ++ NS_ASSERTION(d >= stk && d < end, ++ "invoke_copy_to_stack is copying outside its given buffer"); + if(s->IsPtrData()) + { + *((void**)d) = s->ptr; + continue; + } ++ // According to the ARM EABI, integral types that are smaller than a word ++ // are to be sign/zero-extended to a full word and treated as 4-byte values. ++ + switch(s->type) + { +- case nsXPTType::T_I8 : *((int8_t*) d) = s->val.i8; break; +- case nsXPTType::T_I16 : *((int16_t*) d) = s->val.i16; break; ++ case nsXPTType::T_I8 : *((int32_t*) d) = s->val.i8; break; ++ case nsXPTType::T_I16 : *((int32_t*) d) = s->val.i16; break; + case nsXPTType::T_I32 : *((int32_t*) d) = s->val.i32; break; +- case nsXPTType::T_I64 : *((int64_t*) d) = s->val.i64; d++; break; +- case nsXPTType::T_U8 : *((uint8_t*) d) = s->val.u8; break; +- case nsXPTType::T_U16 : *((uint16_t*)d) = s->val.u16; break; ++ case nsXPTType::T_I64 : ++ d = copy_double_word(stk, d, end, (uint64_t *)&s->val.i64); ++ break; ++ case nsXPTType::T_U8 : *((uint32_t*)d) = s->val.u8; break; ++ case nsXPTType::T_U16 : *((uint32_t*)d) = s->val.u16; break; + case nsXPTType::T_U32 : *((uint32_t*)d) = s->val.u32; break; +- case nsXPTType::T_U64 : *((uint64_t*)d) = s->val.u64; d++; break; ++ case nsXPTType::T_U64 : ++ d = copy_double_word(stk, d, end, (uint64_t *)&s->val.u64); ++ break; + case nsXPTType::T_FLOAT : *((float*) d) = s->val.f; break; +- case nsXPTType::T_DOUBLE : *((double*) d) = s->val.d; d++; break; +- case nsXPTType::T_BOOL : *((bool*) d) = s->val.b; break; +- case nsXPTType::T_CHAR : *((char*) d) = s->val.c; break; +- case nsXPTType::T_WCHAR : *((wchar_t*) d) = s->val.wc; break; ++ case nsXPTType::T_DOUBLE : ++ d = copy_double_word(stk, d, end, (uint64_t *)&s->val.d); ++ break; ++ case nsXPTType::T_BOOL : *((int32_t*) d) = s->val.b; break; ++ case nsXPTType::T_CHAR : *((int32_t*) d) = s->val.c; break; ++ case nsXPTType::T_WCHAR : *((int32_t*) d) = s->val.wc; break; + default: + // all the others are plain pointer types + *((void**)d) = s->val.p; +@@ -91,47 +101,27 @@ invoke_copy_to_stack(uint32_t* d, uint32 + } + } + +-extern "C" +-struct my_params_struct { +- nsISupports* that; +- uint32_t Index; +- uint32_t Count; +- nsXPTCVariant* params; +- uint32_t fn_count; +- uint32_t fn_copy; +-}; ++typedef nsresult (*vtable_func)(nsISupports *, uint32_t, uint32_t, uint32_t); + +-XPTC_PUBLIC_API(nsresult) +-XPTC_InvokeByIndex(nsISupports* that, uint32_t methodIndex, ++EXPORT_XPCOM_API(nsresult) ++NS_InvokeByIndex(nsISupports* that, uint32_t methodIndex, + uint32_t paramCount, nsXPTCVariant* params) + { +- uint32_t result; +- struct my_params_struct my_params; +- my_params.that = that; +- my_params.Index = methodIndex; +- my_params.Count = paramCount; +- my_params.params = params; +- my_params.fn_copy = (uint32_t) &invoke_copy_to_stack; +- my_params.fn_count = (uint32_t) &invoke_count_words; + + /* This is to call a given method of class that. + * The parameters are in params, the number is in paramCount. + * The routine will issue calls to count the number of words + * required for argument passing and to copy the arguments to + * the stack. +- * Since APCS passes the first 3 params in r1-r3, we need to +- * load the first three words from the stack and correct the stack +- * pointer (sp) in the appropriate way. This means: +- * +- * 1.) more than 3 arguments: load r1-r3, correct sp and remember No. +- * of bytes left on the stack in r4 +- * +- * 2.) <= 2 args: load r1-r3 (we won't be causing a stack overflow I hope), +- * restore sp as if nothing had happened and set the marker r4 to zero. +- * +- * Afterwards sp will be restored using the value in r4 (which is not a temporary register +- * and will be preserved by the function/method called according to APCS [ARM Procedure +- * Calling Standard]). ++ * ACPS passes the first 3 params in r1-r3 (with exceptions for 64-bits ++ * arguments), and the remaining goes onto the stack. ++ * We allocate a buffer on the stack for a "worst case" estimate of how much ++ * stack might be needed for EABI, i.e. twice the number of parameters. ++ * The end of this buffer will be used to store r1 to r3, so that the start ++ * of the stack is the remaining parameters. ++ * The magic here is to call the method with "that" and three 32-bits ++ * arguments corresponding to r1-r3, so that the compiler generates the ++ * proper function call. The stack will also contain the remaining arguments. + * + * !!! IMPORTANT !!! + * This routine makes assumptions about the vtable layout of the c++ compiler. It's implemented +@@ -139,43 +129,272 @@ XPTC_InvokeByIndex(nsISupports* that, ui + * + */ + +- __asm__ __volatile__( +- "ldr r1, [%1, #12] \n\t" /* prepare to call invoke_count_words */ +- "ldr ip, [%1, #16] \n\t" /* r0=paramCount, r1=params */ +- "ldr r0, [%1, #8] \n\t" +- "mov lr, pc \n\t" /* call it... */ +- "mov pc, ip \n\t" +- "mov r4, r0, lsl #2 \n\t" /* This is the amount of bytes needed. */ +- "sub sp, sp, r4 \n\t" /* use stack space for the args... */ +- "mov r0, sp \n\t" /* prepare a pointer an the stack */ +- "ldr r1, [%1, #8] \n\t" /* =paramCount */ +- "ldr r2, [%1, #12] \n\t" /* =params */ +- "ldr ip, [%1, #20] \n\t" /* =invoke_copy_to_stack */ +- "mov lr, pc \n\t" /* copy args to the stack like the */ +- "mov pc, ip \n\t" /* compiler would. */ +- "ldr r0, [%1] \n\t" /* =that */ +- "ldr r1, [r0, #0] \n\t" /* get that->vtable offset */ +- "ldr r2, [%1, #4] \n\t" +- "add r2, r1, r2, lsl #3\n\t" /* a vtable_entry(x)=8 + (8 bytes * x) */ +- "add r2, r2, #8 \n\t" /* with this compilers */ +- "ldr r3, [r2] \n\t" /* get virtual offset from vtable */ +- "mov r3, r3, lsl #16 \n\t" +- "add r0, r0, r3, asr #16\n\t" +- "ldr ip, [r2, #4] \n\t" /* get method address from vtable */ +- "cmp r4, #12 \n\t" /* more than 3 arguments??? */ +- "ldmgtia sp!, {r1, r2, r3}\n\t" /* yes: load arguments for r1-r3 */ +- "subgt r4, r4, #12 \n\t" /* and correct the stack pointer */ +- "ldmleia sp, {r1, r2, r3}\n\t" /* no: load r1-r3 from stack */ +- "addle sp, sp, r4 \n\t" /* and restore stack pointer */ +- "movle r4, #0 \n\t" /* a mark for restoring sp */ +- "mov lr, pc \n\t" /* call mathod */ +- "mov pc, ip \n\t" +- "add sp, sp, r4 \n\t" /* restore stack pointer */ +- "mov %0, r0 \n\t" /* the result... */ +- : "=r" (result) +- : "r" (&my_params) +- : "r0", "r1", "r2", "r3", "r4", "ip", "lr" +- ); +- +- return result; ++ vtable_func *vtable, func; ++ int base_size = (paramCount > 1) ? paramCount : 2; ++ ++/* !!! IMPORTANT !!! ++ * On DEBUG builds, the NS_ASSERTION used in invoke_copy_to_stack needs to use ++ * the stack to pass the 5th argument to NS_DebugBreak. When invoke_copy_to_stack ++ * is inlined, this can result, depending on the compiler and flags, in the ++ * stack pointer not pointing at stack_space when the method is called at the ++ * end of this function. More generally, any function call requiring stack ++ * allocation of arguments is unsafe to be inlined in this function. ++ */ ++ uint32_t *stack_space = (uint32_t *) __builtin_alloca(base_size * 8); ++ ++ invoke_copy_to_stack(stack_space, &stack_space[base_size * 2], ++ paramCount, params); ++ ++ vtable = *reinterpret_cast(that); ++ func = vtable[methodIndex]; ++ ++ return func(that, stack_space[base_size * 2 - 3], ++ stack_space[base_size * 2 - 2], ++ stack_space[base_size * 2 - 1]); + } ++ ++#else /* __ARM_PCS_VFP */ ++ ++/* "Procedure Call Standard for the ARM Architecture" document, sections ++ * "5.5 Parameter Passing" and "6.1.2 Procedure Calling" contain all the ++ * needed information. ++ * ++ * http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042d/IHI0042D_aapcs.pdf ++ */ ++ ++#if defined(__thumb__) && !defined(__thumb2__) ++#error "Thumb1 is not supported" ++#endif ++ ++#ifndef __ARMEL__ ++#error "Only little endian compatibility was tested" ++#endif ++ ++/* ++ * Allocation of integer function arguments initially to registers r1-r3 ++ * and then to stack. Handling of 'this' argument which goes to r0 registers ++ * is handled separately and does not belong to these two inline functions. ++ * ++ * The doubleword arguments are allocated to even:odd ++ * register pairs or get aligned at 8-byte boundary on stack. The "holes" ++ * which may appear as a result of this realignment remain unused. ++ * ++ * 'ireg_args' - pointer to the current position in the buffer, ++ * corresponding to the register arguments ++ * 'stack_args' - pointer to the current position in the buffer, ++ * corresponding to the arguments on stack ++ * 'end' - pointer to the end of the registers argument ++ * buffer (it is guaranteed to be 8-bytes aligned) ++ */ ++ ++static inline void copy_word(uint32_t* &ireg_args, ++ uint32_t* &stack_args, ++ uint32_t* end, ++ uint32_t data) ++{ ++ if (ireg_args < end) { ++ *ireg_args = data; ++ ireg_args++; ++ } else { ++ *stack_args = data; ++ stack_args++; ++ } ++} ++ ++static inline void copy_dword(uint32_t* &ireg_args, ++ uint32_t* &stack_args, ++ uint32_t* end, ++ uint64_t data) ++{ ++ if (ireg_args + 1 < end) { ++ if ((uint32_t)ireg_args & 4) { ++ ireg_args++; ++ } ++ *(uint64_t *)ireg_args = data; ++ ireg_args += 2; ++ } else { ++ if ((uint32_t)stack_args & 4) { ++ stack_args++; ++ } ++ *(uint64_t *)stack_args = data; ++ stack_args += 2; ++ } ++} ++ ++/* ++ * Allocation of floating point arguments to VFP registers (s0-s15, d0-d7). ++ * ++ * Unlike integer registers allocation, "back-filling" needs to be ++ * supported. For example, the third floating point argument in the ++ * following function is going to be allocated to s1 register, back-filling ++ * the "hole": ++ * void f(float s0, double d1, float s1) ++ * ++ * Refer to the "Procedure Call Standard for the ARM Architecture" document ++ * for more details. ++ * ++ * 'vfp_s_args' - pointer to the current position in the buffer with ++ * the next unallocated single precision register ++ * 'vfp_d_args' - pointer to the current position in the buffer with ++ * the next unallocated double precision register, ++ * it has the same value as 'vfp_s_args' when back-filling ++ * is not used ++ * 'end' - pointer to the end of the vfp registers argument ++ * buffer (it is guaranteed to be 8-bytes aligned) ++ * ++ * Mozilla bugtracker has a test program attached which be used for ++ * experimenting with VFP registers allocation code and testing its ++ * correctness: ++ * https://bugzilla.mozilla.org/show_bug.cgi?id=601914#c19 ++ */ ++ ++static inline bool copy_vfp_single(float* &vfp_s_args, double* &vfp_d_args, ++ float* end, float data) ++{ ++ if (vfp_s_args >= end) ++ return false; ++ ++ *vfp_s_args = data; ++ vfp_s_args++; ++ if (vfp_s_args < (float *)vfp_d_args) { ++ // It was the case of back-filling, now the next free single precision ++ // register should overlap with the next free double precision register ++ vfp_s_args = (float *)vfp_d_args; ++ } else if (vfp_s_args > (float *)vfp_d_args) { ++ // also update the pointer to the next free double precision register ++ vfp_d_args++; ++ } ++ return true; ++} ++ ++static inline bool copy_vfp_double(float* &vfp_s_args, double* &vfp_d_args, ++ float* end, double data) ++{ ++ if (vfp_d_args >= (double *)end) { ++ // The back-filling continues only so long as no VFP CPRC has been ++ // allocated to a slot on the stack. Basically no VFP registers can ++ // be allocated after this point. ++ vfp_s_args = end; ++ return false; ++ } ++ ++ if (vfp_s_args == (float *)vfp_d_args) { ++ // also update the pointer to the next free single precision register ++ vfp_s_args += 2; ++ } ++ *vfp_d_args = data; ++ vfp_d_args++; ++ return true; ++} ++ ++static void ++invoke_copy_to_stack(uint32_t* stk, uint32_t *end, ++ uint32_t paramCount, nsXPTCVariant* s) ++{ ++ uint32_t *ireg_args = end - 3; ++ float *vfp_s_args = (float *)end; ++ double *vfp_d_args = (double *)end; ++ float *vfp_end = vfp_s_args + 16; ++ ++ for (uint32_t i = 0; i < paramCount; i++, s++) { ++ if (s->IsPtrData()) { ++ copy_word(ireg_args, stk, end, (uint32_t)s->ptr); ++ continue; ++ } ++ // According to the ARM EABI, integral types that are smaller than a word ++ // are to be sign/zero-extended to a full word and treated as 4-byte values ++ switch (s->type) ++ { ++ case nsXPTType::T_FLOAT: ++ if (!copy_vfp_single(vfp_s_args, vfp_d_args, vfp_end, s->val.f)) { ++ copy_word(end, stk, end, reinterpret_cast(s->val.f)); ++ } ++ break; ++ case nsXPTType::T_DOUBLE: ++ if (!copy_vfp_double(vfp_s_args, vfp_d_args, vfp_end, s->val.d)) { ++ copy_dword(end, stk, end, reinterpret_cast(s->val.d)); ++ } ++ break; ++ case nsXPTType::T_I8: copy_word(ireg_args, stk, end, s->val.i8); break; ++ case nsXPTType::T_I16: copy_word(ireg_args, stk, end, s->val.i16); break; ++ case nsXPTType::T_I32: copy_word(ireg_args, stk, end, s->val.i32); break; ++ case nsXPTType::T_I64: copy_dword(ireg_args, stk, end, s->val.i64); break; ++ case nsXPTType::T_U8: copy_word(ireg_args, stk, end, s->val.u8); break; ++ case nsXPTType::T_U16: copy_word(ireg_args, stk, end, s->val.u16); break; ++ case nsXPTType::T_U32: copy_word(ireg_args, stk, end, s->val.u32); break; ++ case nsXPTType::T_U64: copy_dword(ireg_args, stk, end, s->val.u64); break; ++ case nsXPTType::T_BOOL: copy_word(ireg_args, stk, end, s->val.b); break; ++ case nsXPTType::T_CHAR: copy_word(ireg_args, stk, end, s->val.c); break; ++ case nsXPTType::T_WCHAR: copy_word(ireg_args, stk, end, s->val.wc); break; ++ default: ++ // all the others are plain pointer types ++ copy_word(ireg_args, stk, end, reinterpret_cast(s->val.p)); ++ break; ++ } ++ } ++} ++ ++typedef uint32_t (*vtable_func)(nsISupports *, uint32_t, uint32_t, uint32_t); ++ ++EXPORT_XPCOM_API(nsresult) ++NS_InvokeByIndex(nsISupports* that, uint32_t methodIndex, ++ uint32_t paramCount, nsXPTCVariant* params) ++{ ++ vtable_func *vtable = *reinterpret_cast(that); ++ vtable_func func = vtable[methodIndex]; ++ // 'register uint32_t result asm("r0")' could be used here, but it does not ++ // seem to be reliable in all cases: http://gcc.gnu.org/PR46164 ++ nsresult result; ++ asm ( ++ "mov r3, sp\n" ++ "mov %[stack_space_size], %[param_count_plus_2], lsl #3\n" ++ "tst r3, #4\n" /* check stack alignment */ ++ ++ "add %[stack_space_size], #(4 * 16)\n" /* space for VFP registers */ ++ "mov r3, %[params]\n" ++ ++ "it ne\n" ++ "addne %[stack_space_size], %[stack_space_size], #4\n" ++ "sub r0, sp, %[stack_space_size]\n" /* allocate space on stack */ ++ ++ "sub r2, %[param_count_plus_2], #2\n" ++ "mov sp, r0\n" ++ ++ "add r1, r0, %[param_count_plus_2], lsl #3\n" ++ "blx %[invoke_copy_to_stack]\n" ++ ++ "add ip, sp, %[param_count_plus_2], lsl #3\n" ++ "mov r0, %[that]\n" ++ "ldmdb ip, {r1, r2, r3}\n" ++ "vldm ip, {d0, d1, d2, d3, d4, d5, d6, d7}\n" ++ "blx %[func]\n" ++ ++ "add sp, sp, %[stack_space_size]\n" /* cleanup stack */ ++ "mov %[stack_space_size], r0\n" /* it's actually 'result' variable */ ++ : [stack_space_size] "=&r" (result) ++ : [func] "r" (func), ++ [that] "r" (that), ++ [params] "r" (params), ++ [param_count_plus_2] "r" (paramCount + 2), ++ [invoke_copy_to_stack] "r" (invoke_copy_to_stack) ++ : "cc", "memory", ++ // Mark all the scratch registers as clobbered because they may be ++ // modified by the functions, called from this inline assembly block ++ "r0", "r1", "r2", "r3", "ip", "lr", ++ "d0", "d1", "d2", "d3", "d4", "d5", "d6", "d7", ++ // Also unconditionally mark d16-d31 registers as clobbered even though ++ // they actually don't exist in vfpv2 and vfpv3-d16 variants. There is ++ // no way to identify VFP variant using preprocessor at the momemnt ++ // (see http://gcc.gnu.org/PR46128 for more details), but fortunately ++ // current versions of gcc do not seem to complain about these registers ++ // even when this code is compiled with '-mfpu=vfpv3-d16' option. ++ // If gcc becomes more strict in the future and/or provides a way to ++ // identify VFP variant, the following d16-d31 registers list needs ++ // to be wrapped into some #ifdef ++ "d16", "d17", "d18", "d19", "d20", "d21", "d22", "d23", ++ "d24", "d25", "d26", "d27", "d28", "d29", "d30", "d31" ++ ); ++ return result; ++} ++ ++#endif Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S Thu Apr 27 13:38:19 2017 @@ -0,0 +1,52 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_mips.S.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_mips.S +@@ -16,6 +16,47 @@ + #include + #endif + ++#ifdef __NetBSD__ ++# include ++# include ++# ifndef fp ++# define fp s8 ++# endif ++# ifndef PTRLOG ++# if SZREG == 4 ++# define PTRLOG 2 ++# else ++# define PTRLOG 3 ++# endif ++# endif ++# ifndef SETUP_GP ++# if defined(__mips_o32) ++# define SETUP_GP \ ++ .set push; \ ++ .set noreorder; \ ++ .cpload t9; \ ++ .set pop ++# define SAVE_GP(x) \ ++ .cprestore x ++# else ++# define SETUP_GP ++# define SAVE_GP(x) ++# endif ++# endif ++# ifndef ALSZ ++# if defined(__mips_n32) || defined(__mips_n64) ++# define ALSZ 15 ++# define ALMASK ~15 ++# else ++# define ALSZ 7 ++# define ALMASK ~7 ++# endif ++# endif ++#else ++# include ++# include ++#endif ++ + # NARGSAVE is the argument space in the callers frame, including extra + # 'shadowed' space for the argument registers. The minimum of 4 + # argument slots is sometimes predefined in the header files. Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s Thu Apr 27 13:38:19 2017 @@ -0,0 +1,25 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_ppc_netbsd.s.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_ppc_netbsd.s +@@ -20,15 +20,15 @@ + + .section ".text" + .align 2 +- .globl XPTC_InvokeByIndex +- .type XPTC_InvokeByIndex,@function ++ .globl NS_InvokeByIndex_P ++ .type NS_InvokeByIndex_P,@function + + # +-# XPTC_InvokeByIndex(nsISupports* that, uint32_t methodIndex, +-# uint32_t paramCount, nsXPTCVariant* params) ++# NS_InvokeByIndex_P(nsISupports* that, PRUint32 methodIndex, ++# PRUint32 paramCount, nsXPTCVariant* params) + # + +-XPTC_InvokeByIndex: ++NS_InvokeByIndex_P: + stwu sp,-32(sp) # setup standard stack frame + mflr r0 # save LR + stw r3,8(sp) # r3 <= that Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_gcc_x86_unix.cpp.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_gcc_x86_unix.cpp +@@ -9,7 +9,7 @@ + #include "xptc_gcc_x86_unix.h" + + extern "C" { +-static void ATTRIBUTE_USED __attribute__ ((regparm(3))) ++void ATTRIBUTE_USED __attribute__ ((regparm(3))) + invoke_copy_to_stack(uint32_t paramCount, nsXPTCVariant* s, uint32_t* d) + { + for(uint32_t i = paramCount; i >0; i--, d++, s++) Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,75 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_netbsd_m68k.cpp.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_netbsd_m68k.cpp +@@ -100,6 +100,15 @@ extern "C" { + } + } + ++/* ++ * SYMBOL PREFIX must be "_" for aout symbols and "" for ELF ++ */ ++#ifndef __ELF__ ++#define SYMBOLPREFIX "_" ++#else ++#define SYMBOLPREFIX ++#endif ++ + XPTC_PUBLIC_API(nsresult) + XPTC_InvokeByIndex(nsISupports* that, uint32_t methodIndex, + uint32_t paramCount, nsXPTCVariant* params) +@@ -107,30 +116,30 @@ XPTC_InvokeByIndex(nsISupports* that, ui + uint32_t result; + + __asm__ __volatile__( +- "movl %4, sp@-\n\t" +- "movl %3, sp@-\n\t" +- "jbsr _invoke_count_words\n\t" /* count words */ +- "addql #8, sp\n\t" +- "lsll #2, d0\n\t" /* *= 4 */ +- "movl sp, a2\n\t" /* save original sp */ +- "subl d0, sp\n\t" /* make room for params */ +- "movl sp, a0\n\t" +- "movl %4, sp@-\n\t" +- "movl %3, sp@-\n\t" +- "movl a0, sp@-\n\t" +- "jbsr _invoke_copy_to_stack\n\t" /* copy params */ +- "addl #12, sp\n\t" +- "movl %1, a0\n\t" +- "movl a0@, a1\n\t" +- "movl %2, d0\n\t" /* function index */ +- "movl a0, d1\n\t" +- "movw a1@(8,d0:l:8), a0\n\t" +- "addl a0, d1\n\t" +- "movl a1@(12,d0:l:8), a1\n\t" +- "movl d1, sp@-\n\t" +- "jbsr a1@\n\t" +- "movl a2, sp\n\t" /* restore original sp */ +- "movl d0, %0\n\t" ++ "movl %4, %%sp@-\n\t" ++ "movl %3, %%sp@-\n\t" ++ "jbsr "SYMBOLPREFIX"invoke_count_words\n\t" /* count words */ ++ "addql #8, %%sp\n\t" ++ "lsll #2, %%d0\n\t" /* *= 4 */ ++ "movl %%sp, %%a2\n\t" /* save original sp */ ++ "subl %%d0, %%sp\n\t" /* make room for params */ ++ "movl %%sp, %%a0\n\t" ++ "movl %4, %%sp@-\n\t" ++ "movl %3, %%sp@-\n\t" ++ "movl %%a0, %%sp@-\n\t" ++ "jbsr "SYMBOLPREFIX"invoke_copy_to_stack\n\t" /* copy params */ ++ "addl #12, %%sp\n\t" ++ "movl %1, %%a0\n\t" ++ "movl %%a0@, %%a1\n\t" ++ "movl %2, %%d0\n\t" /* function index */ ++ "movl %%a0, %%d1\n\t" ++ "movw %%a1@(8,%%d0:l:8), %%a0\n\t" ++ "addl %%a0, %%d1\n\t" ++ "movl %%a1@(12,%%d0:l:8), %%a1\n\t" ++ "movl %%d1, %%sp@-\n\t" ++ "jbsr %%a1@\n\t" ++ "movl %%a2, %%sp\n\t" /* restore original sp */ ++ "movl %%d0, %0\n\t" + : "=g" (result) /* %0 */ + : "g" (that), /* %1 */ + "g" (methodIndex), /* %2 */ Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,47 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc_netbsd.cpp.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc_netbsd.cpp +@@ -5,9 +5,9 @@ + + // Platform specific code to invoke XPCOM methods on native objects + +-// The purpose of XPTC_InvokeByIndex() is to map a platform ++// The purpose of NS_InvokeByIndex_P() is to map a platform + // indepenpent call to the platform ABI. To do that, +-// XPTC_InvokeByIndex() has to determine the method to call via vtable ++// NS_InvokeByIndex_P() has to determine the method to call via vtable + // access. The parameters for the method are read from the + // nsXPTCVariant* and prepared for the native ABI. For the Linux/PPC + // ABI this means that the first 8 integral and floating point +@@ -72,8 +72,10 @@ invoke_copy_to_stack(uint32_t* d, + if ((uint32_t) d & 4) d++; // doubles are 8-byte aligned on stack + *((double*) d) = s->val.d; + d += 2; ++#if __GXX_ABI_VERSION < 100 + if (gpr < GPR_COUNT) + gpr += 2; ++#endif + } + } + else if (!s->IsPtrData() && s->type == nsXPTType::T_FLOAT) { +@@ -82,8 +84,10 @@ invoke_copy_to_stack(uint32_t* d, + else { + *((float*) d) = s->val.f; + d += 1; ++#if __GXX_ABI_VERSION < 100 + if (gpr < GPR_COUNT) + gpr += 1; ++#endif + } + } + else if (!s->IsPtrData() && (s->type == nsXPTType::T_I64 +@@ -110,6 +114,6 @@ invoke_copy_to_stack(uint32_t* d, + } + + extern "C" +-XPTC_PUBLIC_API(nsresult) +-XPTC_InvokeByIndex(nsISupports* that, uint32_t methodIndex, ++EXPORT_XPCOM_API(nsresult) ++NS_InvokeByIndex_P(nsISupports* that, PRUint32 methodIndex, + uint32_t paramCount, nsXPTCVariant* params); Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,89 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_sparc64_netbsd.cpp.orig 2016-04-17 13:47:46.349377857 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_sparc64_netbsd.cpp +@@ -0,0 +1,84 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- ++ * ++ * The contents of this file are subject to the Netscape Public ++ * License Version 1.1 (the "License"); you may not use this file ++ * except in compliance with the License. You may obtain a copy of ++ * the License at http://www.mozilla.org/NPL/ ++ * ++ * Software distributed under the License is distributed on an "AS ++ * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or ++ * implied. See the License for the specific language governing ++ * rights and limitations under the License. ++ * ++ * The Original Code is mozilla.org code. ++ * ++ * The Initial Developer of the Original Code is Netscape ++ * Communications Corporation. Portions created by Netscape are ++ * Copyright (C) 1998 Netscape Communications Corporation. All ++ * Rights Reserved. ++ * ++ * Contributor(s): ++ */ ++ ++/* Platform specific code to invoke XPCOM methods on native objects */ ++ ++#include "xptcprivate.h" ++ ++#if !defined(__sparc64__) && !defined(_LP64) ++#error "This code is for Sparc64 only" ++#endif ++ ++extern "C" PRUint32 ++invoke_copy_to_stack(PRUint64* d, PRUint32 paramCount, nsXPTCVariant* s) ++{ ++ /* ++ We need to copy the parameters for this function to locals and use them ++ from there since the parameters occupy the same stack space as the stack ++ we're trying to populate. ++ */ ++ PRUint64 *l_d = d; ++ nsXPTCVariant *l_s = s; ++ PRUint64 l_paramCount = paramCount; ++ PRUint64 regCount = 0; // return the number of registers to load from the stack ++ ++ for(PRUint64 i = 0; i < l_paramCount; i++, l_d++, l_s++) ++ { ++ if (regCount < 5) regCount++; ++ ++ if (l_s->IsPtrData()) ++ { ++ *l_d = (PRUint64)l_s->ptr; ++ continue; ++ } ++ switch (l_s->type) ++ { ++ case nsXPTType::T_I8 : *((PRInt64*)l_d) = l_s->val.i8; break; ++ case nsXPTType::T_I16 : *((PRInt64*)l_d) = l_s->val.i16; break; ++ case nsXPTType::T_I32 : *((PRInt64*)l_d) = l_s->val.i32; break; ++ case nsXPTType::T_I64 : *((PRInt64*)l_d) = l_s->val.i64; break; ++ ++ case nsXPTType::T_U8 : *((PRUint64*)l_d) = l_s->val.u8; break; ++ case nsXPTType::T_U16 : *((PRUint64*)l_d) = l_s->val.u16; break; ++ case nsXPTType::T_U32 : *((PRUint64*)l_d) = l_s->val.u32; break; ++ case nsXPTType::T_U64 : *((PRUint64*)l_d) = l_s->val.u64; break; ++ ++ /* in the case of floats, we want to put the bits in to the ++ 64bit space right justified... floats in the paramter array on ++ sparcv9 use odd numbered registers.. %f1, %f3, so we have to skip ++ the space that would be occupied by %f0, %f2, etc. ++ */ ++ case nsXPTType::T_FLOAT : *(((float*)l_d) + 1) = l_s->val.f; break; ++ case nsXPTType::T_DOUBLE: *((double*)l_d) = l_s->val.d; break; ++ case nsXPTType::T_BOOL : *((PRInt64*)l_d) = l_s->val.b; break; ++ case nsXPTType::T_CHAR : *((PRUint64*)l_d) = l_s->val.c; break; ++ case nsXPTType::T_WCHAR : *((PRInt64*)l_d) = l_s->val.wc; break; ++ ++ default: ++ // all the others are plain pointer types ++ *((void**)l_d) = l_s->val.p; ++ break; ++ } ++ } ++ ++ return regCount; ++} Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,217 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_arm_netbsd.cpp.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_arm_netbsd.cpp +@@ -6,15 +6,32 @@ + /* Implement shared vtbl methods. */ + + #include "xptcprivate.h" ++#include "xptiprivate.h" + +-nsresult ATTRIBUTE_USED ++/* Specify explicitly a symbol for this function, don't try to guess the c++ mangled symbol. */ ++static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32_t methodIndex, uint32_t* args) asm("_PrepareAndDispatch") ++ATTRIBUTE_USED; ++ ++#ifdef __ARM_EABI__ ++#define DOUBLEWORD_ALIGN(p) ((uint32_t *)((((uint32_t)(p)) + 7) & 0xfffffff8)) ++#else ++#define DOUBLEWORD_ALIGN(p) (p) ++#endif ++ ++// Apple's iOS toolchain is lame and does not support .cfi directives. ++#ifdef __APPLE__ ++#define CFI(str) ++#else ++#define CFI(str) str ++#endif ++ ++static nsresult + PrepareAndDispatch(nsXPTCStubBase* self, uint32_t methodIndex, uint32_t* args) + { + #define PARAM_BUFFER_COUNT 16 + + nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; + nsXPTCMiniVariant* dispatchParams = nullptr; +- nsIInterfaceInfo* iface_info = nullptr; + const nsXPTMethodInfo* info; + uint8_t paramCount; + uint8_t i; +@@ -22,12 +39,7 @@ PrepareAndDispatch(nsXPTCStubBase* self, + + NS_ASSERTION(self,"no self"); + +- self->GetInterfaceInfo(&iface_info); +- NS_ASSERTION(iface_info,"no interface info"); +- +- iface_info->GetMethodInfo(uint16_t(methodIndex), &info); +- NS_ASSERTION(info,"no interface info"); +- ++ self->mEntry->GetMethodInfo(uint16_t(methodIndex), &info); + paramCount = info->GetParamCount(); + + // setup variant array pointer +@@ -55,13 +67,16 @@ PrepareAndDispatch(nsXPTCStubBase* self, + case nsXPTType::T_I8 : dp->val.i8 = *((int8_t*) ap); break; + case nsXPTType::T_I16 : dp->val.i16 = *((int16_t*) ap); break; + case nsXPTType::T_I32 : dp->val.i32 = *((int32_t*) ap); break; +- case nsXPTType::T_I64 : dp->val.i64 = *((int64_t*) ap); ap++; break; ++ case nsXPTType::T_I64 : ap = DOUBLEWORD_ALIGN(ap); ++ dp->val.i64 = *((int64_t*) ap); ap++; break; + case nsXPTType::T_U8 : dp->val.u8 = *((uint8_t*) ap); break; + case nsXPTType::T_U16 : dp->val.u16 = *((uint16_t*)ap); break; + case nsXPTType::T_U32 : dp->val.u32 = *((uint32_t*)ap); break; +- case nsXPTType::T_U64 : dp->val.u64 = *((uint64_t*)ap); ap++; break; ++ case nsXPTType::T_U64 : ap = DOUBLEWORD_ALIGN(ap); ++ dp->val.u64 = *((uint64_t*)ap); ap++; break; + case nsXPTType::T_FLOAT : dp->val.f = *((float*) ap); break; +- case nsXPTType::T_DOUBLE : dp->val.d = *((double*) ap); ap++; break; ++ case nsXPTType::T_DOUBLE : ap = DOUBLEWORD_ALIGN(ap); ++ dp->val.d = *((double*) ap); ap++; break; + case nsXPTType::T_BOOL : dp->val.b = *((bool*) ap); break; + case nsXPTType::T_CHAR : dp->val.c = *((char*) ap); break; + case nsXPTType::T_WCHAR : dp->val.wc = *((wchar_t*) ap); break; +@@ -71,9 +86,7 @@ PrepareAndDispatch(nsXPTCStubBase* self, + } + } + +- result = self->CallMethod((uint16_t)methodIndex, info, dispatchParams); +- +- NS_RELEASE(iface_info); ++ result = self->mOuter->CallMethod((uint16_t)methodIndex, info, dispatchParams); + + if(dispatchParams != paramBuffer) + delete [] dispatchParams; +@@ -82,26 +95,114 @@ PrepareAndDispatch(nsXPTCStubBase* self, + } + + /* +- * These stubs move just move the values passed in registers onto the stack, +- * so they are contiguous with values passed on the stack, and then calls +- * PrepareAndDispatch() to do the dirty work. ++ * This is our shared stub. ++ * ++ * r0 = Self. ++ * ++ * The Rules: ++ * We pass an (undefined) number of arguments into this function. ++ * The first 3 C++ arguments are in r1 - r3, the rest are built ++ * by the calling function on the stack. ++ * ++ * We are allowed to corrupt r0 - r3, ip, and lr. ++ * ++ * Other Info: ++ * We pass the stub number in using `ip'. ++ * ++ * Implementation: ++ * - We save r1 to r3 inclusive onto the stack, which will be ++ * immediately below the caller saved arguments. ++ * - setup r2 (PrepareAndDispatch's args pointer) to point at ++ * the base of all these arguments ++ * - Save LR (for the return address) ++ * - Set r1 (PrepareAndDispatch's methodindex argument) from ip ++ * - r0 is passed through (self) ++ * - Call PrepareAndDispatch ++ * - When the call returns, we return by loading the PC off the ++ * stack, and undoing the stack (one instruction)! ++ * + */ ++__asm__ ("\n" ++ ".text\n" ++ ".align 2\n" ++ "SharedStub:\n" ++ CFI(".cfi_startproc\n") ++ "stmfd sp!, {r1, r2, r3}\n" ++ CFI(".cfi_def_cfa_offset 12\n") ++ CFI(".cfi_offset r3, -4\n") ++ CFI(".cfi_offset r2, -8\n") ++ CFI(".cfi_offset r1, -12\n") ++ "mov r2, sp\n" ++ "str lr, [sp, #-4]!\n" ++ CFI(".cfi_def_cfa_offset 16\n") ++ CFI(".cfi_offset lr, -16\n") ++ "mov r1, ip\n" ++ "bl _PrepareAndDispatch\n" ++ "ldr pc, [sp], #16\n" ++ CFI(".cfi_endproc\n")); ++ ++/* ++ * Create sets of stubs to call the SharedStub. ++ * We don't touch the stack here, nor any registers, other than IP. ++ * IP is defined to be corruptable by a called function, so we are ++ * safe to use it. ++ * ++ * This will work with or without optimisation. ++ */ ++ ++/* ++ * Note : As G++3 ABI contains the length of the functionname in the ++ * mangled name, it is difficult to get a generic assembler mechanism like ++ * in the G++ 2.95 case. ++ * Create names would be like : ++ * _ZN14nsXPTCStubBase5Stub9Ev ++ * _ZN14nsXPTCStubBase6Stub13Ev ++ * _ZN14nsXPTCStubBase7Stub144Ev ++ * Use the assembler directives to get the names right... ++ */ ++ ++#define STUB_ENTRY(n) \ ++ __asm__( \ ++ ".section \".text\"\n" \ ++" .align 2\n" \ ++" .iflt ("#n" - 10)\n" \ ++" .globl _ZN14nsXPTCStubBase5Stub"#n"Ev\n" \ ++" .type _ZN14nsXPTCStubBase5Stub"#n"Ev,#function\n" \ ++"_ZN14nsXPTCStubBase5Stub"#n"Ev:\n" \ ++" .else\n" \ ++" .iflt ("#n" - 100)\n" \ ++" .globl _ZN14nsXPTCStubBase6Stub"#n"Ev\n" \ ++" .type _ZN14nsXPTCStubBase6Stub"#n"Ev,#function\n" \ ++"_ZN14nsXPTCStubBase6Stub"#n"Ev:\n" \ ++" .else\n" \ ++" .iflt ("#n" - 1000)\n" \ ++" .globl _ZN14nsXPTCStubBase7Stub"#n"Ev\n" \ ++" .type _ZN14nsXPTCStubBase7Stub"#n"Ev,#function\n" \ ++"_ZN14nsXPTCStubBase7Stub"#n"Ev:\n" \ ++" .else\n" \ ++" .err \"stub number "#n"> 1000 not yet supported\"\n" \ ++" .endif\n" \ ++" .endif\n" \ ++" .endif\n" \ ++" mov ip, #"#n"\n" \ ++" b SharedStub\n\t"); ++ ++#if 0 ++/* ++ * This part is left in as comment : this is how the method definition ++ * should look like. ++ */ ++ ++#define STUB_ENTRY(n) \ ++nsresult nsXPTCStubBase::Stub##n () \ ++{ \ ++ __asm__ ( \ ++" mov ip, #"#n"\n" \ ++" b SharedStub\n\t"); \ ++ return 0; /* avoid warnings */ \ ++} ++#endif + +-#define STUB_ENTRY(n) \ +-__asm__( \ +- ".global _Stub"#n"__14nsXPTCStubBase\n\t" \ +-"_Stub"#n"__14nsXPTCStubBase:\n\t" \ +- "stmfd sp!, {r1, r2, r3} \n\t" \ +- "mov ip, sp \n\t" \ +- "stmfd sp!, {fp, ip, lr, pc} \n\t" \ +- "sub fp, ip, #4 \n\t" \ +- "mov r1, #"#n" \n\t" /* = methodIndex */ \ +- "add r2, sp, #16 \n\t" \ +- "bl _PrepareAndDispatch__FP14nsXPTCStubBaseUiPUi \n\t" \ +- "ldmea fp, {fp, sp, lr} \n\t" \ +- "add sp, sp, #12 \n\t" \ +- "mov pc, lr \n\t" \ +-); + + #define SENTINEL_ENTRY(n) \ + nsresult nsXPTCStubBase::Sentinel##n() \ Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S Thu Apr 27 13:38:19 2017 @@ -0,0 +1,52 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_asm_mips.S.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_asm_mips.S +@@ -14,6 +14,47 @@ + #include + #endif + ++#ifdef __NetBSD__ ++# include ++# include ++# ifndef fp ++# define fp s8 ++# endif ++# ifndef PTRLOG ++# if SZREG == 4 ++# define PTRLOG 2 ++# else ++# define PTRLOG 3 ++# endif ++# endif ++# ifndef SETUP_GP ++# if defined(__mips_o32) ++# define SETUP_GP \ ++ .set push; \ ++ .set noreorder; \ ++ .cpload t9; \ ++ .set pop ++# define SAVE_GP(x) \ ++ .cprestore x ++# else ++# define SETUP_GP ++# define SAVE_GP(x) ++# endif ++# endif ++# ifndef ALSZ ++# if defined(__mips_n32) || defined(__mips_n64) ++# define ALSZ 15 ++# define ALMASK ~15 ++# else ++# define ALSZ 7 ++# define ALMASK ~7 ++# endif ++# endif ++#else ++# include ++# include ++#endif ++ + # NARGSAVE is the argument space in the callers frame, including extra + # 'shadowed' space for the argument registers. The minimum of 4 + # argument slots is sometimes predefined in the header files. Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s Thu Apr 27 13:38:19 2017 @@ -0,0 +1,71 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_asm_sparc64_netbsd.s.orig 2016-04-17 13:47:46.350069203 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_asm_sparc64_netbsd.s +@@ -0,0 +1,66 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- ++ * ++ * The contents of this file are subject to the Netscape Public ++ * License Version 1.1 (the "License"); you may not use this file ++ * except in compliance with the License. You may obtain a copy of ++ * the License at http://www.mozilla.org/NPL/ ++ * ++ * Software distributed under the License is distributed on an "AS ++ * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or ++ * implied. See the License for the specific language governing ++ * rights and limitations under the License. ++ * ++ * The Original Code is mozilla.org code. ++ * ++ * The Initial Developer of the Original Code is Netscape ++ * Communications Corporation. Portions created by Netscape are ++ * Copyright (C) 1999 Netscape Communications Corporation. All ++ * Rights Reserved. ++ * ++ * Contributor(s): ++ */ ++ ++ .global SharedStub ++ ++/* ++ in the frame for the function that called SharedStub are the ++ rest of the parameters we need ++ ++*/ ++ ++SharedStub: ++! we don't create a new frame yet, but work within the frame of the calling ++! function to give ourselves the other parameters we want ++ ++ mov %o0, %o1 ! shuffle the index up to 2nd place ++ mov %i0, %o0 ! the original 'this' ++ add %fp, 0x7ff + 136, %o2 ! previous stack top adjusted to the first argument slot (beyond 'this') ++ ++! save off the original incoming parameters that arrived in ++! registers, the ABI guarantees the space for us to do this ++ stx %i1, [%fp + 0x7ff + 136] ++ stx %i2, [%fp + 0x7ff + 144] ++ stx %i3, [%fp + 0x7ff + 152] ++ stx %i4, [%fp + 0x7ff + 160] ++ stx %i5, [%fp + 0x7ff + 168] ++! now we can build our own stack frame ++ save %sp,-(128 + 64),%sp ! room for the register window and ++ ! struct pointer, rounded up to 0 % 64 ++! our function now appears to have been called ++! as SharedStub(nsISupports* that, PRUint32 index, PRUint32* args) ++! so we can just copy these through ++ ++ mov %i0, %o0 ++ mov %i1, %o1 ++ mov %i2, %o2 ++ call PrepareAndDispatch ++ nop ++ mov %o0,%i0 ! propagate return value ++ b .LL1 ++ nop ++.LL1: ++ ret ++ restore ++ ++ .size SharedStub, .-SharedStub ++ .type SharedStub, #function Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_gcc_x86_unix.cpp.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_gcc_x86_unix.cpp +@@ -10,7 +10,7 @@ + #include "xptc_gcc_x86_unix.h" + + extern "C" { +-static nsresult ATTRIBUTE_USED ++nsresult ATTRIBUTE_USED + __attribute__ ((regparm (3))) + PrepareAndDispatch(uint32_t methodIndex, nsXPTCStubBase* self, uint32_t* args) + { Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp Thu Apr 27 13:38:19 2017 @@ -0,0 +1,41 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_netbsd_m68k.cpp.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_netbsd_m68k.cpp +@@ -91,17 +91,27 @@ extern "C" { + } + } + ++/* ++ * Beware: use % instead of %% for register identifiers in a preprocessor macro ++ * SYMBOL PREFIX must be "_" for aout and "" for ELF ++ */ ++#ifndef __ELF__ ++#define SYMBOLPREFIX "_" ++#else ++#define SYMBOLPREFIX ++#endif ++ + #define STUB_ENTRY(n) \ + __asm__( \ +- ".global _Stub"#n"__14nsXPTCStubBase\n\t" \ +-"_Stub"#n"__14nsXPTCStubBase:\n\t" \ +- "link a6,#0 \n\t" \ +- "lea a6@(12), a0 \n\t" /* pointer to args */ \ +- "movl a0, sp@- \n\t" \ +- "movl #"#n", sp@- \n\t" /* method index */ \ +- "movl a6@(8), sp@- \n\t" /* this */ \ +- "jbsr _PrepareAndDispatch \n\t" \ +- "unlk a6 \n\t" \ ++ ".global "SYMBOLPREFIX"Stub"#n"__14nsXPTCStubBase\n\t" \ ++SYMBOLPREFIX"Stub"#n"__14nsXPTCStubBase:\n\t" \ ++ "link %a6,#0 \n\t" \ ++ "lea %a6@(12), %a0 \n\t" /* pointer to args */ \ ++ "movl %a0, %sp@- \n\t" \ ++ "movl #"#n", %sp@- \n\t" /* method index */ \ ++ "movl %a6@(8), %sp@- \n\t" /* this */ \ ++ "jbsr "SYMBOLPREFIX"PrepareAndDispatch\n\t" \ ++ "unlk %a6 \n\t" \ + "rts \n\t" \ + ); + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_Makefile.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_Makefile.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_Makefile.in Thu Apr 27 13:38:19 2017 @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xulrunner_installer_Makefile.in,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xulrunner/installer/Makefile.in.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xulrunner/installer/Makefile.in +@@ -88,7 +88,7 @@ endif + + install:: $(pkg_config_files) + @echo pkg_config_file: $(pkg_config_files) +- $(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(libdir)/pkgconfig ++ $(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)${PREFIX}/lib/${MOZILLA_PKG_NAME}/pkgconfig + + GARBAGE += $(pkg_config_files) + Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul-embedding.pc.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul-embedding.pc.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul-embedding.pc.in Thu Apr 27 13:38:19 2017 @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_xulrunner_installer_libxul-embedding.pc.in,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xulrunner/installer/libxul-embedding.pc.in.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xulrunner/installer/libxul-embedding.pc.in +@@ -6,5 +6,6 @@ idldir=%idldir% + Name: libxul-embedding + Description: Static library for version-independent embedding of the Mozilla runtime + Version: %MOZILLA_VERSION% +-Libs: -L${sdkdir}/lib -lxpcomglue -ldl ++# XXXtnn -ldl removed ++Libs: -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -L${prefix}/lib/xulrunner -lxpcomglue + Cflags: -DXPCOM_GLUE -I${includedir} %WCHAR_CFLAGS% Index: pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul.pc.in diff -u /dev/null pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul.pc.in:1.1 --- /dev/null Thu Apr 27 13:38:19 2017 +++ pkgsrc/mail/thunderbird45/patches/patch-mozilla_xulrunner_installer_libxul.pc.in Thu Apr 27 13:38:19 2017 @@ -0,0 +1,11 @@ +$NetBSD: patch-mozilla_xulrunner_installer_libxul.pc.in,v 1.1 2017/04/27 13:38:19 ryoon Exp $ + +--- mozilla/xulrunner/installer/libxul.pc.in.orig 2016-04-07 21:33:35.000000000 +0000 ++++ mozilla/xulrunner/installer/libxul.pc.in +@@ -7,5 +7,5 @@ Name: libxul + Description: The Mozilla Runtime and Embedding Engine + Version: %MOZILLA_VERSION% + Requires: %NSPR_NAME% >= %NSPR_VERSION% +-Libs: -L${sdkdir}/lib %MOZ_XUL_LINK% ++Libs: -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -L${prefix}/lib/xulrunner %MOZ_XUL_LINK% + Cflags: -I${includedir} %WCHAR_CFLAGS% --_----------=_1493300299121430--