diff options
172 files changed, 6027 insertions, 2184 deletions
diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile index 0f44a08fdab..421069c3a19 100644 --- a/mail/thunderbird/Makefile +++ b/mail/thunderbird/Makefile @@ -1,9 +1,8 @@ -# $NetBSD: Makefile,v 1.153 2015/07/01 12:48:08 ryoon Exp $ +# $NetBSD: Makefile,v 1.154 2015/07/09 15:17:34 ryoon Exp $ DISTNAME= # empty PKGNAME= thunderbird-${TB_VER} -PKGREVISION= 1 -TB_VER= 31.7.0 +TB_VER= 38.0.1 CATEGORIES= mail MASTER_SITES= ${MASTER_SITE_MOZILLA:=thunderbird/releases/${TB_VER}/source/} DISTFILES= thunderbird-${TB_VER}.source.tar.bz2 @@ -13,7 +12,7 @@ HOMEPAGE= http://www.mozillamessaging.com/en-US/thunderbird/ COMMENT= Organize, secure and customize your mail USE_TOOLS+= unzip pax -WRKSRC= ${WRKDIR}/comm-esr31 +WRKSRC= ${WRKDIR}/comm-esr38 MOZILLA_DIR= mozilla/ PLIST_SRC+= ${PLIST_SRC_DFLT} @@ -78,7 +77,7 @@ INSTALLATION_DIRS+= share/applications share/pixmaps post-install: ${INSTALL_DATA} ${WRKDIR}/desktop \ ${DESTDIR}${PREFIX}/share/applications/${MOZILLA}.desktop - ${INSTALL_DATA} ${WRKSRC}/${OBJDIR}/mozilla/dist/thunderbird/chrome/icons/default/default48.png \ + ${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 diff --git a/mail/thunderbird/PLIST b/mail/thunderbird/PLIST index 6e7b0ccd2db..fc273cfa405 100644 --- a/mail/thunderbird/PLIST +++ b/mail/thunderbird/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.56 2015/02/13 16:28:57 ryoon Exp $ +@comment $NetBSD: PLIST,v 1.57 2015/07/09 15:17:34 ryoon Exp $ bin/thunderbird lib/thunderbird/application.ini lib/thunderbird/blocklist.xml @@ -7,6 +7,8 @@ lib/thunderbird/chrome/chat/content/chat/browserRequest.js lib/thunderbird/chrome/chat/content/chat/browserRequest.xul lib/thunderbird/chrome/chat/content/chat/conv.html lib/thunderbird/chrome/chat/content/chat/convbrowser.xml +lib/thunderbird/chrome/chat/content/chat/imtooltip.css +lib/thunderbird/chrome/chat/content/chat/imtooltip.xml lib/thunderbird/chrome/chat/skin/classic/chat/available-16.png lib/thunderbird/chrome/chat/skin/classic/chat/available.png lib/thunderbird/chrome/chat/skin/classic/chat/away-16.png @@ -19,6 +21,8 @@ lib/thunderbird/chrome/chat/skin/classic/chat/icons/insecure.png lib/thunderbird/chrome/chat/skin/classic/chat/icons/secure.png lib/thunderbird/chrome/chat/skin/classic/chat/idle-16.png lib/thunderbird/chrome/chat/skin/classic/chat/idle.png +lib/thunderbird/chrome/chat/skin/classic/chat/imtooltip.css +lib/thunderbird/chrome/chat/skin/classic/chat/loading.png lib/thunderbird/chrome/chat/skin/classic/chat/mobile-16.png lib/thunderbird/chrome/chat/skin/classic/chat/mobile.png lib/thunderbird/chrome/chat/skin/classic/chat/offline-16.png @@ -29,6 +33,7 @@ lib/thunderbird/chrome/chat/skin/classic/chat/prpl-generic/icon48.png lib/thunderbird/chrome/chat/skin/classic/chat/prpl-unknown/icon.png lib/thunderbird/chrome/chat/skin/classic/chat/prpl-unknown/icon32.png lib/thunderbird/chrome/chat/skin/classic/chat/prpl-unknown/icon48.png +lib/thunderbird/chrome/chat/skin/classic/chat/status.css lib/thunderbird/chrome/chat/skin/classic/chat/typed-16.png lib/thunderbird/chrome/chat/skin/classic/chat/typing-16.png lib/thunderbird/chrome/chat/skin/classic/chat/unknown-16.png @@ -138,6 +143,8 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/cloudfile/Hightail/setting lib/thunderbird/chrome/classic/skin/classic/messenger/cloudfile/addAccountDialog.css lib/thunderbird/chrome/classic/skin/classic/messenger/contactStarred.png lib/thunderbird/chrome/classic/skin/classic/messenger/dialogs.css +lib/thunderbird/chrome/classic/skin/classic/messenger/downloads/aboutDownloads.css +lib/thunderbird/chrome/classic/skin/classic/messenger/downloads/download.svg lib/thunderbird/chrome/classic/skin/classic/messenger/editContactOverlay.css lib/thunderbird/chrome/classic/skin/classic/messenger/filterDialog.css lib/thunderbird/chrome/classic/skin/classic/messenger/folderMenus.css @@ -204,6 +211,7 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/icons/message.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/multicolor.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/new-mail-alert.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/notchecked.gif +lib/thunderbird/chrome/classic/skin/classic/messenger/icons/notloading.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/offline.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/online.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/phishing.png @@ -212,7 +220,6 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/icons/red_pin.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/remote-blocked.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/row.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/search-arrow.png -lib/thunderbird/chrome/classic/skin/classic/messenger/icons/search-favorite.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/secure.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/server.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/status-small.png @@ -229,10 +236,8 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/icons/zoomout-hover.png lib/thunderbird/chrome/classic/skin/classic/messenger/icons/zoomout.png lib/thunderbird/chrome/classic/skin/classic/messenger/imAccountWizard.css lib/thunderbird/chrome/classic/skin/classic/messenger/imAccounts.css -lib/thunderbird/chrome/classic/skin/classic/messenger/imBuddytooltip.css lib/thunderbird/chrome/classic/skin/classic/messenger/imMenulist.css lib/thunderbird/chrome/classic/skin/classic/messenger/imRichlistbox.css -lib/thunderbird/chrome/classic/skin/classic/messenger/imStatus.css lib/thunderbird/chrome/classic/skin/classic/messenger/imageFilters.svg lib/thunderbird/chrome/classic/skin/classic/messenger/junkMail.css lib/thunderbird/chrome/classic/skin/classic/messenger/mailWindow1.css @@ -261,6 +266,7 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/newmailaccount/success-sig lib/thunderbird/chrome/classic/skin/classic/messenger/newmailalert.css lib/thunderbird/chrome/classic/skin/classic/messenger/noise.png lib/thunderbird/chrome/classic/skin/classic/messenger/operator.png +lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/aboutPreferences.css lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/advanced.png lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/alwaysAsk.png lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/applications.css @@ -269,6 +275,7 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/auth-error.png lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/background.png lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/chat.png lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/composition.png +lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/dialog.css lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/display.png lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/general.png lib/thunderbird/chrome/classic/skin/classic/messenger/preferences/hover.png @@ -283,6 +290,11 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/searchBox.css lib/thunderbird/chrome/classic/skin/classic/messenger/searchDialog.css lib/thunderbird/chrome/classic/skin/classic/messenger/section_collapsed.png lib/thunderbird/chrome/classic/skin/classic/messenger/section_expanded.png +lib/thunderbird/chrome/classic/skin/classic/messenger/shared/accountProvisioner.css +lib/thunderbird/chrome/classic/skin/classic/messenger/shared/addressbook.css +lib/thunderbird/chrome/classic/skin/classic/messenger/shared/in-content/aboutPreferences.css +lib/thunderbird/chrome/classic/skin/classic/messenger/shared/in-content/dialog.css +lib/thunderbird/chrome/classic/skin/classic/messenger/shared/in-content/icons.svg lib/thunderbird/chrome/classic/skin/classic/messenger/shared/mailWindow1.css lib/thunderbird/chrome/classic/skin/classic/messenger/shared/messageHeader.css lib/thunderbird/chrome/classic/skin/classic/messenger/shared/messenger.css @@ -314,6 +326,7 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/background-middle.png lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/background-start.png lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/closeTab.svg lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/dragIndicator.png +lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/overflow-indicator.png lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/selected-end.svg lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/selected-start.svg lib/thunderbird/chrome/classic/skin/classic/messenger/tabs/separator.png @@ -324,7 +337,6 @@ lib/thunderbird/chrome/classic/skin/classic/messenger/tagbg.png lib/thunderbird/chrome/classic/skin/classic/messenger/userIcon.png lib/thunderbird/chrome/classic/skin/classic/messenger/virtualFolderListDialog.css lib/thunderbird/chrome/classic/skin/classic/messenger/voice.png -lib/thunderbird/chrome/classic/skin/classic/messenger/webSearch.css lib/thunderbird/chrome/comm/content/communicator/charsetOverlay.xul lib/thunderbird/chrome/comm/content/communicator/contentAreaClick.js lib/thunderbird/chrome/comm/content/communicator/labelsencodings.properties @@ -416,6 +428,7 @@ lib/thunderbird/chrome/en-US/locale/en-US/chat/commands.properties lib/thunderbird/chrome/en-US/locale/en-US/chat/contacts.properties lib/thunderbird/chrome/en-US/locale/en-US/chat/conversations.properties lib/thunderbird/chrome/en-US/locale/en-US/chat/facebook.properties +lib/thunderbird/chrome/en-US/locale/en-US/chat/imtooltip.properties lib/thunderbird/chrome/en-US/locale/en-US/chat/irc.properties lib/thunderbird/chrome/en-US/locale/en-US/chat/logger.properties lib/thunderbird/chrome/en-US/locale/en-US/chat/status.properties @@ -454,6 +467,7 @@ lib/thunderbird/chrome/en-US/locale/en-US/editor/EditorTextAreaProperties.dtd lib/thunderbird/chrome/en-US/locale/en-US/editor/editor.properties lib/thunderbird/chrome/en-US/locale/en-US/editor/editorOverlay.dtd lib/thunderbird/chrome/en-US/locale/en-US/editor/editorSmileyOverlay.dtd +lib/thunderbird/chrome/en-US/locale/en-US/formautofill/requestAutocomplete.dtd lib/thunderbird/chrome/en-US/locale/en-US/global-platform/mac/accessible.properties lib/thunderbird/chrome/en-US/locale/en-US/global-platform/mac/intl.properties lib/thunderbird/chrome/en-US/locale/en-US/global-platform/mac/platformKeys.properties @@ -468,20 +482,19 @@ lib/thunderbird/chrome/en-US/locale/en-US/global/AccessFu.properties lib/thunderbird/chrome/en-US/locale/en-US/global/about.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/aboutAbout.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/aboutNetworking.dtd +lib/thunderbird/chrome/en-US/locale/en-US/global/aboutReader.properties lib/thunderbird/chrome/en-US/locale/en-US/global/aboutRights.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/aboutSupport.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/aboutSupport.properties lib/thunderbird/chrome/en-US/locale/en-US/global/aboutTelemetry.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/aboutTelemetry.properties -lib/thunderbird/chrome/en-US/locale/en-US/global/actions.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/appPicker.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/appstrings.properties +lib/thunderbird/chrome/en-US/locale/en-US/global/autocomplete.properties lib/thunderbird/chrome/en-US/locale/en-US/global/brand.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/browser.properties lib/thunderbird/chrome/en-US/locale/en-US/global/charsetMenu.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/charsetMenu.properties -lib/thunderbird/chrome/en-US/locale/en-US/global/charsetOverlay.dtd -lib/thunderbird/chrome/en-US/locale/en-US/global/charsetTitles.properties lib/thunderbird/chrome/en-US/locale/en-US/global/commonDialog.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/commonDialogs.properties lib/thunderbird/chrome/en-US/locale/en-US/global/config.dtd @@ -492,17 +505,19 @@ lib/thunderbird/chrome/en-US/locale/en-US/global/contentAreaCommands.properties lib/thunderbird/chrome/en-US/locale/en-US/global/crashes.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/crashes.properties lib/thunderbird/chrome/en-US/locale/en-US/global/css.properties -lib/thunderbird/chrome/en-US/locale/en-US/global/customizeCharset.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/customizeToolbar.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/customizeToolbar.properties lib/thunderbird/chrome/en-US/locale/en-US/global/dateFormat.properties lib/thunderbird/chrome/en-US/locale/en-US/global/datetimepicker.dtd +lib/thunderbird/chrome/en-US/locale/en-US/global/devtools/csscoverage.dtd +lib/thunderbird/chrome/en-US/locale/en-US/global/devtools/csscoverage.properties lib/thunderbird/chrome/en-US/locale/en-US/global/devtools/debugger.properties lib/thunderbird/chrome/en-US/locale/en-US/global/devtools/styleinspector.properties lib/thunderbird/chrome/en-US/locale/en-US/global/dialog.properties lib/thunderbird/chrome/en-US/locale/en-US/global/dialogOverlay.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/dom/dom.properties lib/thunderbird/chrome/en-US/locale/en-US/global/editMenuOverlay.dtd +lib/thunderbird/chrome/en-US/locale/en-US/global/fallbackMenubar.properties lib/thunderbird/chrome/en-US/locale/en-US/global/filefield.properties lib/thunderbird/chrome/en-US/locale/en-US/global/filepicker.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/filepicker.properties @@ -557,7 +572,6 @@ lib/thunderbird/chrome/en-US/locale/en-US/global/wizard.dtd lib/thunderbird/chrome/en-US/locale/en-US/global/wizard.properties lib/thunderbird/chrome/en-US/locale/en-US/global/xbl.properties lib/thunderbird/chrome/en-US/locale/en-US/global/xml/prettyprint.dtd -lib/thunderbird/chrome/en-US/locale/en-US/global/xpinstall/xpinstall.properties lib/thunderbird/chrome/en-US/locale/en-US/global/xslt/xslt.properties lib/thunderbird/chrome/en-US/locale/en-US/global/xul.properties lib/thunderbird/chrome/en-US/locale/en-US/messenger-mapi/mapi.properties @@ -581,6 +595,7 @@ lib/thunderbird/chrome/en-US/locale/en-US/messenger/FilterEditor.dtd lib/thunderbird/chrome/en-US/locale/en-US/messenger/FilterListDialog.dtd lib/thunderbird/chrome/en-US/locale/en-US/messenger/SearchDialog.dtd lib/thunderbird/chrome/en-US/locale/en-US/messenger/aboutDialog.dtd +lib/thunderbird/chrome/en-US/locale/en-US/messenger/aboutDownloads.dtd lib/thunderbird/chrome/en-US/locale/en-US/messenger/aboutRights.dtd lib/thunderbird/chrome/en-US/locale/en-US/messenger/aboutRights.properties lib/thunderbird/chrome/en-US/locale/en-US/messenger/aboutSupportMail.dtd @@ -623,6 +638,7 @@ lib/thunderbird/chrome/en-US/locale/en-US/messenger/am-smime.dtd lib/thunderbird/chrome/en-US/locale/en-US/messenger/am-smime.properties lib/thunderbird/chrome/en-US/locale/en-US/messenger/appleMailImportMsgs.properties lib/thunderbird/chrome/en-US/locale/en-US/messenger/baseMenuOverlay.dtd +lib/thunderbird/chrome/en-US/locale/en-US/messenger/charsetTitles.properties lib/thunderbird/chrome/en-US/locale/en-US/messenger/chat.dtd lib/thunderbird/chrome/en-US/locale/en-US/messenger/chat.properties lib/thunderbird/chrome/en-US/locale/en-US/messenger/cloudfile/Box/auth.dtd @@ -773,9 +789,7 @@ lib/thunderbird/chrome/en-US/locale/en-US/mozapps/extensions/update.properties lib/thunderbird/chrome/en-US/locale/en-US/mozapps/handling/handling.dtd lib/thunderbird/chrome/en-US/locale/en-US/mozapps/handling/handling.properties lib/thunderbird/chrome/en-US/locale/en-US/mozapps/plugins/plugins.dtd -lib/thunderbird/chrome/en-US/locale/en-US/mozapps/plugins/plugins.properties lib/thunderbird/chrome/en-US/locale/en-US/mozapps/preferences/changemp.dtd -lib/thunderbird/chrome/en-US/locale/en-US/mozapps/preferences/ocsp.dtd lib/thunderbird/chrome/en-US/locale/en-US/mozapps/preferences/preferences.properties lib/thunderbird/chrome/en-US/locale/en-US/mozapps/preferences/removemp.dtd lib/thunderbird/chrome/en-US/locale/en-US/mozapps/profile/createProfileWizard.dtd @@ -792,7 +806,6 @@ lib/thunderbird/chrome/en-US/locale/en-US/passwordmgr/passwordManager.dtd lib/thunderbird/chrome/en-US/locale/en-US/passwordmgr/passwordmgr.properties lib/thunderbird/chrome/en-US/locale/en-US/pipnss/nsserrors.properties lib/thunderbird/chrome/en-US/locale/en-US/pipnss/pipnss.properties -lib/thunderbird/chrome/en-US/locale/en-US/pipnss/security.properties lib/thunderbird/chrome/en-US/locale/en-US/pippki/certManager.dtd lib/thunderbird/chrome/en-US/locale/en-US/pippki/deviceManager.dtd lib/thunderbird/chrome/en-US/locale/en-US/pippki/pippki.dtd @@ -952,6 +965,8 @@ lib/thunderbird/chrome/messenger/content/messenger/aw-outgoing.js lib/thunderbird/chrome/messenger/content/messenger/baseMenuOverlay.xul lib/thunderbird/chrome/messenger/content/messenger/browserRequest.js lib/thunderbird/chrome/messenger/content/messenger/browserRequest.xul +lib/thunderbird/chrome/messenger/content/messenger/charsetList.css +lib/thunderbird/chrome/messenger/content/messenger/charsetList.xml lib/thunderbird/chrome/messenger/content/messenger/chat/addbuddy.js lib/thunderbird/chrome/messenger/content/messenger/chat/addbuddy.xul lib/thunderbird/chrome/messenger/content/messenger/chat/badgebutton.xml @@ -966,8 +981,6 @@ lib/thunderbird/chrome/messenger/content/messenger/chat/imAccounts.js lib/thunderbird/chrome/messenger/content/messenger/chat/imAccounts.xul lib/thunderbird/chrome/messenger/content/messenger/chat/imContextMenu.js lib/thunderbird/chrome/messenger/content/messenger/chat/imStatusSelector.js -lib/thunderbird/chrome/messenger/content/messenger/chat/imbuddytooltip.css -lib/thunderbird/chrome/messenger/content/messenger/chat/imbuddytooltip.xml lib/thunderbird/chrome/messenger/content/messenger/chat/imcontact.xml lib/thunderbird/chrome/messenger/content/messenger/chat/imconv.xml lib/thunderbird/chrome/messenger/content/messenger/chat/imconversation.xml @@ -978,7 +991,6 @@ lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Box/management.js lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Box/management.xhtml lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Box/settings.xhtml lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceeds2GB.xul -lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceedsLimit.js lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceedsLimit.xul lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceedsQuota.js lib/thunderbird/chrome/messenger/content/messenger/cloudfile/Hightail/fileExceedsQuota.xul @@ -999,6 +1011,10 @@ lib/thunderbird/chrome/messenger/content/messenger/devtools/dbg-messenger-overla lib/thunderbird/chrome/messenger/content/messenger/devtools/dbg-messenger-overlay.xul lib/thunderbird/chrome/messenger/content/messenger/downloadheaders.js lib/thunderbird/chrome/messenger/content/messenger/downloadheaders.xul +lib/thunderbird/chrome/messenger/content/messenger/downloads/aboutDownloads.css +lib/thunderbird/chrome/messenger/content/messenger/downloads/aboutDownloads.js +lib/thunderbird/chrome/messenger/content/messenger/downloads/aboutDownloads.xul +lib/thunderbird/chrome/messenger/content/messenger/downloads/download.xml lib/thunderbird/chrome/messenger/content/messenger/downloadsOverlay.xul lib/thunderbird/chrome/messenger/content/messenger/editContactOverlay.js lib/thunderbird/chrome/messenger/content/messenger/editContactOverlay.xul @@ -1061,6 +1077,7 @@ lib/thunderbird/chrome/messenger/content/messenger/messengercompose/askSendForma lib/thunderbird/chrome/messenger/content/messenger/messengercompose/bigFileObserver.js lib/thunderbird/chrome/messenger/content/messenger/messengercompose/cloudAttachmentLinkManager.js lib/thunderbird/chrome/messenger/content/messenger/messengercompose/mailComposeEditorOverlay.xul +lib/thunderbird/chrome/messenger/content/messenger/messengercompose/menulistCompactBindings.xml lib/thunderbird/chrome/messenger/content/messenger/messengercompose/messengercompose.xul lib/thunderbird/chrome/messenger/content/messenger/messengercompose/sendProgress.js lib/thunderbird/chrome/messenger/content/messenger/messengercompose/sendProgress.xul @@ -1080,6 +1097,7 @@ lib/thunderbird/chrome/messenger/content/messenger/msgSynchronize.xul lib/thunderbird/chrome/messenger/content/messenger/msgViewNavigation.js lib/thunderbird/chrome/messenger/content/messenger/msgViewPickerOverlay.js lib/thunderbird/chrome/messenger/content/messenger/multimessageview.css +lib/thunderbird/chrome/messenger/content/messenger/multimessageview.js lib/thunderbird/chrome/messenger/content/messenger/multimessageview.xhtml lib/thunderbird/chrome/messenger/content/messenger/multimessageview_print.css lib/thunderbird/chrome/messenger/content/messenger/newFolderDialog.js @@ -1098,6 +1116,7 @@ lib/thunderbird/chrome/messenger/content/messenger/newmailalert.xul lib/thunderbird/chrome/messenger/content/messenger/nsContextMenu.js lib/thunderbird/chrome/messenger/content/messenger/phishingDetector.js lib/thunderbird/chrome/messenger/content/messenger/plugins.js +lib/thunderbird/chrome/messenger/content/messenger/preferences/aboutPreferences.xul lib/thunderbird/chrome/messenger/content/messenger/preferences/actionsshared.js lib/thunderbird/chrome/messenger/content/messenger/preferences/advanced.js lib/thunderbird/chrome/messenger/content/messenger/preferences/advanced.xul @@ -1126,19 +1145,25 @@ lib/thunderbird/chrome/messenger/content/messenger/preferences/general.xul lib/thunderbird/chrome/messenger/content/messenger/preferences/handlers.css lib/thunderbird/chrome/messenger/content/messenger/preferences/handlers.xml lib/thunderbird/chrome/messenger/content/messenger/preferences/notifications.xul +lib/thunderbird/chrome/messenger/content/messenger/preferences/offline.js lib/thunderbird/chrome/messenger/content/messenger/preferences/offline.xul lib/thunderbird/chrome/messenger/content/messenger/preferences/permissions.js lib/thunderbird/chrome/messenger/content/messenger/preferences/permissions.xul lib/thunderbird/chrome/messenger/content/messenger/preferences/permissionsutils.js lib/thunderbird/chrome/messenger/content/messenger/preferences/preferences.js +lib/thunderbird/chrome/messenger/content/messenger/preferences/preferences.xml lib/thunderbird/chrome/messenger/content/messenger/preferences/preferences.xul +lib/thunderbird/chrome/messenger/content/messenger/preferences/preferencesTab.js +lib/thunderbird/chrome/messenger/content/messenger/preferences/preferencesTab.xul lib/thunderbird/chrome/messenger/content/messenger/preferences/privacy.js lib/thunderbird/chrome/messenger/content/messenger/preferences/privacy.xul +lib/thunderbird/chrome/messenger/content/messenger/preferences/receipts.js lib/thunderbird/chrome/messenger/content/messenger/preferences/receipts.xul lib/thunderbird/chrome/messenger/content/messenger/preferences/security.js lib/thunderbird/chrome/messenger/content/messenger/preferences/security.xul lib/thunderbird/chrome/messenger/content/messenger/preferences/sendoptions.js lib/thunderbird/chrome/messenger/content/messenger/preferences/sendoptions.xul +lib/thunderbird/chrome/messenger/content/messenger/preferences/subdialogs.js lib/thunderbird/chrome/messenger/content/messenger/protovis-r2.6-modded.js lib/thunderbird/chrome/messenger/content/messenger/quickFilterBar.css lib/thunderbird/chrome/messenger/content/messenger/quickFilterBar.js @@ -1184,9 +1209,6 @@ lib/thunderbird/chrome/messenger/content/messenger/virtualFolderListDialog.js lib/thunderbird/chrome/messenger/content/messenger/virtualFolderListDialog.xul lib/thunderbird/chrome/messenger/content/messenger/virtualFolderProperties.js lib/thunderbird/chrome/messenger/content/messenger/virtualFolderProperties.xul -lib/thunderbird/chrome/messenger/content/messenger/webSearch.xml -lib/thunderbird/chrome/messenger/content/messenger/webSearchTab.js -lib/thunderbird/chrome/messenger/content/messenger/webSearchTab.xul lib/thunderbird/chrome/messenger/skin/classic/messenger/messages/Bitmaps/minus-hover.png lib/thunderbird/chrome/messenger/skin/classic/messenger/messages/Bitmaps/minus.png lib/thunderbird/chrome/messenger/skin/classic/messenger/messages/Bitmaps/plus-hover.png @@ -1242,8 +1264,6 @@ lib/thunderbird/chrome/pippki/content/pippki/certDump.xul lib/thunderbird/chrome/pippki/content/pippki/certManager.js lib/thunderbird/chrome/pippki/content/pippki/certManager.xul lib/thunderbird/chrome/pippki/content/pippki/certViewer.xul -lib/thunderbird/chrome/pippki/content/pippki/certerror.js -lib/thunderbird/chrome/pippki/content/pippki/certerror.xul lib/thunderbird/chrome/pippki/content/pippki/certpicker.js lib/thunderbird/chrome/pippki/content/pippki/certpicker.xul lib/thunderbird/chrome/pippki/content/pippki/changepassword.xul @@ -1266,9 +1286,6 @@ lib/thunderbird/chrome/pippki/content/pippki/escrowWarn.js lib/thunderbird/chrome/pippki/content/pippki/escrowWarn.xul lib/thunderbird/chrome/pippki/content/pippki/exceptionDialog.js lib/thunderbird/chrome/pippki/content/pippki/exceptionDialog.xul -lib/thunderbird/chrome/pippki/content/pippki/formsigning.js -lib/thunderbird/chrome/pippki/content/pippki/formsigning.xul -lib/thunderbird/chrome/pippki/content/pippki/getp12password.xul lib/thunderbird/chrome/pippki/content/pippki/getpassword.xul lib/thunderbird/chrome/pippki/content/pippki/load_device.xul lib/thunderbird/chrome/pippki/content/pippki/password.js @@ -1282,6 +1299,8 @@ lib/thunderbird/chrome/pippki/content/pippki/viewCertDetails.js lib/thunderbird/chrome/pippki/content/pippki/viewCertDetails.xul lib/thunderbird/chrome/toolkit/content/cookie/cookieAcceptDialog.js lib/thunderbird/chrome/toolkit/content/cookie/cookieAcceptDialog.xul +lib/thunderbird/chrome/toolkit/content/formautofill/requestAutocomplete.js +lib/thunderbird/chrome/toolkit/content/formautofill/requestAutocomplete.xhtml lib/thunderbird/chrome/toolkit/content/global/BrowserElementChild.js lib/thunderbird/chrome/toolkit/content/global/BrowserElementChildPreload.js lib/thunderbird/chrome/toolkit/content/global/BrowserElementPanning.js @@ -1290,6 +1309,8 @@ lib/thunderbird/chrome/toolkit/content/global/about.js lib/thunderbird/chrome/toolkit/content/global/about.xhtml lib/thunderbird/chrome/toolkit/content/global/aboutAbout.js lib/thunderbird/chrome/toolkit/content/global/aboutAbout.xhtml +lib/thunderbird/chrome/toolkit/content/global/aboutCache.js +lib/thunderbird/chrome/toolkit/content/global/aboutCompartments.js lib/thunderbird/chrome/toolkit/content/global/aboutCompartments.xhtml lib/thunderbird/chrome/toolkit/content/global/aboutMemory.css lib/thunderbird/chrome/toolkit/content/global/aboutMemory.js @@ -1303,7 +1324,9 @@ lib/thunderbird/chrome/toolkit/content/global/aboutSupport.xhtml lib/thunderbird/chrome/toolkit/content/global/aboutTelemetry.css lib/thunderbird/chrome/toolkit/content/global/aboutTelemetry.js lib/thunderbird/chrome/toolkit/content/global/aboutTelemetry.xhtml -lib/thunderbird/chrome/toolkit/content/global/aboutWebrtc.xhtml +lib/thunderbird/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.css +lib/thunderbird/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.js +lib/thunderbird/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.xhtml lib/thunderbird/chrome/toolkit/content/global/accessibility/AccessFu.css lib/thunderbird/chrome/toolkit/content/global/accessibility/clicked.ogg lib/thunderbird/chrome/toolkit/content/global/accessibility/content-script.js @@ -1314,6 +1337,7 @@ lib/thunderbird/chrome/toolkit/content/global/alerts/alert.js lib/thunderbird/chrome/toolkit/content/global/alerts/alert.xul lib/thunderbird/chrome/toolkit/content/global/appPicker.js lib/thunderbird/chrome/toolkit/content/global/appPicker.xul +lib/thunderbird/chrome/toolkit/content/global/autocomplete.css lib/thunderbird/chrome/toolkit/content/global/backgroundPageThumbsContent.js lib/thunderbird/chrome/toolkit/content/global/bindings/autocomplete.xml lib/thunderbird/chrome/toolkit/content/global/bindings/browser.xml @@ -1358,8 +1382,6 @@ lib/thunderbird/chrome/toolkit/content/global/bindings/wizard.xml lib/thunderbird/chrome/toolkit/content/global/browser-child.js lib/thunderbird/chrome/toolkit/content/global/browser-content.js lib/thunderbird/chrome/toolkit/content/global/buildconfig.html -lib/thunderbird/chrome/toolkit/content/global/charsetOverlay.js -lib/thunderbird/chrome/toolkit/content/global/charsetOverlay.xul lib/thunderbird/chrome/toolkit/content/global/commonDialog.css lib/thunderbird/chrome/toolkit/content/global/commonDialog.js lib/thunderbird/chrome/toolkit/content/global/commonDialog.xul @@ -1370,8 +1392,6 @@ lib/thunderbird/chrome/toolkit/content/global/console.js lib/thunderbird/chrome/toolkit/content/global/console.xul lib/thunderbird/chrome/toolkit/content/global/consoleBindings.xml lib/thunderbird/chrome/toolkit/content/global/contentAreaUtils.js -lib/thunderbird/chrome/toolkit/content/global/customizeCharset.js -lib/thunderbird/chrome/toolkit/content/global/customizeCharset.xul lib/thunderbird/chrome/toolkit/content/global/customizeToolbar.css lib/thunderbird/chrome/toolkit/content/global/customizeToolbar.js lib/thunderbird/chrome/toolkit/content/global/customizeToolbar.xul @@ -1379,7 +1399,6 @@ lib/thunderbird/chrome/toolkit/content/global/devicestorage.properties lib/thunderbird/chrome/toolkit/content/global/dialogOverlay.js lib/thunderbird/chrome/toolkit/content/global/dialogOverlay.xul lib/thunderbird/chrome/toolkit/content/global/directionDetector.html -lib/thunderbird/chrome/toolkit/content/global/directoryLinks.json lib/thunderbird/chrome/toolkit/content/global/editMenuOverlay.js lib/thunderbird/chrome/toolkit/content/global/editMenuOverlay.xul lib/thunderbird/chrome/toolkit/content/global/filepicker.js @@ -1394,6 +1413,7 @@ lib/thunderbird/chrome/toolkit/content/global/globalOverlay.xul lib/thunderbird/chrome/toolkit/content/global/inlineSpellCheckUI.js lib/thunderbird/chrome/toolkit/content/global/license.html lib/thunderbird/chrome/toolkit/content/global/menulist.css +lib/thunderbird/chrome/toolkit/content/global/minimal-xul.css lib/thunderbird/chrome/toolkit/content/global/mozilla.xhtml lib/thunderbird/chrome/toolkit/content/global/netError.xhtml lib/thunderbird/chrome/toolkit/content/global/notfound.wav @@ -1403,6 +1423,7 @@ lib/thunderbird/chrome/toolkit/content/global/nsUserSettings.js lib/thunderbird/chrome/toolkit/content/global/platformHTMLBindings.xml lib/thunderbird/chrome/toolkit/content/global/plugins.css lib/thunderbird/chrome/toolkit/content/global/plugins.html +lib/thunderbird/chrome/toolkit/content/global/post-fork-preload.js lib/thunderbird/chrome/toolkit/content/global/preload.js lib/thunderbird/chrome/toolkit/content/global/printPageSetup.js lib/thunderbird/chrome/toolkit/content/global/printPageSetup.xul @@ -1416,6 +1437,8 @@ lib/thunderbird/chrome/toolkit/content/global/printdialog.js lib/thunderbird/chrome/toolkit/content/global/printdialog.xul lib/thunderbird/chrome/toolkit/content/global/printjoboptions.js lib/thunderbird/chrome/toolkit/content/global/printjoboptions.xul +lib/thunderbird/chrome/toolkit/content/global/reader/aboutReader.html +lib/thunderbird/chrome/toolkit/content/global/reader/aboutReader.js lib/thunderbird/chrome/toolkit/content/global/remote-test-ipc.js lib/thunderbird/chrome/toolkit/content/global/resetProfile.css lib/thunderbird/chrome/toolkit/content/global/resetProfile.js @@ -1429,9 +1452,6 @@ lib/thunderbird/chrome/toolkit/content/global/svg/svgBindings.xml lib/thunderbird/chrome/toolkit/content/global/tabprompts.css lib/thunderbird/chrome/toolkit/content/global/tabprompts.xml lib/thunderbird/chrome/toolkit/content/global/test-ipc.xul -lib/thunderbird/chrome/toolkit/content/global/test-ipcbrowser-chrome.js -lib/thunderbird/chrome/toolkit/content/global/test-ipcbrowser-content.js -lib/thunderbird/chrome/toolkit/content/global/test-ipcbrowser.xul lib/thunderbird/chrome/toolkit/content/global/textbox.css lib/thunderbird/chrome/toolkit/content/global/treeUtils.js lib/thunderbird/chrome/toolkit/content/global/viewPartialSource.js @@ -1453,6 +1473,7 @@ lib/thunderbird/chrome/toolkit/content/mozapps/downloads/downloads.js lib/thunderbird/chrome/toolkit/content/mozapps/downloads/downloads.xul lib/thunderbird/chrome/toolkit/content/mozapps/downloads/helperApps.js lib/thunderbird/chrome/toolkit/content/mozapps/downloads/unknownContentType.xul +lib/thunderbird/chrome/toolkit/content/mozapps/extensions/OpenH264-license.txt lib/thunderbird/chrome/toolkit/content/mozapps/extensions/about.js lib/thunderbird/chrome/toolkit/content/mozapps/extensions/about.xul lib/thunderbird/chrome/toolkit/content/mozapps/extensions/blocklist.css @@ -1465,6 +1486,7 @@ lib/thunderbird/chrome/toolkit/content/mozapps/extensions/extensions.css lib/thunderbird/chrome/toolkit/content/mozapps/extensions/extensions.js lib/thunderbird/chrome/toolkit/content/mozapps/extensions/extensions.xml lib/thunderbird/chrome/toolkit/content/mozapps/extensions/extensions.xul +lib/thunderbird/chrome/toolkit/content/mozapps/extensions/gmpPrefs.xul lib/thunderbird/chrome/toolkit/content/mozapps/extensions/list.js lib/thunderbird/chrome/toolkit/content/mozapps/extensions/list.xul lib/thunderbird/chrome/toolkit/content/mozapps/extensions/newaddon.js @@ -1483,19 +1505,12 @@ lib/thunderbird/chrome/toolkit/content/mozapps/handling/dialog.xul lib/thunderbird/chrome/toolkit/content/mozapps/handling/handler.css lib/thunderbird/chrome/toolkit/content/mozapps/handling/handler.xml lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginFinderBinding.css -lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginInstallerDatasource.js -lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginInstallerService.js -lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginInstallerWizard.css -lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginInstallerWizard.js -lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginInstallerWizard.xul lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginProblem.xml lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginProblemBinding.css lib/thunderbird/chrome/toolkit/content/mozapps/plugins/pluginProblemContent.css lib/thunderbird/chrome/toolkit/content/mozapps/preferences/changemp.js lib/thunderbird/chrome/toolkit/content/mozapps/preferences/changemp.xul lib/thunderbird/chrome/toolkit/content/mozapps/preferences/fontbuilder.js -lib/thunderbird/chrome/toolkit/content/mozapps/preferences/ocsp.js -lib/thunderbird/chrome/toolkit/content/mozapps/preferences/ocsp.xul lib/thunderbird/chrome/toolkit/content/mozapps/preferences/removemp.js lib/thunderbird/chrome/toolkit/content/mozapps/preferences/removemp.xul lib/thunderbird/chrome/toolkit/content/mozapps/profile/createProfileWizard.js @@ -1524,6 +1539,7 @@ lib/thunderbird/chrome/toolkit/res/arrow.gif lib/thunderbird/chrome/toolkit/res/arrowd.gif lib/thunderbird/chrome/toolkit/res/broken-image.png lib/thunderbird/chrome/toolkit/res/charsetData.properties +lib/thunderbird/chrome/toolkit/res/counterstyles.css lib/thunderbird/chrome/toolkit/res/forms.css lib/thunderbird/chrome/toolkit/res/full-screen-override.css lib/thunderbird/chrome/toolkit/res/hiddenWindow.html @@ -1540,6 +1556,7 @@ lib/thunderbird/chrome/toolkit/skin/classic/global/about.css lib/thunderbird/chrome/toolkit/skin/classic/global/aboutCache.css lib/thunderbird/chrome/toolkit/skin/classic/global/aboutCacheEntry.css lib/thunderbird/chrome/toolkit/skin/classic/global/aboutMemory.css +lib/thunderbird/chrome/toolkit/skin/classic/global/aboutReader.css lib/thunderbird/chrome/toolkit/skin/classic/global/aboutSupport.css lib/thunderbird/chrome/toolkit/skin/classic/global/alerts/alert.css lib/thunderbird/chrome/toolkit/skin/classic/global/alerts/notification-48.png @@ -1610,6 +1627,7 @@ lib/thunderbird/chrome/toolkit/skin/classic/global/icons/Restore.gif lib/thunderbird/chrome/toolkit/skin/classic/global/icons/Search-close.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/Search-glass.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/Warning.png +lib/thunderbird/chrome/toolkit/skin/classic/global/icons/autocomplete-search.svg lib/thunderbird/chrome/toolkit/skin/classic/global/icons/autoscroll.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/blacklist_favicon.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/blacklist_large.png @@ -1647,10 +1665,18 @@ lib/thunderbird/chrome/toolkit/skin/classic/global/icons/warning-16.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/warning-24.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/warning-64.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/warning-large.png +lib/thunderbird/chrome/toolkit/skin/classic/global/icons/warning.svg lib/thunderbird/chrome/toolkit/skin/classic/global/icons/webapps-16.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/webapps-64.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/windowControls.png lib/thunderbird/chrome/toolkit/skin/classic/global/icons/wrap.png +lib/thunderbird/chrome/toolkit/skin/classic/global/in-content/check-partial.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/in-content/check.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/in-content/common.css +lib/thunderbird/chrome/toolkit/skin/classic/global/in-content/dropdown.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/in-content/help-glyph.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/in-content/info-pages.css +lib/thunderbird/chrome/toolkit/skin/classic/global/in-content/radio.svg lib/thunderbird/chrome/toolkit/skin/classic/global/inContentUI.css lib/thunderbird/chrome/toolkit/skin/classic/global/inContentUI/background-texture.png lib/thunderbird/chrome/toolkit/skin/classic/global/linkTree.css @@ -1694,6 +1720,14 @@ lib/thunderbird/chrome/toolkit/skin/classic/global/progressmeter.css lib/thunderbird/chrome/toolkit/skin/classic/global/radio.css lib/thunderbird/chrome/toolkit/skin/classic/global/radio/radio-check-dis.gif lib/thunderbird/chrome/toolkit/skin/classic/global/radio/radio-check.gif +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Add-24x24.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Close-24x24.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Delete-24x24.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Minus-24x24.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Plus-24x24.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Reading-List-24x24.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Type-Controls-24x24.svg +lib/thunderbird/chrome/toolkit/skin/classic/global/reader/RM-Type-Controls-Arrow.svg lib/thunderbird/chrome/toolkit/skin/classic/global/resizer.css lib/thunderbird/chrome/toolkit/skin/classic/global/richlistbox.css lib/thunderbird/chrome/toolkit/skin/classic/global/scale.css @@ -1710,6 +1744,7 @@ lib/thunderbird/chrome/toolkit/skin/classic/global/tabbox.css lib/thunderbird/chrome/toolkit/skin/classic/global/tabprompts.css lib/thunderbird/chrome/toolkit/skin/classic/global/textbox.css lib/thunderbird/chrome/toolkit/skin/classic/global/toolbar.css +lib/thunderbird/chrome/toolkit/skin/classic/global/toolbar/chevron-inverted.png lib/thunderbird/chrome/toolkit/skin/classic/global/toolbar/chevron.gif lib/thunderbird/chrome/toolkit/skin/classic/global/toolbar/spring.png lib/thunderbird/chrome/toolkit/skin/classic/global/toolbarbutton.css @@ -1754,7 +1789,6 @@ lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/experimentGeneric lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/extensionGeneric-16.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/extensionGeneric.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/extensions.css -lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/extensions.svg lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/heart.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/localeGeneric.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/navigation.png @@ -1769,7 +1803,8 @@ lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/stripes-warning.p lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/themeGeneric-16.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/themeGeneric.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/update.css -lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/utilities.png +lib/thunderbird/chrome/toolkit/skin/classic/mozapps/extensions/utilities.svg +lib/thunderbird/chrome/toolkit/skin/classic/mozapps/formautofill/requestAutocomplete.css lib/thunderbird/chrome/toolkit/skin/classic/mozapps/handling/handling.css lib/thunderbird/chrome/toolkit/skin/classic/mozapps/passwordmgr/key-16.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/passwordmgr/key-64.png @@ -1790,7 +1825,6 @@ lib/thunderbird/chrome/toolkit/skin/classic/mozapps/plugins/pluginBlocked.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric-16.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric.png lib/thunderbird/chrome/toolkit/skin/classic/mozapps/plugins/pluginHelp-16.png -lib/thunderbird/chrome/toolkit/skin/classic/mozapps/plugins/pluginInstallerWizard.css lib/thunderbird/chrome/toolkit/skin/classic/mozapps/plugins/pluginProblem.css lib/thunderbird/chrome/toolkit/skin/classic/mozapps/profile/profileSelection.css lib/thunderbird/chrome/toolkit/skin/classic/mozapps/profile/profileicon.png @@ -1804,20 +1838,28 @@ lib/thunderbird/components/BrowserElementParent.js lib/thunderbird/components/ColorAnalyzer.js lib/thunderbird/components/ConsoleAPIStorage.js lib/thunderbird/components/ContactManager.js +lib/thunderbird/components/ContentProcessSingleton.js lib/thunderbird/components/DownloadLegacy.js +lib/thunderbird/components/DownloadsStartup.js lib/thunderbird/components/FeedProcessor.js +lib/thunderbird/components/FormAutofillContentService.js +lib/thunderbird/components/FormAutofillStartup.js lib/thunderbird/components/FormHistoryStartup.js +lib/thunderbird/components/MainProcessSingleton.js lib/thunderbird/components/NetworkGeolocationProvider.js lib/thunderbird/components/PageThumbsProtocol.js lib/thunderbird/components/PermissionSettings.js lib/thunderbird/components/PlacesCategoriesStarter.js +lib/thunderbird/components/PresentationDeviceInfoManager.js lib/thunderbird/components/SettingsManager.js lib/thunderbird/components/SiteSpecificUserAgent.js lib/thunderbird/components/TCPServerSocket.js lib/thunderbird/components/TCPSocket.js lib/thunderbird/components/TCPSocketParentIntermediary.js lib/thunderbird/components/TelemetryStartup.js +lib/thunderbird/components/UnifiedComplete.js lib/thunderbird/components/Webapps.js +lib/thunderbird/components/XULStore.js lib/thunderbird/components/aboutRedirector.js lib/thunderbird/components/addonManager.js lib/thunderbird/components/amContentHandler.js @@ -1825,12 +1867,12 @@ lib/thunderbird/components/amInstallTrigger.js lib/thunderbird/components/amWebInstallListener.js lib/thunderbird/components/components.manifest lib/thunderbird/components/contentAreaDropListener.js -lib/thunderbird/components/contentSecurityPolicy.js lib/thunderbird/components/crypto-SDR.js lib/thunderbird/components/facebook.js lib/thunderbird/components/folderLookupService.js lib/thunderbird/components/glautocomp.js lib/thunderbird/components/gtalk.js +lib/thunderbird/components/htmlMenuBuilder.js lib/thunderbird/components/imAccounts.js lib/thunderbird/components/imCommands.js lib/thunderbird/components/imContacts.js @@ -1851,6 +1893,7 @@ lib/thunderbird/components/mdn-service.js lib/thunderbird/components/messageWakeupService.js lib/thunderbird/components/mimeJSComponents.js lib/thunderbird/components/msgAsyncPrompter.js +lib/thunderbird/components/msgOAuth2Module.js lib/thunderbird/components/newMailNotificationService.js lib/thunderbird/components/newsblog.js lib/thunderbird/components/nsAbAutoCompleteMyDomain.js @@ -1860,6 +1903,7 @@ lib/thunderbird/components/nsAbLDAPAutoCompleteSearch.js lib/thunderbird/components/nsActivity.js lib/thunderbird/components/nsActivityManager.js lib/thunderbird/components/nsActivityManagerUI.js +lib/thunderbird/components/nsAsyncShutdown.js lib/thunderbird/components/nsBlocklistService.js lib/thunderbird/components/nsBox.js lib/thunderbird/components/nsContentDispatchChooser.js @@ -1867,7 +1911,6 @@ lib/thunderbird/components/nsContentPrefService.js lib/thunderbird/components/nsCrashMonitor.js lib/thunderbird/components/nsDOMIdentity.js lib/thunderbird/components/nsDefaultCLH.js -lib/thunderbird/components/nsDownloadManagerUI.js lib/thunderbird/components/nsFilePicker.js lib/thunderbird/components/nsFormAutoComplete.js lib/thunderbird/components/nsFormHistory.js @@ -1886,7 +1929,6 @@ lib/thunderbird/components/nsMailDefaultHandler.js lib/thunderbird/components/nsMailNewsCommandLineHandler.js lib/thunderbird/components/nsMsgTraitService.js lib/thunderbird/components/nsNewsAutoCompleteSearch.js -lib/thunderbird/components/nsPhishingProtectionApplication.js lib/thunderbird/components/nsPlacesAutoComplete.js lib/thunderbird/components/nsPlacesExpiration.js lib/thunderbird/components/nsPrompter.js @@ -1895,6 +1937,7 @@ lib/thunderbird/components/nsSearchService.js lib/thunderbird/components/nsSearchSuggestions.js lib/thunderbird/components/nsSetDefaultMail.js lib/thunderbird/components/nsTaggingService.js +lib/thunderbird/components/nsTerminatorTelemetry.js lib/thunderbird/components/nsURLFormatter.js lib/thunderbird/components/nsUpdateTimerManager.js lib/thunderbird/components/nsUrlClassifierHashCompleter.js @@ -1905,10 +1948,11 @@ lib/thunderbird/components/offlineStartup.js lib/thunderbird/components/smileProtocolHandler.js lib/thunderbird/components/smime-service.js lib/thunderbird/components/steelApplication.js -lib/thunderbird/components/storage-mozStorage.js +lib/thunderbird/components/storage-json.js lib/thunderbird/components/twitter.js lib/thunderbird/components/txEXSLTRegExFunctions.js lib/thunderbird/components/xmpp.js +lib/thunderbird/components/yahoo.js lib/thunderbird/defaults/autoconfig/platform.js lib/thunderbird/defaults/autoconfig/prefcalls.js lib/thunderbird/defaults/messenger/mailViews.dat @@ -1929,8 +1973,8 @@ lib/thunderbird/dependentlibs.list lib/thunderbird/dictionaries/en-US.aff lib/thunderbird/dictionaries/en-US.dic lib/thunderbird/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon.png +lib/thunderbird/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon64.png lib/thunderbird/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf -lib/thunderbird/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/preview.png lib/thunderbird/greprefs.js lib/thunderbird/hyphenation/hyph_af.dic lib/thunderbird/hyphenation/hyph_bg.dic @@ -1980,6 +2024,7 @@ lib/thunderbird/libldif60.so lib/thunderbird/libmozalloc.so lib/thunderbird/libprldap60.so lib/thunderbird/libxul.so +lib/thunderbird/modules/AboutReader.jsm lib/thunderbird/modules/ActivitiesService.jsm lib/thunderbird/modules/ActivitiesServiceFilter.jsm lib/thunderbird/modules/AddonManager.jsm @@ -1993,13 +2038,13 @@ lib/thunderbird/modules/AsyncShutdown.jsm lib/thunderbird/modules/AsyncSpellCheckTestHelper.jsm lib/thunderbird/modules/AutoCompleteE10S.jsm lib/thunderbird/modules/BackgroundPageThumbs.jsm +lib/thunderbird/modules/Battery.jsm lib/thunderbird/modules/BinarySearch.jsm lib/thunderbird/modules/BookmarkHTMLUtils.jsm lib/thunderbird/modules/BookmarkJSONUtils.jsm -lib/thunderbird/modules/BrowserElementParent.jsm +lib/thunderbird/modules/Bookmarks.jsm lib/thunderbird/modules/BrowserElementPromptService.jsm lib/thunderbird/modules/BrowserUtils.jsm -lib/thunderbird/modules/CSPUtils.jsm lib/thunderbird/modules/CertUtils.jsm lib/thunderbird/modules/CharsetMenu.jsm lib/thunderbird/modules/ChromeManifestParser.jsm @@ -2011,20 +2056,21 @@ lib/thunderbird/modules/ContactDB.jsm lib/thunderbird/modules/ContactService.jsm lib/thunderbird/modules/ContentPrefInstance.jsm lib/thunderbird/modules/ContentPrefService2.jsm +lib/thunderbird/modules/ContentPrefServiceChild.jsm +lib/thunderbird/modules/ContentPrefServiceParent.jsm lib/thunderbird/modules/ContentPrefStore.jsm +lib/thunderbird/modules/ContentPrefUtils.jsm lib/thunderbird/modules/CrashMonitor.jsm +lib/thunderbird/modules/Credentials.jsm lib/thunderbird/modules/DOMIdentity.jsm lib/thunderbird/modules/DOMRequestHelper.jsm lib/thunderbird/modules/DataStoreChangeNotifier.jsm lib/thunderbird/modules/DataStoreCursorImpl.jsm lib/thunderbird/modules/DataStoreDB.jsm -lib/thunderbird/modules/DataStoreImpl.jsm -lib/thunderbird/modules/DataStoreServiceInternal.jsm lib/thunderbird/modules/DeferredSave.jsm lib/thunderbird/modules/DeferredTask.jsm lib/thunderbird/modules/Deprecated.jsm lib/thunderbird/modules/Dict.jsm -lib/thunderbird/modules/DirectoryLinksProvider.jsm lib/thunderbird/modules/DownloadCore.jsm lib/thunderbird/modules/DownloadImport.jsm lib/thunderbird/modules/DownloadIntegration.jsm @@ -2040,28 +2086,47 @@ lib/thunderbird/modules/FeedUtils.jsm lib/thunderbird/modules/FileUtils.jsm lib/thunderbird/modules/Finder.jsm lib/thunderbird/modules/ForgetAboutSite.jsm +lib/thunderbird/modules/FormAutofill.jsm +lib/thunderbird/modules/FormAutofillIntegration.jsm lib/thunderbird/modules/FormData.jsm lib/thunderbird/modules/FormHistory.jsm lib/thunderbird/modules/FrameWorker.jsm lib/thunderbird/modules/FrameWorkerContent.js lib/thunderbird/modules/FreeSpaceWatcher.jsm +lib/thunderbird/modules/FxAccounts.jsm +lib/thunderbird/modules/FxAccountsClient.jsm +lib/thunderbird/modules/FxAccountsCommon.js +lib/thunderbird/modules/FxAccountsOAuthClient.jsm +lib/thunderbird/modules/FxAccountsOAuthGrantClient.jsm +lib/thunderbird/modules/FxAccountsProfileClient.jsm +lib/thunderbird/modules/GMPInstallManager.jsm +lib/thunderbird/modules/GMPUtils.jsm lib/thunderbird/modules/Geometry.jsm +lib/thunderbird/modules/History.jsm lib/thunderbird/modules/Http.jsm lib/thunderbird/modules/IOUtils.js lib/thunderbird/modules/ISO8601DateUtils.jsm +lib/thunderbird/modules/ImportExport.jsm lib/thunderbird/modules/IndexedDBHelper.jsm lib/thunderbird/modules/InlineSpellChecker.jsm +lib/thunderbird/modules/InlineSpellCheckerContent.jsm lib/thunderbird/modules/InsecurePasswordUtils.jsm lib/thunderbird/modules/InterAppCommService.jsm lib/thunderbird/modules/JXON.js lib/thunderbird/modules/Keyboard.jsm +lib/thunderbird/modules/Langpacks.jsm lib/thunderbird/modules/LightweightThemeConsumer.jsm lib/thunderbird/modules/LightweightThemeManager.jsm lib/thunderbird/modules/LoadContextInfo.jsm lib/thunderbird/modules/Log.jsm +lib/thunderbird/modules/LoginHelper.jsm +lib/thunderbird/modules/LoginImport.jsm lib/thunderbird/modules/LoginManagerContent.jsm +lib/thunderbird/modules/LoginManagerParent.jsm +lib/thunderbird/modules/LoginStore.jsm lib/thunderbird/modules/MailConsts.js lib/thunderbird/modules/MailUtils.js +lib/thunderbird/modules/ManifestProcessor.jsm lib/thunderbird/modules/MessagePortBase.jsm lib/thunderbird/modules/MessagePortWorker.js lib/thunderbird/modules/Microformats.js @@ -2070,16 +2135,18 @@ lib/thunderbird/modules/MsgHdrSyntheticView.js lib/thunderbird/modules/NativeApp.jsm lib/thunderbird/modules/NetUtil.jsm lib/thunderbird/modules/NewTabUtils.jsm +lib/thunderbird/modules/NormalizedMap.jsm lib/thunderbird/modules/NotificationDB.jsm lib/thunderbird/modules/OAuth2.jsm -lib/thunderbird/modules/ObjectWrapper.jsm +lib/thunderbird/modules/OAuth2Providers.jsm lib/thunderbird/modules/OfflineCacheInstaller.jsm lib/thunderbird/modules/OperatorApps.jsm lib/thunderbird/modules/PageMenu.jsm +lib/thunderbird/modules/PageMetadata.jsm +lib/thunderbird/modules/PageThumbUtils.jsm lib/thunderbird/modules/PageThumbs.jsm lib/thunderbird/modules/PageThumbsWorker.js lib/thunderbird/modules/PerfMeasurement.jsm -lib/thunderbird/modules/PermissionPromptHelper.jsm lib/thunderbird/modules/PermissionSettings.jsm lib/thunderbird/modules/PermissionsInstaller.jsm lib/thunderbird/modules/PermissionsTable.jsm @@ -2090,18 +2157,23 @@ lib/thunderbird/modules/PhoneNumberNormalizer.jsm lib/thunderbird/modules/PhoneNumberUtils.jsm lib/thunderbird/modules/PlacesBackups.jsm lib/thunderbird/modules/PlacesDBUtils.jsm +lib/thunderbird/modules/PlacesSearchAutocompleteProvider.jsm lib/thunderbird/modules/PlacesTransactions.jsm lib/thunderbird/modules/PlacesUtils.jsm lib/thunderbird/modules/PluralForm.jsm lib/thunderbird/modules/PopupNotifications.jsm lib/thunderbird/modules/Preferences.jsm -lib/thunderbird/modules/PriorityUrlProvider.jsm +lib/thunderbird/modules/Prefetcher.jsm +lib/thunderbird/modules/PresentationDeviceInfoManager.jsm lib/thunderbird/modules/PrivateBrowsingUtils.jsm ${PLIST.sps}lib/thunderbird/modules/Profiler.jsm lib/thunderbird/modules/Promise-backend.js lib/thunderbird/modules/Promise.jsm +lib/thunderbird/modules/PromiseUtils.jsm +lib/thunderbird/modules/PromiseWorker.jsm lib/thunderbird/modules/PropertyListUtils.jsm lib/thunderbird/modules/PushService.jsm +lib/thunderbird/modules/ReaderMode.jsm lib/thunderbird/modules/RemoteAddonsChild.jsm lib/thunderbird/modules/RemoteAddonsParent.jsm lib/thunderbird/modules/RemoteController.jsm @@ -2110,19 +2182,28 @@ lib/thunderbird/modules/RemoteFinder.jsm lib/thunderbird/modules/RemoteSecurityUI.jsm lib/thunderbird/modules/RemoteWebNavigation.jsm lib/thunderbird/modules/RemoteWebProgress.jsm +lib/thunderbird/modules/RequestAutocompleteUI.jsm +lib/thunderbird/modules/RequestSyncApp.jsm +lib/thunderbird/modules/RequestSyncService.jsm +lib/thunderbird/modules/RequestSyncTask.jsm lib/thunderbird/modules/ResetProfile.jsm +lib/thunderbird/modules/ResourceStatsDB.jsm +lib/thunderbird/modules/ResourceStatsService.jsm +lib/thunderbird/modules/RokuApp.jsm lib/thunderbird/modules/SafeBrowsing.jsm lib/thunderbird/modules/ScriptPreloader.jsm lib/thunderbird/modules/ScrollPosition.jsm lib/thunderbird/modules/SearchIntegration.js +lib/thunderbird/modules/SearchStaticData.jsm +lib/thunderbird/modules/SearchSuggestionController.jsm lib/thunderbird/modules/SelectContentHelper.jsm lib/thunderbird/modules/SelectParentHelper.jsm lib/thunderbird/modules/Services.jsm -lib/thunderbird/modules/SettingsChangeNotifier.jsm lib/thunderbird/modules/SettingsDB.jsm -lib/thunderbird/modules/SettingsQueue.jsm +lib/thunderbird/modules/SettingsRequestManager.jsm lib/thunderbird/modules/SharedPromptUtils.jsm lib/thunderbird/modules/ShortcutUtils.jsm +lib/thunderbird/modules/SimpleServiceDiscovery.jsm lib/thunderbird/modules/Sntp.jsm lib/thunderbird/modules/SocialService.jsm lib/thunderbird/modules/SpatialNavigation.jsm @@ -2134,15 +2215,19 @@ lib/thunderbird/modules/Task.jsm lib/thunderbird/modules/TelemetryFile.jsm lib/thunderbird/modules/TelemetryLog.jsm lib/thunderbird/modules/TelemetryPing.jsm +lib/thunderbird/modules/TelemetrySession.jsm lib/thunderbird/modules/TelemetryStopwatch.jsm lib/thunderbird/modules/TelemetryTimestamps.jsm lib/thunderbird/modules/ThirdPartyCookieProbe.jsm lib/thunderbird/modules/Timer.jsm lib/thunderbird/modules/Troubleshoot.jsm +lib/thunderbird/modules/TrustedHostedAppsUtils.jsm lib/thunderbird/modules/UITelemetry.jsm lib/thunderbird/modules/UpdateChannel.jsm lib/thunderbird/modules/UserAgentOverrides.jsm lib/thunderbird/modules/UserAgentUpdates.jsm +lib/thunderbird/modules/UserCustomizations.jsm +lib/thunderbird/modules/WebChannel.jsm lib/thunderbird/modules/WebappOSUtils.jsm lib/thunderbird/modules/Webapps.jsm lib/thunderbird/modules/WindowDraggingUtils.jsm @@ -2177,6 +2262,7 @@ lib/thunderbird/modules/addons/AddonRepository.jsm lib/thunderbird/modules/addons/AddonRepository_SQLiteMigrator.jsm lib/thunderbird/modules/addons/AddonUpdateChecker.jsm lib/thunderbird/modules/addons/Content.js +lib/thunderbird/modules/addons/GMPProvider.jsm lib/thunderbird/modules/addons/LightweightThemeImageOptimizer.jsm lib/thunderbird/modules/addons/PluginProvider.jsm lib/thunderbird/modules/addons/SpellCheckDictionaryBootstrap.js @@ -2187,12 +2273,16 @@ lib/thunderbird/modules/attachmentChecker.js lib/thunderbird/modules/chatHandler.jsm lib/thunderbird/modules/chatNotifications.jsm lib/thunderbird/modules/cloudFileAccounts.js -lib/thunderbird/modules/commonjs/diffpatcher/History.md -lib/thunderbird/modules/commonjs/diffpatcher/License.md -lib/thunderbird/modules/commonjs/diffpatcher/Readme.md +lib/thunderbird/modules/commonjs/dev/debuggee.js +lib/thunderbird/modules/commonjs/dev/frame-script.js +lib/thunderbird/modules/commonjs/dev/panel.js +lib/thunderbird/modules/commonjs/dev/panel/view.js +lib/thunderbird/modules/commonjs/dev/ports.js +lib/thunderbird/modules/commonjs/dev/toolbox.js +lib/thunderbird/modules/commonjs/dev/utils.js +lib/thunderbird/modules/commonjs/dev/volcan.js lib/thunderbird/modules/commonjs/diffpatcher/diff.js lib/thunderbird/modules/commonjs/diffpatcher/index.js -lib/thunderbird/modules/commonjs/diffpatcher/package.json lib/thunderbird/modules/commonjs/diffpatcher/patch.js lib/thunderbird/modules/commonjs/diffpatcher/rebase.js lib/thunderbird/modules/commonjs/diffpatcher/test/common.js @@ -2200,18 +2290,23 @@ lib/thunderbird/modules/commonjs/diffpatcher/test/diff.js lib/thunderbird/modules/commonjs/diffpatcher/test/index.js lib/thunderbird/modules/commonjs/diffpatcher/test/patch.js lib/thunderbird/modules/commonjs/diffpatcher/test/tap.js -lib/thunderbird/modules/commonjs/method/History.md -lib/thunderbird/modules/commonjs/method/License.md -lib/thunderbird/modules/commonjs/method/Readme.md +lib/thunderbird/modules/commonjs/framescript/FrameScriptManager.jsm +lib/thunderbird/modules/commonjs/framescript/LoaderHelper.jsm +lib/thunderbird/modules/commonjs/framescript/context-menu.js +lib/thunderbird/modules/commonjs/framescript/contextmenu-events.js +lib/thunderbird/modules/commonjs/framescript/manager.js +lib/thunderbird/modules/commonjs/framescript/tab-events.js +lib/thunderbird/modules/commonjs/framescript/util.js +lib/thunderbird/modules/commonjs/index.js lib/thunderbird/modules/commonjs/method/core.js -lib/thunderbird/modules/commonjs/method/package.json lib/thunderbird/modules/commonjs/method/test/browser.js lib/thunderbird/modules/commonjs/method/test/common.js lib/thunderbird/modules/commonjs/node/os.js -lib/thunderbird/modules/commonjs/sdk/addon-page.js +lib/thunderbird/modules/commonjs/sdk/addon/bootstrap.js lib/thunderbird/modules/commonjs/sdk/addon/events.js lib/thunderbird/modules/commonjs/sdk/addon/host.js lib/thunderbird/modules/commonjs/sdk/addon/installer.js +lib/thunderbird/modules/commonjs/sdk/addon/manager.js lib/thunderbird/modules/commonjs/sdk/addon/runner.js lib/thunderbird/modules/commonjs/sdk/addon/window.js lib/thunderbird/modules/commonjs/sdk/base64.js @@ -2221,14 +2316,20 @@ lib/thunderbird/modules/commonjs/sdk/console/plain-text.js lib/thunderbird/modules/commonjs/sdk/console/traceback.js lib/thunderbird/modules/commonjs/sdk/content/content-worker.js lib/thunderbird/modules/commonjs/sdk/content/content.js +lib/thunderbird/modules/commonjs/sdk/content/context-menu.js lib/thunderbird/modules/commonjs/sdk/content/events.js lib/thunderbird/modules/commonjs/sdk/content/loader.js lib/thunderbird/modules/commonjs/sdk/content/mod.js lib/thunderbird/modules/commonjs/sdk/content/sandbox.js lib/thunderbird/modules/commonjs/sdk/content/thumbnail.js lib/thunderbird/modules/commonjs/sdk/content/utils.js +lib/thunderbird/modules/commonjs/sdk/content/worker-child.js lib/thunderbird/modules/commonjs/sdk/content/worker.js lib/thunderbird/modules/commonjs/sdk/context-menu.js +lib/thunderbird/modules/commonjs/sdk/context-menu/context.js +lib/thunderbird/modules/commonjs/sdk/context-menu/core.js +lib/thunderbird/modules/commonjs/sdk/context-menu/readers.js +lib/thunderbird/modules/commonjs/sdk/context-menu@2.js lib/thunderbird/modules/commonjs/sdk/core/disposable.js lib/thunderbird/modules/commonjs/sdk/core/heritage.js lib/thunderbird/modules/commonjs/sdk/core/namespace.js @@ -2244,6 +2345,7 @@ lib/thunderbird/modules/commonjs/sdk/deprecated/light-traits.js lib/thunderbird/modules/commonjs/sdk/deprecated/list.js lib/thunderbird/modules/commonjs/sdk/deprecated/memory.js lib/thunderbird/modules/commonjs/sdk/deprecated/symbiont.js +lib/thunderbird/modules/commonjs/sdk/deprecated/sync-worker.js lib/thunderbird/modules/commonjs/sdk/deprecated/traits-worker.js lib/thunderbird/modules/commonjs/sdk/deprecated/traits.js lib/thunderbird/modules/commonjs/sdk/deprecated/traits/core.js @@ -2287,10 +2389,14 @@ lib/thunderbird/modules/commonjs/sdk/l10n/plural-rules.js lib/thunderbird/modules/commonjs/sdk/l10n/prefs.js lib/thunderbird/modules/commonjs/sdk/l10n/properties/core.js lib/thunderbird/modules/commonjs/sdk/lang/functional.js +lib/thunderbird/modules/commonjs/sdk/lang/functional/concurrent.js +lib/thunderbird/modules/commonjs/sdk/lang/functional/core.js +lib/thunderbird/modules/commonjs/sdk/lang/functional/helpers.js lib/thunderbird/modules/commonjs/sdk/lang/type.js lib/thunderbird/modules/commonjs/sdk/lang/weak-set.js lib/thunderbird/modules/commonjs/sdk/loader/cuddlefish.js lib/thunderbird/modules/commonjs/sdk/loader/sandbox.js +lib/thunderbird/modules/commonjs/sdk/messaging.js lib/thunderbird/modules/commonjs/sdk/model/core.js lib/thunderbird/modules/commonjs/sdk/net/url.js lib/thunderbird/modules/commonjs/sdk/net/xhr.js @@ -2302,7 +2408,6 @@ lib/thunderbird/modules/commonjs/sdk/page-worker.js lib/thunderbird/modules/commonjs/sdk/panel.js lib/thunderbird/modules/commonjs/sdk/panel/events.js lib/thunderbird/modules/commonjs/sdk/panel/utils.js -lib/thunderbird/modules/commonjs/sdk/panel/window.js lib/thunderbird/modules/commonjs/sdk/passwords.js lib/thunderbird/modules/commonjs/sdk/passwords/utils.js lib/thunderbird/modules/commonjs/sdk/places/bookmarks.js @@ -2316,10 +2421,11 @@ lib/thunderbird/modules/commonjs/sdk/places/host/host-tags.js lib/thunderbird/modules/commonjs/sdk/places/utils.js lib/thunderbird/modules/commonjs/sdk/platform/xpcom.js lib/thunderbird/modules/commonjs/sdk/preferences/event-target.js +lib/thunderbird/modules/commonjs/sdk/preferences/native-options.js lib/thunderbird/modules/commonjs/sdk/preferences/service.js +lib/thunderbird/modules/commonjs/sdk/preferences/utils.js lib/thunderbird/modules/commonjs/sdk/private-browsing.js lib/thunderbird/modules/commonjs/sdk/private-browsing/utils.js -lib/thunderbird/modules/commonjs/sdk/private-browsing/window/utils.js lib/thunderbird/modules/commonjs/sdk/querystring.js lib/thunderbird/modules/commonjs/sdk/request.js lib/thunderbird/modules/commonjs/sdk/selection.js @@ -2330,8 +2436,6 @@ lib/thunderbird/modules/commonjs/sdk/stylesheet/style.js lib/thunderbird/modules/commonjs/sdk/stylesheet/utils.js lib/thunderbird/modules/commonjs/sdk/system.js lib/thunderbird/modules/commonjs/sdk/system/child_process.js -lib/thunderbird/modules/commonjs/sdk/system/child_process/LICENSE -lib/thunderbird/modules/commonjs/sdk/system/child_process/README.md lib/thunderbird/modules/commonjs/sdk/system/child_process/subprocess.js lib/thunderbird/modules/commonjs/sdk/system/child_process/subprocess_worker_unix.js lib/thunderbird/modules/commonjs/sdk/system/child_process/subprocess_worker_win.js @@ -2342,6 +2446,7 @@ lib/thunderbird/modules/commonjs/sdk/system/process.js lib/thunderbird/modules/commonjs/sdk/system/runtime.js lib/thunderbird/modules/commonjs/sdk/system/unload.js lib/thunderbird/modules/commonjs/sdk/system/xul-app.js +lib/thunderbird/modules/commonjs/sdk/system/xul-app.jsm lib/thunderbird/modules/commonjs/sdk/tab/events.js lib/thunderbird/modules/commonjs/sdk/tabs.js lib/thunderbird/modules/commonjs/sdk/tabs/common.js @@ -2361,6 +2466,7 @@ lib/thunderbird/modules/commonjs/sdk/test/harness.js lib/thunderbird/modules/commonjs/sdk/test/httpd.js lib/thunderbird/modules/commonjs/sdk/test/loader.js lib/thunderbird/modules/commonjs/sdk/test/memory.js +lib/thunderbird/modules/commonjs/sdk/test/options.js lib/thunderbird/modules/commonjs/sdk/test/runner.js lib/thunderbird/modules/commonjs/sdk/test/tmp-file.js lib/thunderbird/modules/commonjs/sdk/test/utils.js @@ -2371,6 +2477,7 @@ lib/thunderbird/modules/commonjs/sdk/ui/button/contract.js lib/thunderbird/modules/commonjs/sdk/ui/button/toggle.js lib/thunderbird/modules/commonjs/sdk/ui/button/view.js lib/thunderbird/modules/commonjs/sdk/ui/button/view/events.js +lib/thunderbird/modules/commonjs/sdk/ui/component.js lib/thunderbird/modules/commonjs/sdk/ui/frame.js lib/thunderbird/modules/commonjs/sdk/ui/frame/model.js lib/thunderbird/modules/commonjs/sdk/ui/frame/view.html @@ -2387,18 +2494,18 @@ lib/thunderbird/modules/commonjs/sdk/ui/state/events.js lib/thunderbird/modules/commonjs/sdk/ui/toolbar.js lib/thunderbird/modules/commonjs/sdk/ui/toolbar/model.js lib/thunderbird/modules/commonjs/sdk/ui/toolbar/view.js +lib/thunderbird/modules/commonjs/sdk/uri/resource.js lib/thunderbird/modules/commonjs/sdk/url.js lib/thunderbird/modules/commonjs/sdk/url/utils.js lib/thunderbird/modules/commonjs/sdk/util/array.js +lib/thunderbird/modules/commonjs/sdk/util/bond.js lib/thunderbird/modules/commonjs/sdk/util/collection.js lib/thunderbird/modules/commonjs/sdk/util/contract.js lib/thunderbird/modules/commonjs/sdk/util/deprecate.js lib/thunderbird/modules/commonjs/sdk/util/dispatcher.js -lib/thunderbird/modules/commonjs/sdk/util/iteration.js lib/thunderbird/modules/commonjs/sdk/util/list.js lib/thunderbird/modules/commonjs/sdk/util/match-pattern.js lib/thunderbird/modules/commonjs/sdk/util/object.js -lib/thunderbird/modules/commonjs/sdk/util/registry.js lib/thunderbird/modules/commonjs/sdk/util/rules.js lib/thunderbird/modules/commonjs/sdk/util/sequence.js lib/thunderbird/modules/commonjs/sdk/util/uuid.js @@ -2413,18 +2520,18 @@ lib/thunderbird/modules/commonjs/sdk/windows.js lib/thunderbird/modules/commonjs/sdk/windows/dom.js lib/thunderbird/modules/commonjs/sdk/windows/fennec.js lib/thunderbird/modules/commonjs/sdk/windows/firefox.js -lib/thunderbird/modules/commonjs/sdk/windows/loader.js lib/thunderbird/modules/commonjs/sdk/windows/observer.js lib/thunderbird/modules/commonjs/sdk/windows/tabs-fennec.js lib/thunderbird/modules/commonjs/sdk/windows/tabs-firefox.js lib/thunderbird/modules/commonjs/sdk/worker/utils.js +lib/thunderbird/modules/commonjs/sdk/zip/utils.js lib/thunderbird/modules/commonjs/test.js lib/thunderbird/modules/commonjs/toolkit/loader.js +lib/thunderbird/modules/commonjs/toolkit/require.js lib/thunderbird/modules/ctypes.jsm lib/thunderbird/modules/dbViewWrapper.js lib/thunderbird/modules/debug.js lib/thunderbird/modules/devtools/Console.jsm -lib/thunderbird/modules/devtools/DevToolsExtensions.jsm lib/thunderbird/modules/devtools/DevToolsUtils.js lib/thunderbird/modules/devtools/DevToolsUtils.jsm lib/thunderbird/modules/devtools/Devices.jsm @@ -2441,11 +2548,14 @@ lib/thunderbird/modules/devtools/app-actor-front.js lib/thunderbird/modules/devtools/async-utils.js lib/thunderbird/modules/devtools/client/connection-manager.js lib/thunderbird/modules/devtools/content-observer.js +lib/thunderbird/modules/devtools/content-server.jsm lib/thunderbird/modules/devtools/css-color.js lib/thunderbird/modules/devtools/dbg-client.jsm lib/thunderbird/modules/devtools/dbg-server.jsm lib/thunderbird/modules/devtools/deprecated-sync-thenables.js +lib/thunderbird/modules/devtools/discovery/discovery.js lib/thunderbird/modules/devtools/event-emitter.js +lib/thunderbird/modules/devtools/event-parsers.js lib/thunderbird/modules/devtools/gcli.jsm lib/thunderbird/modules/devtools/gcli/api.js lib/thunderbird/modules/devtools/gcli/cli.js @@ -2458,9 +2568,13 @@ lib/thunderbird/modules/devtools/gcli/commands/commands.js lib/thunderbird/modules/devtools/gcli/commands/connect.js lib/thunderbird/modules/devtools/gcli/commands/context.js lib/thunderbird/modules/devtools/gcli/commands/cookie.js +lib/thunderbird/modules/devtools/gcli/commands/csscoverage.js lib/thunderbird/modules/devtools/gcli/commands/exec.js +lib/thunderbird/modules/devtools/gcli/commands/folder.js lib/thunderbird/modules/devtools/gcli/commands/global.js lib/thunderbird/modules/devtools/gcli/commands/help.js +lib/thunderbird/modules/devtools/gcli/commands/highlight.js +lib/thunderbird/modules/devtools/gcli/commands/inject.js lib/thunderbird/modules/devtools/gcli/commands/intro.js lib/thunderbird/modules/devtools/gcli/commands/jsb.js lib/thunderbird/modules/devtools/gcli/commands/lang.js @@ -2488,6 +2602,7 @@ lib/thunderbird/modules/devtools/gcli/fields/delegate.js lib/thunderbird/modules/devtools/gcli/fields/fields.js lib/thunderbird/modules/devtools/gcli/fields/selection.js lib/thunderbird/modules/devtools/gcli/index.js +lib/thunderbird/modules/devtools/gcli/l10n.js lib/thunderbird/modules/devtools/gcli/languages/command.html lib/thunderbird/modules/devtools/gcli/languages/command.js lib/thunderbird/modules/devtools/gcli/languages/javascript.js @@ -2512,6 +2627,8 @@ lib/thunderbird/modules/devtools/gcli/types/selection.js lib/thunderbird/modules/devtools/gcli/types/setting.js lib/thunderbird/modules/devtools/gcli/types/string.js lib/thunderbird/modules/devtools/gcli/types/types.js +lib/thunderbird/modules/devtools/gcli/types/union.js +lib/thunderbird/modules/devtools/gcli/types/url.js lib/thunderbird/modules/devtools/gcli/ui/focus.js lib/thunderbird/modules/devtools/gcli/ui/history.js lib/thunderbird/modules/devtools/gcli/ui/intro.js @@ -2529,48 +2646,96 @@ lib/thunderbird/modules/devtools/gcli/util/prism.js lib/thunderbird/modules/devtools/gcli/util/promise.js lib/thunderbird/modules/devtools/gcli/util/spell.js lib/thunderbird/modules/devtools/gcli/util/util.js +lib/thunderbird/modules/devtools/jsbeautify/beautify-css.js +lib/thunderbird/modules/devtools/jsbeautify/beautify-html.js +lib/thunderbird/modules/devtools/jsbeautify/beautify-js.js +lib/thunderbird/modules/devtools/jsbeautify/beautify-tests.js +lib/thunderbird/modules/devtools/jsbeautify/beautify.js +lib/thunderbird/modules/devtools/jsbeautify/sanitytest.js +lib/thunderbird/modules/devtools/jsbeautify/urlencode_unpacker.js lib/thunderbird/modules/devtools/output-parser.js +lib/thunderbird/modules/devtools/path.js lib/thunderbird/modules/devtools/pretty-fast.js +lib/thunderbird/modules/devtools/qrcode/decoder/index.js +lib/thunderbird/modules/devtools/qrcode/encoder/index.js +lib/thunderbird/modules/devtools/qrcode/index.js +lib/thunderbird/modules/devtools/security/auth.js +lib/thunderbird/modules/devtools/security/cert.js +lib/thunderbird/modules/devtools/security/prompt.js +lib/thunderbird/modules/devtools/security/socket.js +lib/thunderbird/modules/devtools/server/actors/actor-registry.js +lib/thunderbird/modules/devtools/server/actors/animation.js lib/thunderbird/modules/devtools/server/actors/call-watcher.js lib/thunderbird/modules/devtools/server/actors/canvas.js +lib/thunderbird/modules/devtools/server/actors/child-process.js lib/thunderbird/modules/devtools/server/actors/childtab.js lib/thunderbird/modules/devtools/server/actors/common.js +lib/thunderbird/modules/devtools/server/actors/csscoverage.js lib/thunderbird/modules/devtools/server/actors/device.js +lib/thunderbird/modules/devtools/server/actors/director-manager.js +lib/thunderbird/modules/devtools/server/actors/director-registry.js lib/thunderbird/modules/devtools/server/actors/eventlooplag.js +lib/thunderbird/modules/devtools/server/actors/framerate.js lib/thunderbird/modules/devtools/server/actors/gcli.js +lib/thunderbird/modules/devtools/server/actors/highlighter.css lib/thunderbird/modules/devtools/server/actors/highlighter.js lib/thunderbird/modules/devtools/server/actors/inspector.js +lib/thunderbird/modules/devtools/server/actors/layout.js lib/thunderbird/modules/devtools/server/actors/memory.js +lib/thunderbird/modules/devtools/server/actors/monitor.js lib/thunderbird/modules/devtools/server/actors/preference.js lib/thunderbird/modules/devtools/server/actors/pretty-print-worker.js lib/thunderbird/modules/devtools/server/actors/profiler.js lib/thunderbird/modules/devtools/server/actors/root.js lib/thunderbird/modules/devtools/server/actors/script.js +lib/thunderbird/modules/devtools/server/actors/settings.js lib/thunderbird/modules/devtools/server/actors/storage.js lib/thunderbird/modules/devtools/server/actors/string.js lib/thunderbird/modules/devtools/server/actors/styleeditor.js lib/thunderbird/modules/devtools/server/actors/styles.js lib/thunderbird/modules/devtools/server/actors/stylesheets.js +lib/thunderbird/modules/devtools/server/actors/timeline.js lib/thunderbird/modules/devtools/server/actors/tracer.js +lib/thunderbird/modules/devtools/server/actors/utils/ScriptStore.js +lib/thunderbird/modules/devtools/server/actors/utils/actor-registry-utils.js +lib/thunderbird/modules/devtools/server/actors/utils/automation-timeline.js +lib/thunderbird/modules/devtools/server/actors/utils/make-debugger.js +lib/thunderbird/modules/devtools/server/actors/utils/map-uri-to-addon-id.js +lib/thunderbird/modules/devtools/server/actors/utils/stack.js lib/thunderbird/modules/devtools/server/actors/webapps.js lib/thunderbird/modules/devtools/server/actors/webaudio.js lib/thunderbird/modules/devtools/server/actors/webbrowser.js lib/thunderbird/modules/devtools/server/actors/webconsole.js lib/thunderbird/modules/devtools/server/actors/webgl.js lib/thunderbird/modules/devtools/server/child.js +lib/thunderbird/modules/devtools/server/content-globals.js lib/thunderbird/modules/devtools/server/main.js lib/thunderbird/modules/devtools/server/protocol.js -lib/thunderbird/modules/devtools/server/transport.js +lib/thunderbird/modules/devtools/shared/async-storage.js lib/thunderbird/modules/devtools/source-map.js lib/thunderbird/modules/devtools/styleinspector/css-logic.js +lib/thunderbird/modules/devtools/tern/browser.js +lib/thunderbird/modules/devtools/tern/comment.js +lib/thunderbird/modules/devtools/tern/condense.js +lib/thunderbird/modules/devtools/tern/def.js +lib/thunderbird/modules/devtools/tern/ecma5.js +lib/thunderbird/modules/devtools/tern/infer.js +lib/thunderbird/modules/devtools/tern/signal.js +lib/thunderbird/modules/devtools/tern/tern.js lib/thunderbird/modules/devtools/toolkit/webconsole/client.js lib/thunderbird/modules/devtools/toolkit/webconsole/network-helper.js lib/thunderbird/modules/devtools/toolkit/webconsole/network-monitor.js lib/thunderbird/modules/devtools/toolkit/webconsole/utils.js lib/thunderbird/modules/devtools/touch-events.js +lib/thunderbird/modules/devtools/transport/packets.js +lib/thunderbird/modules/devtools/transport/stream-utils.js +lib/thunderbird/modules/devtools/transport/transport.js +lib/thunderbird/modules/devtools/worker-loader.js +lib/thunderbird/modules/displayNameUtils.js lib/thunderbird/modules/distribution.js lib/thunderbird/modules/editorUtilities.jsm lib/thunderbird/modules/errUtils.js +lib/thunderbird/modules/extraMimeParsers.jsm lib/thunderbird/modules/folderUtils.jsm lib/thunderbird/modules/gloda/collection.js lib/thunderbird/modules/gloda/connotent.js @@ -2597,7 +2762,6 @@ lib/thunderbird/modules/gloda/public.js lib/thunderbird/modules/gloda/query.js lib/thunderbird/modules/gloda/suffixtree.js lib/thunderbird/modules/gloda/utils.js -lib/thunderbird/modules/glodaWebSearch.js lib/thunderbird/modules/hiddenWindow.jsm lib/thunderbird/modules/hostnameUtils.jsm lib/thunderbird/modules/identity/FirefoxAccounts.jsm @@ -2643,14 +2807,14 @@ lib/thunderbird/modules/mailServices.js lib/thunderbird/modules/mailViewManager.js lib/thunderbird/modules/mailnewsMigrator.js lib/thunderbird/modules/mcc_iso3166_table.jsm -lib/thunderbird/modules/media/IdpProxy.jsm +lib/thunderbird/modules/media/IdpSandbox.jsm lib/thunderbird/modules/media/PeerConnectionIdp.jsm +lib/thunderbird/modules/media/RTCStatsReport.jsm lib/thunderbird/modules/mimeParser.jsm lib/thunderbird/modules/msgDBCacheManager.js lib/thunderbird/modules/nsFormAutoCompleteResult.jsm lib/thunderbird/modules/oauth.jsm lib/thunderbird/modules/osfile.jsm -lib/thunderbird/modules/osfile/_PromiseWorker.jsm lib/thunderbird/modules/osfile/osfile_async_front.jsm lib/thunderbird/modules/osfile/osfile_async_worker.js lib/thunderbird/modules/osfile/osfile_native.jsm @@ -2666,13 +2830,20 @@ lib/thunderbird/modules/osfile/ospath.jsm lib/thunderbird/modules/osfile/ospath_unix.jsm lib/thunderbird/modules/osfile/ospath_win.jsm lib/thunderbird/modules/quickFilterManager.js +lib/thunderbird/modules/reader/JSDOMParser.js +lib/thunderbird/modules/reader/Readability.js +lib/thunderbird/modules/reader/ReaderWorker.js +lib/thunderbird/modules/reader/ReaderWorker.jsm lib/thunderbird/modules/reflect.jsm +lib/thunderbird/modules/sdk/bootstrap.js +lib/thunderbird/modules/sdk/system/Startup.js lib/thunderbird/modules/searchSpec.js lib/thunderbird/modules/search_im.js lib/thunderbird/modules/services-common/async.js lib/thunderbird/modules/services-common/bagheeraclient.js lib/thunderbird/modules/services-common/hawkclient.js lib/thunderbird/modules/services-common/hawkrequest.js +lib/thunderbird/modules/services-common/logmanager.js lib/thunderbird/modules/services-common/observers.js lib/thunderbird/modules/services-common/rest.js lib/thunderbird/modules/services-common/storageservice.js @@ -2691,6 +2862,7 @@ lib/thunderbird/modules/twitter-text.jsm lib/thunderbird/modules/virtualFolderWrapper.js lib/thunderbird/modules/vtt.jsm lib/thunderbird/modules/windowsJumpLists.js +lib/thunderbird/modules/workers/PromiseWorker.js lib/thunderbird/modules/workers/lz4.js lib/thunderbird/modules/workers/lz4_internal.js lib/thunderbird/modules/workers/require.js @@ -2699,7 +2871,6 @@ lib/thunderbird/modules/xmpp-session.jsm lib/thunderbird/modules/xmpp-xml.jsm lib/thunderbird/modules/xmpp.jsm lib/thunderbird/modules/yahoo-session.jsm -lib/thunderbird/mozilla-xremote-client lib/thunderbird/platform.ini lib/thunderbird/plugin-container lib/thunderbird/removed-files @@ -2715,8 +2886,7 @@ lib/thunderbird/res/entityTables/mathml20.properties lib/thunderbird/res/entityTables/transliterate.properties lib/thunderbird/res/fonts/mathfont.properties lib/thunderbird/res/fonts/mathfontMathJax_Main.properties -lib/thunderbird/res/fonts/mathfontSTIXNonUnicode.properties -lib/thunderbird/res/fonts/mathfontSTIXSizeOneSym.properties +lib/thunderbird/res/fonts/mathfontSTIXGeneral.properties lib/thunderbird/res/fonts/mathfontStandardSymbolsL.properties lib/thunderbird/res/fonts/mathfontUnicode.properties lib/thunderbird/res/grabber.gif diff --git a/mail/thunderbird/PLIST.lightning b/mail/thunderbird/PLIST.lightning index 909781d3412..2f4fbd06730 100644 --- a/mail/thunderbird/PLIST.lightning +++ b/mail/thunderbird/PLIST.lightning @@ -1,27 +1,489 @@ -@comment $NetBSD: PLIST.lightning,v 1.21 2014/07/27 20:04:59 ryoon Exp $ +@comment $NetBSD: PLIST.lightning,v 1.22 2015/07/09 15:17:34 ryoon Exp $ +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/application.ini +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarm.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarmMonitor.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarmService.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAttachment.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAttendee.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCachedCalendar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCalendarManager.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calCalendarSearchService.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDateTime.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDateTimeFormatter.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDavRequestHandlers.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDeletedItems.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calDuration.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calEvent.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calFilter.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calFreeBusyService.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calHtmlExport.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calICSService-worker.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calICSService.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsImportExport.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsParser.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calIcsSerializer.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calItemBase.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calItipItem.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calListFormatter.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calMonthGridPrinter.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calOutlookCSVImportExport.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calPeriod.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calProtocolHandler.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceDate.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceInfo.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRecurrenceRule.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calRelation.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calStartupService.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTimezone.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTodo.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calTransactionManager.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calUtils.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapCalendar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapCalendarItems.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapErrors.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapRequest.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapSession.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWcapUtils.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekInfoService.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekPrinter.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome.manifest +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-alarms.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog-attendees.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-extract.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-invitations-dialog.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-subscriptions-dialog.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/categories.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dateFormat.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dialogs/calendar-event-dialog-reminder.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/global.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/menuOverlay.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/alarms.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/categories.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/general.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/preferences.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/views.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/provider-uninstall.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/timezones.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/wcap.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/WindowsNTToZoneInfoTZId.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calApplicationUtils.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calFilter.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calUtils.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-alarm-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-alarm-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-base-view.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-bindings.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-calendars-list.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-chrome-startup.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-clipboard.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-common-sets.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-common-sets.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-conflicts-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-creation.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-daypicker.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-dialog-utils.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-dnd-listener.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-error-prompt.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-attendees.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-freebusy.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence-preview.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-recurrence.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-reminder.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-reminder.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-timezone.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog-timezone.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-event-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-extract.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-list.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-invitations-manager.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-item-bindings.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-item-editing.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-management.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-menus.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-migration-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-migration-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-month-view.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-multiday-view.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-occurrence-prompt.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-print-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-print-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-properties-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-properties-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-providerUninstall-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-providerUninstall-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-statusbar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-subscriptions-list.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-summary-dialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-summary-dialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-editing.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-tree.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-tree.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-view.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-task-view.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-ui-utils.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder-todo.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder-todo.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-unifinder.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-view-bindings.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-view-core.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendar-views.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendarCreation.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/calendarCreation.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/chooseCalendarDialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/datetimepickers/datetimepickers.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/datetimepickers/datetimepickers.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/import-export.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/mouseoverPreviews.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/alarms.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/alarms.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/categories.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/categories.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/editCategory.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/editCategory.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publish.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publishDialog.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publishDialog.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/sound.wav +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/today-pane.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/today-pane.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-alarm-widget.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-list-tree.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-widget-bindings.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/calendar-widgets.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/widgets/minimonth.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-alarm-dialog.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-event-dialog.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-event-summary-dialog.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-dialog.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-summary-dialog.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning-toolbar.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.dtd +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.properties +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar-overlay.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-creation.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-creation.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-properties.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-properties.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-invitation.xhtml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-menus.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-migration.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-standalone.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-toolbar.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-utils.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-widgets.xml +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-accountCentral.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-messageWindow.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-preferences.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-preferences.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-sidebar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/messenger-overlay-sidebar.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-addons.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-preferences.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-sidebar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/suite-overlay-sidebar.xul +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/alarm-flashing.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/alarm-icons.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/attendee-icons.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-daypicker.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-event-dialog.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-management.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-overlay.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-status.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-task-tree.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-task-view.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-unifinder.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/calendar-views.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/classification.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/day-box-item-image.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/dialogs/calendar-alarm-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/dialogs/calendar-event-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-bottom.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-left.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-right.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/event-grippy-top.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calHtmlExport.html +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calMonthGridPrinter.html +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/printing/calWeekPrinter.html +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/task-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/timezone_map.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/timezones.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/today-pane.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/calendar-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/drag-center.svg +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/minimonth.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-arrow.svg +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today-hov.svg +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today.svg +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/view-navigation-hov.svg +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/view-navigation.svg +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/imip.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/lightning-toolbar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/lightning.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/lightning-common/mode-switch-icons.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/cal-icon24.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/cal-icon32.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-alarm-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-alarms.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-attendees.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-creation-wizard.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-daypicker.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog-attendees.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog-toolbar-small.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog-toolbar.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-event-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-invitations-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-management.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-occurrence-prompt.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-occurrence-prompt.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-printing.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-properties-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-providerUninstall-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-subscriptions-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-task-tree.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-task-view.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-timezone-highlighter.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-unifinder.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/calendar-views.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/checkbox-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/datetimepickers/datetimepickers.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/ok-cancel.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/tasks-actions.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/today-pane.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/toolbar-large.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/toolbar-small.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/widgets/calendar-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/calendar/widgets/minimonth.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/accountCentral.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/imip.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/imip.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning-toolbar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/lightning.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/linux/lightning/suite-accountCentral.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/cal-icon24.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/cal-icon32.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-alarm-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-alarms.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-attendees.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-creation-wizard.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-daypicker.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog-attendees.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog-toolbar-small.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog-toolbar.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-event-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-invitations-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-management.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-occurrence-prompt.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-occurrence-prompt.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-printing.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-properties-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-providerUninstall-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-subscriptions-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-task-tree.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-task-view.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-timezone-highlighter.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-unifinder.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/calendar-views.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/checkbox-images-graphite.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/checkbox-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/datetimepickers/datetimepickers.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/ok-cancel.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/sidebar-item.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/tasks-actions.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/today-pane.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/toolbar-large.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/toolbar-small.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/toolbar.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/widgets/calendar-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/calendar/widgets/minimonth.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/accountCentral.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/imip.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/imip.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning-toolbar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/lightning.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/osx/lightning/suite-accountCentral.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/cal-icon24.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/cal-icon32.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-alarm-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-alarms.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-attendees.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-creation-wizard.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-daypicker.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-attendees.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-inverted.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-small.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog-button-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog-list-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-invitations-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-management.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-occurrence-prompt-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-occurrence-prompt.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-occurrence-prompt.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-printing.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-properties-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-providerUninstall-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-subscriptions-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-task-tree.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-task-view.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-timezone-highlighter.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-unifinder.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-views.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/checkbox-images.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/datetimepickers/datetimepickers.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/ok-cancel.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions-inverted.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/today-pane.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-aero-inverted.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-large-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-large.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-small-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-small.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/widgets/calendar-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/widgets/minimonth.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-aero/calendar-event-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-aero/calendar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-aero/lightning-toolbar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-aero/lightning.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-classic/calendar-event-dialog.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-classic/calendar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-classic/lightning-toolbar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/win-classic/lightning.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/accountCentral.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/imip.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning-toolbar.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning-widgets.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/lightning.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/mode-switch-icons-aero.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/mode-switch-icons-inverted.png +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/lightning/suite-accountCentral.css +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calBackendLoader.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calCompositeCalendar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDavCalendar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDefaultACLManager.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICALJSComponents.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICSCalendar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calImportExportModule.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItemModule.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipEmailTransport.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipProtocolHandler.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calMemoryCalendar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calSleepMonitor.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calStorageCalendar.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calTimezoneService.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calWcapCalendarModule.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/components.manifest +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/icaljs-manifest +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/interfaces.xpt +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libcalbasecomps.so +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libical-manifest +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/lightningTextCalendarConverter.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/defaults/preferences/lightning.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/install.rdf +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAlarmUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAsyncUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAuthUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calExtract.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calHashedArray.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calItemUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calIteratorUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calItipUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calPrintUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calProviderUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calRecurrenceUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageHelpers.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageUpgrade.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calViewUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calXMLUtils.jsm +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ical.js +lib/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/timezones/zones.json lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome.manifest +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/.mkdir.done lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider-en-US/locale/en-US/gdata.dtd lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider-en-US/locale/en-US/gdata.properties -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/calendarCreation.xul +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/browserRequest.js +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/browserRequest.xul lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gcal.png +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-creation.js +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-creation.xul +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-event-dialog.js lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-event-dialog.xul +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-properties.js +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-calendar-properties.xul +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-event-dialog-reminder.js lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-event-dialog-reminder.xul +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-list-tree.xml lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-migration-overlay.xul lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-migration-wizard.xul lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/content/gdata-migration.js +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/browserRequest.css +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/gdata-bindings.css lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/gdata-event-dialog-reminder.css lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/chrome/gdata-provider/skin/reminder-action-sms.png -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/.mkdir.done -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/calGoogleCalendarModule.js -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/calGoogleCalendarModule.manifest -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/gdata.xpt -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/interfaces.manifest +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/calGoogleCalendar.js +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/components/calGoogleCalendar.manifest lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/defaults/preferences/preferences.js lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/install.rdf -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/js/calGoogleCalendar.js -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/js/calGoogleRequest.js -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/js/calGoogleSession.js -lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/js/calGoogleUtils.js +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/OAuth2.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataLogging.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataRequest.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataSession.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/gdataUtils.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Calendar.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Http.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Loader.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Preferences.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Promise.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/PromiseExtras.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/PromiseUtils.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Task.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/shim/Timer.jsm +lib/thunderbird/extensions/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}/modules/timezoneMap.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/application.ini lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarm.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calAlarmMonitor.js @@ -70,7 +532,35 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/ca lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekInfoService.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js/calWeekPrinter.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome.manifest -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US.jar +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/.mkdir.done +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-alarms.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog-attendees.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-event-dialog.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-extract.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-invitations-dialog.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-occurrence-prompt.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar-subscriptions-dialog.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendar.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/calendarCreation.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/categories.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dateFormat.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/dialogs/calendar-event-dialog-reminder.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/global.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/menuOverlay.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/migration.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/alarms.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/categories.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/general.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/preferences.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/preferences/views.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/provider-uninstall.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/timezones.properties +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar-en-US/locale/en-US/calendar/wcap.properties lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/WindowsNTToZoneInfoTZId.properties lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/agenda-listbox.xml @@ -164,8 +654,6 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calenda lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/editCategory.xul lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/general.xul -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/timezones.js -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/timezones.xul lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/preferences/views.xul lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/calendar/content/calendar/publish.js @@ -184,7 +672,9 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/d lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-event-summary-dialog.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-dialog.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/icons/default/calendar-task-summary-dialog.png -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US.jar +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning-toolbar.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.dtd +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning-en-US/locale/en-US/lightning/lightning.properties lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar-overlay.xul lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/imip-bar.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/lightning/content/lightning/lightning-calendar-creation.js @@ -238,6 +728,7 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/co lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/today-pane.css lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/calendar-widgets.css lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/drag-center.svg +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/minimonth.css lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-arrow.svg lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today-hov.svg lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/common/widgets/nav-today.svg @@ -343,6 +834,7 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/wi lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-daypicker.css lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-attendees.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-aero.png +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-inverted.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar-small.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog-toolbar.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/calendar-event-dialog.css @@ -366,6 +858,7 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/wi lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/datetimepickers/datetimepickers.css lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/ok-cancel.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions-aero.png +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions-inverted.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/tasks-actions.png lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/today-pane.css lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome/skin/windows/calendar/toolbar-aero-inverted.png @@ -426,19 +919,18 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/cal lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calWcapCalendarModule.manifest lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calbase.xpt lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calbaseinternal.xpt -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/caldatetime_icaljs.xpt -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/caldatetime_libical.xpt lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/caldav.xpt -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/icaljs.manifest +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/icaljs-manifest lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/interfaces.manifest lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libcalbasecomps.so -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libical.manifest +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libical-manifest lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/lightningTextCalendarConverter.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/lightningTextCalendarConverter.manifest lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/wcap.xpt lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/defaults/preferences/lightning.js lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/install.rdf lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAlarmUtils.jsm +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAsyncUtils.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calAuthUtils.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calExtract.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calHashedArray.jsm @@ -451,6 +943,7 @@ lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calRec lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageHelpers.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calStorageUpgrade.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calUtils.jsm +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calViewUtils.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/calXMLUtils.jsm lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules/ical.js -lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/timezones.sqlite +lib/thunderbird/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/timezones/zones.json diff --git a/mail/thunderbird/distinfo b/mail/thunderbird/distinfo index 150c6970286..e4e4448ccdf 100644 --- a/mail/thunderbird/distinfo +++ b/mail/thunderbird/distinfo @@ -1,165 +1,182 @@ -$NetBSD: distinfo,v 1.160 2015/06/29 21:27:01 markd Exp $ +$NetBSD: distinfo,v 1.161 2015/07/09 15:17:34 ryoon Exp $ -SHA1 (enigmail-1.7.2.tar.gz) = e72eeff5a47491267981090129b0b2594b5dc96f -RMD160 (enigmail-1.7.2.tar.gz) = 1dcd10e758321846eb20ac7f1d3ae6465c47bfe7 -Size (enigmail-1.7.2.tar.gz) = 1420346 bytes -SHA1 (thunderbird-31.7.0.source.tar.bz2) = 90e18f8ecccdaf1ee39493223a7e3ad8b3b7bede -RMD160 (thunderbird-31.7.0.source.tar.bz2) = eae13adba96477ddaa3fa7732d94accdc8dab57f -Size (thunderbird-31.7.0.source.tar.bz2) = 171059989 bytes -SHA1 (patch-aa) = 764c6e8955d371d0869a9b145211f0a9d8709708 -SHA1 (patch-ak) = b47277baa1137a7610445b7c4dd147b331d5c5e6 +SHA1 (thunderbird-38.0.1.source.tar.bz2) = 81226df796de098648d70d398aa1160531706cd5 +RMD160 (thunderbird-38.0.1.source.tar.bz2) = 09ecdd8d9e07043e1c78b39c639cf4aa35334f94 +Size (thunderbird-38.0.1.source.tar.bz2) = 203270639 bytes +SHA1 (patch-aa) = 199400ee6dc3c727c950e33ccc65cf57b81cdcb7 SHA1 (patch-al) = 81a733e9b13a47abfef818ecd10d7ef18a191855 -SHA1 (patch-ao) = aa0f3e336c2d97622f735b79c2b5f9e84bb3674e -SHA1 (patch-as) = 2786abec0a1d58232bdd62f2f1c30ec95077ce83 -SHA1 (patch-ax) = ba84bdb7fec3cb2f34efd8a8f68b0c3bf7dd7677 -SHA1 (patch-ay) = 64afd5e2cbb186ccaf16fb33711c93d245059578 +SHA1 (patch-ao) = 2b4cfb8f06cb137058be7aa47ab7a3cada7cbfe1 +SHA1 (patch-as) = d7690a695438ec4f8c95011e0a177768c5da705e +SHA1 (patch-ax) = a5e573d902d235c4657ffecd7cd531d778532604 +SHA1 (patch-ay) = 82f0a523e3f281a6f84b0c8a63611fede70d8b35 SHA1 (patch-bf) = 6e6828e85243dba8cf2419de7275585fea3efe81 SHA1 (patch-bg) = 6c5e0239ed07902209bf4bfbec520699ff835b11 -SHA1 (patch-bi) = bc44d47f386901d261a7a5401520a3905cb29d5a -SHA1 (patch-calendar_lightning_Makefile.in) = 2ef231c798265f57e26464d6805a40193ec7b534 +SHA1 (patch-calendar_lightning_Makefile.in) = 3f0e0be9d156c73f9d16dcb10774d9fce17cc200 SHA1 (patch-calendar_lightning_build_universal.mk) = 42a3eafc9738f94e0b6654cf815932469e06bcf4 -SHA1 (patch-calendar_providers_gdata_Makefile.in) = 9e49d1ceb591a8cd2da86f37774c80604cb8326d -SHA1 (patch-config_baseconfig.mk) = c62405d490b9f2dcde7a5c6d7d835363a8e6b2c0 +SHA1 (patch-calendar_providers_gdata_Makefile.in) = aca552b09c8e94678000ea94695d38c822d375d5 SHA1 (patch-directory_c-sdk_ldap_include_portable.h) = a6d40c6b92aee607fb4f18d5a7c97b3d7833c74a -SHA1 (patch-ipc_chromium_src_base_debug__util__posic.cc) = 01fa0e31aa4347c044e7870df6721dfb511478bb SHA1 (patch-ipc_chromium_src_base_file__util__posix.cc) = cb48ef5c5feb6396210153a704e227d09858939e SHA1 (patch-ipc_chromium_src_base_platform__thread__posix.cc) = d6b9cdc90fecbeee02c37f74bc9998bba239d9cc SHA1 (patch-ipc_chromium_src_base_sys__info__posix.cc) = f5545ffcee1b5b02d8e130ce2a7b6e9dc386567f SHA1 (patch-ipc_chromium_src_build_build__config.h) = 7e5f6e195884d7fc629c10aefe13dba768001daf -SHA1 (patch-ipc_glue_GeckoChildProcessHost.cpp) = a7385ed3b8a5011651c07a239b2d8a2a99e14624 +SHA1 (patch-ipc_glue_GeckoChildProcessHost.cpp) = 04eb07c0944eb40589aef7033d62636518e91066 SHA1 (patch-ldap_sdks_c-sdk_build.mk) = 171d81697d136abb6e02cb81445cd88fd8580de2 -SHA1 (patch-mail_components_shell_nsMailGNOMEIntegration.cpp) = 2b086ad7d3e4efa594ef04aac358e5271993bfcb -SHA1 (patch-mail_installer_package-manifest.in) = 9f79382d6e17a839d3ba90dab4f657a80340141a -SHA1 (patch-mail_installer_removed-files.in) = 26d69b9b8747f25130af75ea057cf2abc615bfff -SHA1 (patch-mb) = 0e2a36a38147f112a3e1bace0ad1ccd295e8265c -SHA1 (patch-mk) = e02de79032edc25fd9f328facca1436d88b3134b -SHA1 (patch-ml) = 430c28ef299a0942126e494e0ac8c9198d00af41 +SHA1 (patch-mail_components_shell_nsMailGNOMEIntegration.cpp) = d1b4d47e0cb8d5105984f58a0167624042f3baa2 +SHA1 (patch-mail_installer_package-manifest.in) = bce1b3ba20b00cc00e51f79e498a24811fe65dd6 +SHA1 (patch-mail_installer_removed-files.in) = 5ef84ddc1dc1434c6db328f7d9df68f47f7d7ecd +SHA1 (patch-mk) = c4aebbbf9c0a8ee1763d380ddd681248b362d295 +SHA1 (patch-ml) = f60bda3b422bc16dae60ee68b024d4740c7430a0 +SHA1 (patch-mozilla_accessible_atk_Platform.cpp) = d71a9f1a89d290c15871771c0a1c2b7a6510b1b8 SHA1 (patch-mozilla_b2g_installer_Makefile.in) = 2e2af12392f5c81ec68ad4e439a8baf225a94ee1 -SHA1 (patch-mozilla_b2g_installer_package-manifest.in) = 0f2a2c84839552c85a14f9eaf3f85db66ad5c3d9 -SHA1 (patch-mozilla_browser_app_profile_firefox.js) = af2f75a56509da757bbdd13c5519f639df1d20a6 -SHA1 (patch-mozilla_browser_installer_package-manifest.in) = b91ca1cf4805588091ca7310751a0b605bda4771 -SHA1 (patch-mozilla_browser_locales_en-US_chrome_browser-region_region.properties) = 98201e5d0676066ccdbab79ea05009b030eee036 -SHA1 (patch-mozilla_browser_locales_en-US_searchplugins_duckduckgo.xml) = 37c48b86ac371c9b23faf2094b09bf978141b7d4 -SHA1 (patch-mozilla_browser_locales_en-US_searchplugins_list.txt) = 2235b649306d27a0581aced46cfe8fbbc2eb1724 +SHA1 (patch-mozilla_b2g_installer_package-manifest.in) = 086a7ff700b9d7de9e2765780cd06b43d6ad1a8f +SHA1 (patch-mozilla_browser_installer_package-manifest.in) = 1b7de0600e2a5c46db140aaac70fff11e252e4ff SHA1 (patch-mozilla_build_autoconf_compiler-opts.m4) = 39e8e8ccdb87ecf0f37eb9d7de9257fce3f25301 -SHA1 (patch-mozilla_build_autoconf_nss.m4) = 4c726f98a5139eba2b4a4c34288c08092bfb90b3 -SHA1 (patch-mozilla_build_gyp.mozbuild) = 952b7d2fb236ebc927cd2364d356a262c1fe2dc1 +SHA1 (patch-mozilla_build_autoconf_nss.m4) = b3be74e87494f1a286c77add5bf5f6ea2071a913 +SHA1 (patch-mozilla_build_gyp.mozbuild) = 07806aabbf468709decf68d4823ecf54092c1f50 SHA1 (patch-mozilla_build_pgo_profileserver.py) = 2c15f3c655d4d9a366d70e6311921723dd1039f0 -SHA1 (patch-mozilla_config_Makefile.in) = c4d690920c1a2ed7bc4ddcbad4696274768fc2bf +SHA1 (patch-mozilla_config_Makefile.in) = 049776b79aa8f523caa6430247707a20d9e81448 SHA1 (patch-mozilla_config_baseconfig.mk) = e8594d03d0db21e0731d85dcdb38ab9c465e9d56 -SHA1 (patch-mozilla_config_external_moz.build) = 61d9d60ad4e360b6d9511205ebe0d68422a2501b +SHA1 (patch-mozilla_config_external_moz.build) = ee26e7573fe6d6c7f6e8497d8d1f928174ce4a36 SHA1 (patch-mozilla_config_stl__wrappers_ios) = 066a9f3db9203afa8131b2ff91d212033e5950e0 SHA1 (patch-mozilla_config_stl__wrappers_ostream) = 67559c5ab17088680b86dea6b081a48b781f59b5 -SHA1 (patch-mozilla_config_system-headers) = 51833d7c421c547471fb9cc5e635015f0ec70ab1 +SHA1 (patch-mozilla_config_system-headers) = c7d50fbc0d7fd3bad6fc3a0d4c662fda896652ea SHA1 (patch-mozilla_config_system__wrappers_unwind.h) = 32d4ab3fbf80bf19783dab7c4a875a7262f419cf -SHA1 (patch-mozilla_content_base_src_moz.build) = 0a7f7665a23a50d6c60a99c58e7d074465f4917c -SHA1 (patch-mozilla_content_media_AudioStream.cpp) = 9faaa001b9a8d142ee0027622e773151de8c7287 -SHA1 (patch-mozilla_content_media_AudioStream.h) = 5970af4cfae07e02943a0411dfb195f2bcf10226 -SHA1 (patch-mozilla_content_media_Makefile.in) = d96375b1dd8d11ece759d6d84fda39b19ac43fde -SHA1 (patch-mozilla_content_media_MediaData.cpp) = 166e407e32287ec0ac13f675fdf3cf5269795184 -SHA1 (patch-mozilla_content_media_MediaData.h) = 3b70b102bc38a1000fc2fcd280917c1e9ba20780 -SHA1 (patch-mozilla_content_media_fmp4_demuxer_bit__reader.cc) = 288cf698ffbdbb8fb501bc5917a1767cb17ac801 -SHA1 (patch-mozilla_content_media_gstreamer_GStreamerAllocator.cpp) = 81571586c9087b3ad347d0bb3455c984f72a8c7d -SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp) = b0b42b8790ea22a075e2de711e1881c050ff4c1f +SHA1 (patch-mozilla_dom_base_moz.build) = dce93f4c00bb662d5c702b442ee169bb8888237d +SHA1 (patch-mozilla_dom_media_AudioStream.h) = b5092adaf26c8c1809b4ad62eb92be101c07ac88 +SHA1 (patch-mozilla_dom_media_gmp_GMPChild.cpp) = 18e604d744edf775776fb482e59a2864cbf146bd +SHA1 (patch-mozilla_dom_media_gmp_GMPParent.cpp) = 1ca834cab61dac2c79ed4288da958f8ed7055953 +SHA1 (patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp) = cadb3396a56ed3147c4ec2b4b8494205672883fb +SHA1 (patch-mozilla_dom_media_moz.build) = 12ab0e2441422bbb683a5da163644db9bfd11aec +SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp) = a877a2e086149d14004b15e2c96970d27b4de3a2 SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.h) = ed5bcf926bce86ca73187ac13181c02e2352cc68 -SHA1 (patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp) = aa4e89010af5bf2844f08fa63824d0e59ef4f4f7 -SHA1 (patch-mozilla_dom_system_OSFileConstants.cpp) = 8880a3956dd13628f898b79326620ec9f122d362 -SHA1 (patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp) = ecc46454804bd1f2dc97621e0d788e16bb2eaea9 +SHA1 (patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp) = fc27fc709dedea8ff082deb43c30575f3be3d83c +SHA1 (patch-mozilla_dom_system_OSFileConstants.cpp) = 665007aa3640bdc7d2dfb26c258e0ee8f7574cbe +SHA1 (patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp) = 3865b172e85ee0146baf0641c1181bd01e955b35 +SHA1 (patch-mozilla_gfx_graphite2_moz-gr-update.sh) = 49a7d2d4de18565ca256e000fedaab1cb3e714f2 SHA1 (patch-mozilla_gfx_graphite2_src_Bidi.cpp) = 5b5190da8a8e4eabd793d9bd5932f773b685dbf4 SHA1 (patch-mozilla_gfx_moz.build) = 93f0eba2ea5a4d678c6356b254a1a91bf0ad7ea9 -SHA1 (patch-mozilla_gfx_skia_Makefile.in) = c67f4c4fd47b6d00b6f2f951a8ebebf22087ddf6 -SHA1 (patch-mozilla_gfx_thebes_Makefile.in) = b8295dfd28fbd9d21d83734f2b8928486df09344 -SHA1 (patch-mozilla_image_decoders_nsJPEGDecoder.cpp) = 9f25aae0c01f3341540ed4b821265b0921c5f74f -SHA1 (patch-mozilla_intl_hyphenation_src_hnjalloc.h) = 23b4045d687d2823f3078a5f81adc4b4309d7a11 -SHA1 (patch-mozilla_intl_unicharutil_util_Makefile.in) = 1cf07aec1f7f38d465608fe8137d1f5e030ebf3f -SHA1 (patch-mozilla_ios) = 628eecb6f97f58ef8a97375ad550338c96bad5b3 +SHA1 (patch-mozilla_gfx_skia_generate__mozbuild.py) = 7d1f1b85ec1a332d1370f2030f941c38ef83d021 +SHA1 (patch-mozilla_gfx_skia_moz.build) = c7298e883ec7a77c7fb85929dac8eced022cd438 +SHA1 (patch-mozilla_gfx_thebes_moz.build) = 57966be80ca5ce9f24350114bc7cb151b42adffd +SHA1 (patch-mozilla_gfx_ycbcr_moz.build) = fcd9af6d97c2d7cf85856d8f11e1a13c0ebe8f52 +SHA1 (patch-mozilla_gfx_ycbcr_yuv__row__arm.S) = 5562543a67b0dec358a4ecc44612f2faa669d8b0 +SHA1 (patch-mozilla_image_decoders_nsJPEGDecoder.cpp) = bd08482f32102412517b3150e5c70500e8f921fa +SHA1 (patch-mozilla_intl_hyphenation_hnjalloc.h) = e4a479d8151a6518697b95f9bf63bf60e98d8071 +SHA1 (patch-mozilla_intl_unicharutil_util_moz.build) = 4d8779980f5ca2a47b42125de3ef39621df523af SHA1 (patch-mozilla_ipc_chromium_Makefile.in) = 3181c9948eac8834bf0b9e32e6bf1566be1b943c SHA1 (patch-mozilla_ipc_chromium_moz.build) = b8f85c793c00e4eb50e0d70168fa7073fde03535 -SHA1 (patch-mozilla_ipc_chromium_src_base_base__paths.h) = 22a7fbb0416fc2acddd74826933e6ed5b827f3f4 +SHA1 (patch-mozilla_ipc_chromium_src_base_atomicops.h) = a20895ad9b7f0a99a926132b0e368b0b1cdaedad SHA1 (patch-mozilla_ipc_chromium_src_base_file__util.h) = 28722f47efc0758b6f9a8bb12126faf3d01989f5 SHA1 (patch-mozilla_ipc_chromium_src_base_message__loop.cc) = 7d0598fe48a7130e71d7ad52c753d490f4d95d5b -SHA1 (patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc) = f4e1b206527c8d43cba1f98005dd2aa9e6c5d9a9 SHA1 (patch-mozilla_ipc_chromium_src_base_platform__thread.h) = e8b8c3747bc1d157b1f9335080d25cebd64328bd -SHA1 (patch-mozilla_ipc_chromium_src_base_process__util.h) = 6200a36fc73d4d73b278c6ecbe373c7eb7599056 -SHA1 (patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc) = 0d7b503e104535427fece8a0330a9aaf949b9304 +SHA1 (patch-mozilla_ipc_chromium_src_base_process__util.h) = b62b05aacd640c4aa62972a2e04366b311c7da4d +SHA1 (patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc) = 238343f0438a4f2c474fa8fc485b2e836acca929 SHA1 (patch-mozilla_ipc_chromium_src_base_process__util__posix.cc) = 74cfe66cc8ce1692f001277d287d2c54f1fc077b SHA1 (patch-mozilla_ipc_chromium_src_base_scoped__nsautorelease__pool.h) = 5fca921c5a5a20b79d0b3a8a7d5c2b1778ded0e8 SHA1 (patch-mozilla_ipc_chromium_src_base_time__posix.cc) = b93fbc86ff73e7b56c83f23fca79a507350b65fd SHA1 (patch-mozilla_ipc_chromium_src_chrome_common_transport__dib.h) = 2c516ff62f4ea73e4b2ae49b6f0abe95620486da SHA1 (patch-mozilla_ipc_glue_ScopedXREEmbed.cpp) = 2530415b33c3c60e5ce90719673c7dea06c95b82 SHA1 (patch-mozilla_ipc_glue_StringUtil.cpp) = f2bfc2a877554d64ab886d0159c9bdb4e7d01097 +SHA1 (patch-mozilla_ipc_glue_moz.build) = eb8e0d46193092cefcb6d5a00f22ba43161fb71c SHA1 (patch-mozilla_ipc_ipdl_ipdl_cxx_ast.py) = d2ffbde2fb0744ab7acc279dcc9dfc430fb58dfc SHA1 (patch-mozilla_ipc_ipdl_ipdl_cxx_cgen.py) = 8c63e06ed257d059e9ff4da0b00e752bd694347e SHA1 (patch-mozilla_ipc_ipdl_ipdl_lower.py) = c3e0f719900b515554218b6312055f34ccbf9feb -SHA1 (patch-mozilla_js_src_builtin_TypedObject.cpp) = 6ed299b2799aaf3bf789763657a8e54e9299b778 +SHA1 (patch-mozilla_js_public_CallArgs.h) = b822b887cf2649403913f4d1d0f69a531094fd0e +SHA1 (patch-mozilla_js_src_asmjs_AsmJSSignalHandlers.cpp) = 46808d8cacd35982954c641e65c5c817d1b9ceca SHA1 (patch-mozilla_js_src_ctypes_CTypes.h) = 852b14dc17cc29bdbf0b2cc407ba5780dd568d3a -SHA1 (patch-mozilla_js_src_frontend_BytecodeCompiler.cpp) = 876d1438194becc19a01341af901b709c8892ed6 SHA1 (patch-mozilla_js_src_frontend_ParseMaps.cpp) = d7f45bde1f819786c45225600697f14769bed946 -SHA1 (patch-mozilla_js_src_gc_Memory.cpp) = b09074af9f08c142ba83a634a9c93672c1d9252d +SHA1 (patch-mozilla_js_src_gc_Statistics.cpp) = 875b061d7368d19af143d73bfaed7a51154b7e72 +SHA1 (patch-mozilla_js_src_jit_ExecutableAllocator.h) = 43e2c73d8d96482ac1046a0988fa6bb49d600ca3 +SHA1 (patch-mozilla_js_src_jit_LIR.cpp) = 9bda5be7268cd5cadaa117e4aba11900e62424a7 +SHA1 (patch-mozilla_js_src_jit_MIR.cpp) = 5be2f6c399eb69edcf3e456f9fd7c99c4d1e4850 +SHA1 (patch-mozilla_js_src_jit_arm_Architecture-arm.cpp) = 3fa23427dcefac2eccfeec667262d66c9b66dd84 +SHA1 (patch-mozilla_js_src_jsapi.cpp) = 79ce01f9ade19e7c562226e6383c7df9deca566c +SHA1 (patch-mozilla_js_src_jsdate.cpp) = 7d37540f33dff14c31df6786b2319cbad95461f4 +SHA1 (patch-mozilla_js_src_jskwgen.cpp) = 03b2a891d0fb87da98dcb92c3ecf2f6d39621426 SHA1 (patch-mozilla_js_src_jsmath.cpp) = b02ecb4a64c6b486645ffdf0446430db9e2dcd71 +SHA1 (patch-mozilla_js_src_shell_jsoptparse.cpp) = 637d553fd6f464d19e72564a7e2f2dd0b3528bca SHA1 (patch-mozilla_js_src_vm_SPSProfiler.cpp) = 35df0beb0c2f7d233d21c4214281002412b7d5dd -SHA1 (patch-mozilla_js_xpconnect_wrapper_XrayWrapper.cpp) = 374f7236c6c141489d699edc7368bc5ec3ded2f8 -SHA1 (patch-mozilla_media_libcubeb_src_Makefile.in) = 8c809178a1f427302d58fc8776a9371b78a7ca7e -SHA1 (patch-mozilla_media_libcubeb_src_cubeb__alsa.c) = db2a16f6a7d19bca54bd71a488ee95a0db932a46 -SHA1 (patch-mozilla_media_libcubeb_src_moz.build) = 7058656f387417a2c22de882a9f2405a0685c2ab +SHA1 (patch-mozilla_js_xpconnect_src_XPCConvert.cpp) = 41a7aaeaae02324265364ce46b5edc6d717190d5 +SHA1 (patch-mozilla_js_xpconnect_src_xpcprivate.h) = bb9f9dfba00d9536c4bdb84188c588685ce79fa8 +SHA1 (patch-mozilla_media_libcubeb_AUTHORS) = 75431ca834f755054249f3113b45e9e7dbcaf07a +SHA1 (patch-mozilla_media_libcubeb_src_cubeb.c) = 385329b05947507df09281a1d42c6cf77e9ad6de +SHA1 (patch-mozilla_media_libcubeb_src_cubeb__alsa.c) = 783fbfef10450da06d5ce027397c7f07d10c6007 +SHA1 (patch-mozilla_media_libcubeb_src_cubeb__oss.c) = c0b98f9d64047b79a136a69ee1bc5a1084440ec6 +SHA1 (patch-mozilla_media_libcubeb_src_moz.build) = 723ba3f5a6cba49cc10d37e81b496c6e11b794b4 SHA1 (patch-mozilla_media_libpng_pngpriv.h) = 0d2ce353d14c26755ab1db5568202a9887c2b6f3 SHA1 (patch-mozilla_media_libsoundtouch_src_cpu__detect__x86.cpp) = fcb3c03e8d7709a7fd43c696278f51bb25ada564 -SHA1 (patch-mozilla_media_libtheora_Makefile.in) = 6ab6a7750ac2f6fa7caf3ae016638b2f21b5a9ab +SHA1 (patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp) = 38249bd368657210470098d089a56fb641bdad35 +SHA1 (patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c) = f2789d1c13accd151dbb836659a264f042f563a6 +SHA1 (patch-mozilla_media_libstagefright_system_core_liblog_logprint.c) = e10a2a9e224f30379cea0a99ac9e2dbe362bcaf0 +SHA1 (patch-mozilla_media_libtheora_lib_arm_armcpu.c) = 81ba09d76c8bba8bdb4db80aba83619aa5644e95 +SHA1 (patch-mozilla_media_libtheora_lib_info.c) = 0717521137df71399724e4cc6189dd1c4bfe5900 +SHA1 (patch-mozilla_media_libtheora_moz.build) = dde3aaa0f1a0550039a764fd90054c622d91a86c SHA1 (patch-mozilla_media_libtremor_Makefile.in) = 8375506c055714f37192ff51cd0a8bd45d5ef41b +SHA1 (patch-mozilla_media_libtremor_moz.build) = f25c40fa9f9699649c9019eef84936bd52f81181 SHA1 (patch-mozilla_media_libvorbis_Makefile.in) = 7fa5e4b4c33cbfdb4644f5472d5cfc098f33807a +SHA1 (patch-mozilla_media_libvorbis_lib_vorbis__info.c) = b9a23d5062bba5b19487296f0eb6291ed909cc2a +SHA1 (patch-mozilla_media_libvorbis_moz.build) = 3d25cd1abbd217271e21e4dd70c32f05156dcb53 +SHA1 (patch-mozilla_media_libyuv_include_libyuv_scale__row.h) = bcdd39627f96cabdf8a02f750b94c981d160bf8d SHA1 (patch-mozilla_media_mtransport_third__party_nICEr_src_util_mbslen.c) = a336215f2d2299d7d7f830c45ce02feb4d6b46bb SHA1 (patch-mozilla_media_mtransport_third__party_nrappkit_src_port_generic_include_sys_queue.h) = 20867c0010ebae669b66678a310f22a201a58ba7 -SHA1 (patch-mozilla_media_webrtc_signaling_signaling.gyp) = 17803fb1f7f0286375712a94f8fd147133d805ef -SHA1 (patch-mozilla_media_webrtc_signaling_test_Makefile.in) = 828566ac9f67f5bef64370f0412d6e8dac2cea46 +SHA1 (patch-mozilla_media_webrtc_signaling_test_moz.build) = 8f1480a39682931f2b93bf7d57e2b6963e947f6e SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_build_common.gypi) = 4f4d549bf33eceba8d67e552a8544a95d52e0f69 -SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi) = 4804a37511c344ab53eb7f5bec4598a741dd1714 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi) = cc3d6a2d8387b98753c7b9d6d64e43dff197a6df +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi) = f239b2e5f74c5da73d37751587748583233090d5 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc) = c4e67201cd8b10115bc2cd0221699e65c924a5f3 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h) = dd9842b84a67834cff668a0906e921875eebd583 SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc) = ceabec7ac8a213fa1f35a90148960e6d94615b73 SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc) = 3dcd427b7bd24bd68578946f79b7c8beb4d7dda7 -SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi) = 9866f5d55ad541e83a72b9f1791a5c264e319633 -SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp) = 951053eff0eba0debe0cded987a2e3a1437e860e +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi) = c2e60b3603000bca4a1532771e76421149e4eab1 +SHA1 (patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp) = 23d8a53f437522dce9818cb866296147c97bbd34 +SHA1 (patch-mozilla_memory_build_mozjemalloc__compat.c) = 53bc8e6e8692c3e582a2b9b45b44e088e89e977e SHA1 (patch-mozilla_memory_jemalloc_Makefile.in) = 7281f92fc0c5bc906d885f71edd58b5204e65540 -SHA1 (patch-mozilla_memory_mozalloc_mozalloc__abort.cpp) = 74d938d0f984d16c28f22f77919d5212cfc47f09 +SHA1 (patch-mozilla_memory_jemalloc_src_configure) = 9256effb9c67a5dd11e8ceef19b9ea28d0d42cd9 +SHA1 (patch-mozilla_memory_mozalloc_mozalloc__abort.cpp) = 123ed43ef2ed1a4110beace2fb637c39b401f4b3 +SHA1 (patch-mozilla_memory_volatile_VolatileBufferOSX.cpp) = 7d03ccb71fadbb24c4446fe694c434b26ab6ff5d SHA1 (patch-mozilla_mfbt_Alignment.h) = 04273fe60221ed9aa5ba3d6701aba82fcbc1eba3 -SHA1 (patch-mozilla_mfbt_Attributes.h) = dde09326b41e8ab78a42560afd46fbe444621a58 -SHA1 (patch-mozilla_mfbt_Poison.cpp) = 2c4ec88d6d47c93120d1d10457853e67ef52d239 +SHA1 (patch-mozilla_mfbt_Attributes.h) = 67a0941aee2db49b747f3c20141dc6df55ac6549 +SHA1 (patch-mozilla_mfbt_Poison.cpp) = d371a235cc409aa99fdd862687378f5d6a84a863 SHA1 (patch-mozilla_mobile_android_installer_Makefile.in) = c2f9f4dcac0c870b64e099ec7a6d1bdad7b5af0f SHA1 (patch-mozilla_mobile_android_installer_package-manifest.in) = 3ed532efccca911bb70182527651d534d5146dcc SHA1 (patch-mozilla_modules_libjar_nsZipArchive.cpp) = c906441ba5d7f391f5e37edcf88bfdf8586d5a84 -SHA1 (patch-mozilla_netwerk_dns_Makefile.in) = b439f2a5da18fc3f3fb65118d4e99048381b26d9 -SHA1 (patch-mozilla_netwerk_ipc_NeckoParent.cpp) = 7d6c84fc8de5ce93e439c644e79e556be0b8cb75 -SHA1 (patch-mozilla_ostream) = 97351e78803053e561343e429f5eb12252b0290d -SHA1 (patch-mozilla_probes_Makefile.in) = 2f942dadf56add19653a1995fc6ea68e491dd1c5 -SHA1 (patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp) = a881012bf1b40685fbc5f48bf5eaed50cef89f72 -SHA1 (patch-mozilla_storage_src_moz.build) = 3b5e11caccc66a6c7a69d9ed3d5f25dc6c2b343d +SHA1 (patch-mozilla_netwerk_base_nsNetUtil.h) = 8d6f10b910d985a6f8259f5ef02d21e3d9f3ed0e +SHA1 (patch-mozilla_netwerk_dns_moz.build) = 49b4f4de83559132bd783f8f2c5d7376c0ad7841 +SHA1 (patch-mozilla_netwerk_protocol_http_Http2Session.cpp) = 5d6c4bb01cf4ab1c3e518e79c28a143aab9b2868 +SHA1 (patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp) = dc5066e49bb3722c4f07985fd3d4da691a0a1205 SHA1 (patch-mozilla_toolkit_components_osfile_modules_osfile__unix__back.jsm) = 455c218c6fce4d7f26bda18c9169e3bd263af6f8 -SHA1 (patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm) = 1669f9bbff44adc43f4cc9036fcc8cec6bacb429 -SHA1 (patch-mozilla_toolkit_library_libxul.mk) = 9aafeecea1dbeef9f1b5819d2241cc39c595036c -SHA1 (patch-mozilla_toolkit_toolkit.mozbuild) = 361f82922038b82d9c433d4e04ed1ca394332edb +SHA1 (patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm) = 8f48e55d1a1483b7727ef8b2e11b0142894aa14c +SHA1 (patch-mozilla_toolkit_library_moz.build) = 0d2a0509f34686260e417f0ae221e738b3378100 +SHA1 (patch-mozilla_toolkit_modules_GMPInstallManager.jsm) = 975a04826031128d04d2fdba2f7a2bd6dd7d2844 +SHA1 (patch-mozilla_toolkit_modules_GMPUtils.jsm) = b66bb759d73cea16372570cff288dd018b3ad0fc +SHA1 (patch-mozilla_toolkit_mozapps_extensions_internal_GMPProvider.jsm) = 6dd0ab01b21e11a77b554d3be32bbb0aeed0a441 +SHA1 (patch-mozilla_toolkit_xre_nsAppRunner.cpp) = 9e2212cfa52080593c88e8ffc926681016dfb6a5 SHA1 (patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp) = 41dbac602fb4b61835c794c6fc950f16cadd2f6f -SHA1 (patch-mozilla_unwind.h) = 65a725cd21dc596c5ee7448004ca829707e7661e -SHA1 (patch-mozilla_webapprt_moz.build) = 0cb4565cdd56eb0cb5ee892035b46d725b5150aa -SHA1 (patch-mozilla_xpcom_base_nsDebugImpl.cpp) = bf31745928477d0b4f0e86c85f7258f62f7902bc -SHA1 (patch-mozilla_xpcom_base_nsUUIDGenerator.cpp) = a42ce70df6f138eb3b536ac08ffcf4403d34d98a -SHA1 (patch-mozilla_xpcom_base_nsUUIDGenerator.h) = 982fabbbdc25ba17ff75cea0b21a3fa87bf23f95 +SHA1 (patch-mozilla_webapprt_moz.build) = a61c46543c2c4cc5ecfcd3eb24facab3e6081b52 +SHA1 (patch-mozilla_widget_gtk_gtk2drawing.c) = 23d590e58e22957b996fe27a12bff186fcc7eb49 +SHA1 (patch-mozilla_widget_gtk_gtk3drawing.c) = 62226a6ddb936ea6c6b6f08d509ff166ec85f208 +SHA1 (patch-mozilla_widget_gtk_gtkdrawing.h) = e44e47c56e83e8982ac61d6135550dd6bed50509 +SHA1 (patch-mozilla_widget_gtk_nsNativeThemeGTK.cpp) = bc23ce979c1da98e98ee5cf19b3a2bc992f56186 SHA1 (patch-mozilla_xpcom_base_nscore.h) = 80dc90ac315e3c74340498a877f58c32d94e6ac3 -SHA1 (patch-mozilla_xpcom_build_PoisonIOInterposer.h) = 41baab52ee14862da977525368a5a89922622740 -SHA1 (patch-mozilla_xpcom_build_nsXPComInit.cpp) = 9ac1c721e6f92006900326b86595de3f6f861d00 -SHA1 (patch-mozilla_xpcom_ds_TimeStamp.h) = 179052bd8c33cd17b0d35fd22af103d89984d821 -SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_moz.build) = 9d77b06fc628ee9d7d7b3257fbb36a4ea99be72d -SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__asm__mips.S) = 520ad1b22f08552ca16462c1a2586d8bd08a31de -SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp) = 0cb59e304b09bd18ab12f173f3327409756d99d5 -SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd.cpp) = 58b06ebd1068edc06d3fe1f6464217da4c157e49 -SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__asm__mips.S) = 810abdb91420d15c59061ce10f6d15c637333aa4 -SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp) = 07b474c6d9a74c13465e2782cfba106399e3b6ef +SHA1 (patch-mozilla_xpcom_build_PoisonIOInterposer.h) = f2803b8690e59cdccccf63f84b2616901a5f5c82 +SHA1 (patch-mozilla_xpcom_build_XPCOMInit.cpp) = 3539557001b0f2f449f4d122f0c696f00d9587df +SHA1 (patch-mozilla_xpcom_glue_standalone_nsXPCOMGlue.cpp) = d7c469f51e4b5baeb0ac3c1403875cf66324214c +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in) = b29d07bf379c02c7ee0f5765a25af703051f9c8b +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build) = 7642b01dd558c098bcb3aad32f62aeb4bd0984f2 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp) = 72ea33fdc90899e630ba83ba8fce7ce8942bb9ed +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S) = 3ded7fc34293a286f99b61b687cadd71afc53e11 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s) = cc73676c2ae4fd515eaa9915e8fa19e5e6cecaad +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp) = 221f35cb42616cd6c52bb1cc164ae2c87c9e99a8 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp) = 21faa775ed53b4571362efce316a6dfa73689b16 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp) = 9662652da9b9c744f45cf39c73113dcd16291977 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp) = 19775ea31d091df9d6ba397e3449dd05b8574501 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp) = dfdb2bdc9c7b83d3d88f00f0e34570ce0b2f5738 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S) = 0f2d4e824d5b7cf5fdbbc9c3b747df1a5ba812f6 +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s) = 332cdb308db38a9a3647c0aae86ae1ebb030b4ce +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp) = 2826f0db0ce78ad792db03dc07ef94bbe5c08f6a +SHA1 (patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp) = 65f4a81f33be2660bae6b06ec051b5a3582837ca SHA1 (patch-mozilla_xulrunner_installer_Makefile.in) = 51cb06e38259666cdcbe7f26aa2f6b237d55b815 SHA1 (patch-pb) = e61134fe43911f34a629cc338f692051c7a3ae22 SHA1 (patch-pc) = 7c0e354278ae148a8ffa1bc806710a24bc6ac095 -SHA1 (patch-rc) = 46175f709b324d6a363378807eb5689aea52f065 -SHA1 (patch-xb) = c293419875babf8a3cdd4cd6f0bb22037540d2b8 -SHA1 (patch-xc) = 4e7e2d2c6c117b781aaefd271e739e7242f4de19 -SHA1 (patch-xe) = 27c9efa8354bed65af833c5a92a9d8a7f5d8f0f5 -SHA1 (patch-xf) = 4ed26a45e79a927ed65240e390bc5582676f8665 -SHA1 (patch-xg) = e4a68a6b1eb3e3fc37077638cd347b8ee65c05d9 -SHA1 (patch-xl) = c5ddb6bb237ba1582cb51836092e19587c7be1b8 -SHA1 (patch-zb) = c6e38afe45e16d0a2a54c4165c0dd7a6e5046f2e -SHA1 (patch-zc) = 27df97dd6f03d501ff626473798106de996f70a7 +SHA1 (patch-rc) = f9c3a03f34a3276bccfee6fa7c06ff33345f369e +SHA1 (patch-zc) = b1b7edfed691db014d3a25afeb94afcd9f65b82a diff --git a/mail/thunderbird/options.mk b/mail/thunderbird/options.mk index 4d6d64650cc..6c44eb15511 100644 --- a/mail/thunderbird/options.mk +++ b/mail/thunderbird/options.mk @@ -1,4 +1,4 @@ -# $NetBSD: options.mk,v 1.16 2015/07/01 12:58:35 ryoon Exp $ +# $NetBSD: options.mk,v 1.17 2015/07/09 15:17:34 ryoon Exp $ PKG_OPTIONS_VAR= PKG_OPTIONS.thunderbird PKG_SUPPORTED_OPTIONS= alsa debug mozilla-jemalloc gnome \ @@ -60,8 +60,8 @@ CONFIGURE_ARGS+= --disable-pulseaudio .if !empty(PKG_OPTIONS:Mmozilla-lightning) CONFIGURE_ARGS+= --enable-calendar PLIST_SRC+= PLIST.lightning -XPI_FILES+= ${WRKSRC}/${OBJDIR}/mozilla/dist/xpi-stage/gdata-provider.xpi -XPI_FILES+= ${WRKSRC}/${OBJDIR}/mozilla/dist/xpi-stage/lightning.xpi +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 diff --git a/mail/thunderbird/patches/patch-aa b/mail/thunderbird/patches/patch-aa index ca3f29c8e27..31d2befbe47 100644 --- a/mail/thunderbird/patches/patch-aa +++ b/mail/thunderbird/patches/patch-aa @@ -1,17 +1,8 @@ -$NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +$NetBSD: patch-aa,v 1.20 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/configure.in.orig 2014-07-18 00:05:11.000000000 +0000 +--- mozilla/configure.in.orig 2015-06-08 17:49:55.000000000 +0000 +++ mozilla/configure.in -@@ -962,7 +962,7 @@ MOZ_BZ2_LIBS='$(call EXPAND_LIBNAME_PATH - MOZ_PNG_CFLAGS="-I$_objdir/dist/include" # needed for freetype compilation - MOZ_PNG_LIBS='$(call EXPAND_LIBNAME_PATH,mozpng,$(DEPTH)/media/libpng)' - --MOZ_JS_STATIC_LIBS='$(call EXPAND_LIBNAME_PATH,js_static,$(LIBXUL_DIST)/lib)' -+MOZ_JS_STATIC_LIBS='$(call EXPAND_LIBNAME_PATH,js_static,$(DEPTH)/js/src)' - MOZ_JS_SHARED_LIBS='$(call EXPAND_LIBNAME_PATH,mozjs,$(LIBXUL_DIST)/lib)' - MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' - XPCOM_FROZEN_LDOPTS='$(call EXPAND_LIBNAME_PATH,xul mozalloc,$(LIBXUL_DIST)/bin)' -@@ -1676,7 +1676,13 @@ Linux) +@@ -1794,7 +1794,13 @@ Linux) MOZ_ENABLE_PROFILER_SPS= esac ;; @@ -26,7 +17,7 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ *) MOZ_ENABLE_PROFILER_SPS= ;; -@@ -1780,7 +1786,7 @@ case "$host" in +@@ -1898,7 +1904,7 @@ case "$host" in ;; *-darwin*) @@ -35,7 +26,7 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ HOST_NSPR_MDCPUCFG='\"md/_darwin.cfg\"' HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O3}" ;; -@@ -1912,7 +1918,6 @@ case "$target" in +@@ -2022,7 +2028,6 @@ case "$target" in AC_DEFINE(XP_DARWIN) _PLATFORM_DEFAULT_TOOLKIT='cairo-uikit' else @@ -43,7 +34,7 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ AC_DEFINE(XP_DARWIN) _PLATFORM_DEFAULT_TOOLKIT='cairo-cocoa' # The ExceptionHandling framework is needed for Objective-C exception -@@ -2522,118 +2527,15 @@ MOZ_CXX11 +@@ -2641,8 +2646,7 @@ MOZ_CXX11 AC_LANG_C @@ -51,134 +42,9 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ -dnl Borrowed from glibc configure.in +dnl Setup default hidden visibility and wrapped system headers. dnl =============================================================== - if test "$GNU_CC"; then -- AC_CACHE_CHECK(for visibility(hidden) attribute, -- ac_cv_visibility_hidden, -- [cat > conftest.c <<EOF -- int foo __attribute__ ((visibility ("hidden"))) = 1; --EOF -- ac_cv_visibility_hidden=no -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -- if egrep '\.(hidden|private_extern).*foo' conftest.s >/dev/null; then -- ac_cv_visibility_hidden=yes -- fi -- fi -- rm -f conftest.[cs] -- ]) -- if test "$ac_cv_visibility_hidden" = "yes"; then -- AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) -- -- AC_CACHE_CHECK(for visibility(default) attribute, -- ac_cv_visibility_default, -- [cat > conftest.c <<EOF -- int foo __attribute__ ((visibility ("default"))) = 1; --EOF -- ac_cv_visibility_default=no -- if ${CC-cc} -fvisibility=hidden -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -- if ! egrep '\.(hidden|private_extern).*foo' conftest.s >/dev/null; then -- ac_cv_visibility_default=yes -- fi -- fi -- rm -f conftest.[cs] -- ]) -- if test "$ac_cv_visibility_default" = "yes"; then -- AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE) -- -- AC_CACHE_CHECK(for visibility pragma support, -- ac_cv_visibility_pragma, -- [cat > conftest.c <<EOF --#pragma GCC visibility push(hidden) -- int foo_hidden = 1; --#pragma GCC visibility push(default) -- int foo_default = 1; --EOF -- ac_cv_visibility_pragma=no -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -- if egrep '\.(hidden|private_extern).*foo_hidden' conftest.s >/dev/null; then -- if ! egrep '\.(hidden|private_extern).*foo_default' conftest.s > /dev/null; then -- ac_cv_visibility_pragma=yes -- fi -- fi -- fi -- rm -f conftest.[cs] -- ]) -- if test "$ac_cv_visibility_pragma" = "yes"; then -- AC_CACHE_CHECK(For gcc visibility bug with class-level attributes (GCC bug 26905), -- ac_cv_have_visibility_class_bug, -- [cat > conftest.c <<EOF --#pragma GCC visibility push(hidden) --struct __attribute__ ((visibility ("default"))) TestStruct { -- static void Init(); --}; --__attribute__ ((visibility ("default"))) void TestFunc() { -- TestStruct::Init(); --} --EOF -- ac_cv_have_visibility_class_bug=no -- if ! ${CXX-g++} ${CXXFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -S -o conftest.S conftest.c > /dev/null 2>&1 ; then -- ac_cv_have_visibility_class_bug=yes -- else -- if test `egrep -c '@PLT|\\$stub' conftest.S` = 0; then -- ac_cv_have_visibility_class_bug=yes -- fi -- fi -- rm -rf conftest.{c,S} -- ]) -- -- AC_CACHE_CHECK(For x86_64 gcc visibility bug with builtins (GCC bug 20297), -- ac_cv_have_visibility_builtin_bug, -- [cat > conftest.c <<EOF --#pragma GCC visibility push(hidden) --#pragma GCC visibility push(default) --#include <string.h> --#pragma GCC visibility pop -- --__attribute__ ((visibility ("default"))) void Func() { -- char c[[100]]; -- memset(c, 0, sizeof(c)); --} --EOF -- ac_cv_have_visibility_builtin_bug=no -- if ! ${CC-cc} ${CFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then -- ac_cv_have_visibility_builtin_bug=yes -- else -- if test `grep -c "@PLT" conftest.S` = 0; then -- ac_cv_visibility_builtin_bug=yes -- fi -- fi -- rm -f conftest.{c,S} -- ]) -- if test "$ac_cv_have_visibility_builtin_bug" = "no" -a \ -- "$ac_cv_have_visibility_class_bug" = "no"; then -- VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h' -- WRAP_SYSTEM_INCLUDES=1 -- STL_FLAGS='-I$(DIST)/stl_wrappers' -- WRAP_STL_INCLUDES=1 -- else -- VISIBILITY_FLAGS='-fvisibility=hidden' -- fi # have visibility pragma bug -- fi # have visibility pragma -- fi # have visibility(default) attribute -- fi # have visibility(hidden) attribute -+ AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) -+ AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE) -+ VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h' -+ WRAP_SYSTEM_INCLUDES=1 -+ STL_FLAGS='-I$(DIST)/stl_wrappers' -+ WRAP_STL_INCLUDES=1 - fi # GNU_CC - - # visibility hidden flag for Sun Studio on Solaris -@@ -3004,7 +2906,7 @@ dnl Checks for library functions. - dnl ======================================================== - AC_PROG_GCC_TRADITIONAL - AC_FUNC_MEMCMP --AC_CHECK_FUNCS(stat64 lstat64 truncate64 statvfs64 statvfs statfs64 statfs getpagesize localtime_r) -+AC_CHECK_FUNCS(stat64 lstat64 truncate64 statvfs64 statvfs statfs64 statfs getpagesize localtime_r arc4random arc4random_buf) - - dnl check for clock_gettime(), the CLOCK_MONOTONIC clock - AC_CACHE_CHECK(for clock_gettime(CLOCK_MONOTONIC), -@@ -3691,6 +3593,14 @@ if test -n "$YASM"; then + if test "$GNU_CC" -a "$OS_TARGET" != WINNT; then + AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) +@@ -3663,6 +3667,14 @@ if test -n "$YASM"; then _YASM_BUILD=` echo ${YASM_VERSION} | $AWK -F\. '{ print $4 }'` fi @@ -193,7 +59,7 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ if test -z "$SKIP_LIBRARY_CHECKS"; then dnl system JPEG support dnl ======================================================== -@@ -3718,11 +3628,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then +@@ -3690,11 +3702,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then #include <jpeglib.h> ], [ #if JPEG_LIB_VERSION < $MOZJPEG #error "Insufficient JPEG library version ($MOZJPEG required)." @@ -206,7 +72,7 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ MOZ_NATIVE_JPEG=1, AC_MSG_ERROR([Insufficient JPEG library version for --with-system-jpeg])) fi -@@ -4387,6 +4293,10 @@ cairo-gonk) +@@ -4392,6 +4400,10 @@ cairo-gonk) esac @@ -217,7 +83,16 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ AC_SUBST(MOZ_PDF_PRINTING) if test "$MOZ_PDF_PRINTING"; then PDF_SURFACE_FEATURE="#define CAIRO_HAS_PDF_SURFACE 1" -@@ -5106,6 +5016,9 @@ if test -n "$MOZ_WEBRTC"; then +@@ -4408,7 +4420,7 @@ fi + + if test "$COMPILE_ENVIRONMENT"; then + if test "$MOZ_ENABLE_GTK3"; then +- PKG_CHECK_MODULES(MOZ_GTK3, gtk+-3.0 >= $GTK3_VERSION gtk+-unix-print-3.0 glib-2.0 gobject-2.0 atk-bridge-2.0 $GDK_PACKAGES) ++ PKG_CHECK_MODULES(MOZ_GTK3, gtk+-3.0 >= $GTK3_VERSION gtk+-unix-print-3.0 glib-2.0 gobject-2.0 $GDK_PACKAGES) + MOZ_GTK3_CFLAGS="-I${_topsrcdir}/widget/gtk/compat-gtk3 $MOZ_GTK3_CFLAGS" + dnl Contrary to MOZ_GTK2_LIBS, MOZ_GTK3_LIBS needs to be literally added to TK_LIBS instead + dnl of a make reference because of how TK_LIBS is mangled in toolkit/library/moz.build +@@ -5149,6 +5161,9 @@ if test -n "$MOZ_WEBRTC"; then MOZ_VPX=1 MOZ_VPX_ERROR_CONCEALMENT=1 @@ -227,7 +102,7 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ dnl enable once Signaling lands MOZ_WEBRTC_SIGNALING=1 AC_DEFINE(MOZ_WEBRTC_SIGNALING) -@@ -5190,6 +5106,63 @@ if test "${ac_cv_c_attribute_aligned}" ! +@@ -5252,6 +5267,157 @@ if test "${ac_cv_c_attribute_aligned}" ! fi dnl ======================================================== @@ -250,8 +125,6 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +fi + +AC_SUBST(MOZ_NATIVE_OGG) -+AC_SUBST(MOZ_OGG_CFLAGS) -+AC_SUBST(MOZ_OGG_LIBS) + +dnl ======================================================== +dnl Check for libvorbis @@ -263,12 +136,10 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +MOZ_NATIVE_VORBIS=) + +if test -n "$MOZ_NATIVE_VORBIS"; then -+ PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.4) ++ PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.5) +fi + +AC_SUBST(MOZ_NATIVE_VORBIS) -+AC_SUBST(MOZ_VORBIS_CFLAGS) -+AC_SUBST(MOZ_VORBIS_LIBS) + +dnl ======================================================== +dnl Check for integer-only libvorbis aka tremor @@ -284,17 +155,25 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +fi + +AC_SUBST(MOZ_NATIVE_TREMOR) -+AC_SUBST(MOZ_TREMOR_CFLAGS) -+AC_SUBST(MOZ_TREMOR_LIBS) + +dnl ======================================================== - dnl = Disable Opus audio codec support - dnl ======================================================== - MOZ_ARG_DISABLE_BOOL(opus, -@@ -5198,6 +5171,97 @@ MOZ_ARG_DISABLE_BOOL(opus, - MOZ_OPUS=1) - - 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 ======================================================== + @@ -310,8 +189,6 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +fi + +AC_SUBST(MOZ_NATIVE_OPUS) -+AC_SUBST(MOZ_OPUS_CFLAGS) -+AC_SUBST(MOZ_OPUS_LIBS) + +dnl ======================================================== +dnl Check for libtheora @@ -327,8 +204,6 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +fi + +AC_SUBST(MOZ_NATIVE_THEORA) -+AC_SUBST(MOZ_THEORA_CFLAGS) -+AC_SUBST(MOZ_THEORA_LIBS) + +dnl ======================================================== +dnl Check for libspeex resampler @@ -344,8 +219,6 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +fi + +AC_SUBST(MOZ_NATIVE_SPEEX) -+AC_SUBST(MOZ_SPEEX_CFLAGS) -+AC_SUBST(MOZ_SPEEX_LIBS) + +dnl ======================================================== +dnl Check for libsoundtouch @@ -382,14 +255,104 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +fi + +AC_SUBST(MOZ_NATIVE_SOUNDTOUCH) -+AC_SUBST(MOZ_SOUNDTOUCH_CFLAGS) -+AC_SUBST(MOZ_SOUNDTOUCH_LIBS) + +dnl ======================================================== dnl = Disable VP8 decoder support dnl ======================================================== MOZ_ARG_DISABLE_BOOL(webm, -@@ -5938,7 +6002,9 @@ MOZ_ARG_DISABLE_BOOL(gamepad, +@@ -5606,6 +5772,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|NetBSD|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%/usr}/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 ================================== + +@@ -5619,12 +5846,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 ======================================================== +@@ -6046,7 +6284,9 @@ MOZ_ARG_DISABLE_BOOL(gamepad, if test "$MOZ_GAMEPAD"; then case "$OS_TARGET" in Darwin) @@ -399,8 +362,8 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ + fi ;; WINNT) - if test -z "$MOZ_HAS_WINSDK_WITH_D3D"; then -@@ -8036,6 +8102,52 @@ if test "$USE_FC_FREETYPE"; then + MOZ_GAMEPAD_BACKEND=windows +@@ -8066,6 +8306,49 @@ if test "$USE_FC_FREETYPE"; then fi dnl ======================================================== @@ -413,16 +376,15 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +MOZ_NATIVE_HARFBUZZ=) + +if test -n "$MOZ_NATIVE_HARFBUZZ"; then -+ PKG_CHECK_MODULES(MOZ_HARFBUZZ, harfbuzz >= 0.9.25) ++ PKG_CHECK_MODULES(MOZ_HARFBUZZ, harfbuzz >= 0.9.34) +fi + +AC_SUBST(MOZ_NATIVE_HARFBUZZ) -+AC_SUBST(MOZ_HARFBUZZ_CFLAGS) -+AC_SUBST(MOZ_HARFBUZZ_LIBS) + +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, @@ -446,8 +408,6 @@ $NetBSD: patch-aa,v 1.19 2014/11/14 15:27:05 ryoon Exp $ +fi + +AC_SUBST(MOZ_NATIVE_GRAPHITE2) -+AC_SUBST(MOZ_GRAPHITE2_CFLAGS) -+AC_SUBST(MOZ_GRAPHITE2_LIBS) + +dnl ======================================================== dnl Check for pixman and cairo diff --git a/mail/thunderbird/patches/patch-ak b/mail/thunderbird/patches/patch-ak deleted file mode 100644 index 8c45c39f8f3..00000000000 --- a/mail/thunderbird/patches/patch-ak +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ak,v 1.10 2012/09/02 06:43:40 ryoon Exp $ - ---- mozilla/js/src/ctypes/libffi/configure.orig 2012-08-25 00:31:11.000000000 +0000 -+++ mozilla/js/src/ctypes/libffi/configure -@@ -11278,7 +11278,7 @@ case "$host" in - powerpc-*-aix* | rs6000-*-aix*) - TARGET=POWERPC_AIX; TARGETDIR=powerpc - ;; -- powerpc-*-freebsd* | powerpc-*-openbsd*) -+ powerpc-*-freebsd* | powerpc-*-openbsd* | powerpc-*-netbsd*) - TARGET=POWERPC_FREEBSD; TARGETDIR=powerpc - ;; - powerpc*-*-rtems*) diff --git a/mail/thunderbird/patches/patch-ao b/mail/thunderbird/patches/patch-ao index a5043484555..f4be2b30bb3 100644 --- a/mail/thunderbird/patches/patch-ao +++ b/mail/thunderbird/patches/patch-ao @@ -1,12 +1,14 @@ -$NetBSD: patch-ao,v 1.10 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-ao,v 1.11 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/toolkit/mozapps/installer/packager.mk.orig 2014-07-18 00:05:55.000000000 +0000 +--- mozilla/toolkit/mozapps/installer/packager.mk.orig 2015-06-08 17:49:32.000000000 +0000 +++ mozilla/toolkit/mozapps/installer/packager.mk -@@ -790,7 +790,7 @@ endif +@@ -122,8 +122,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) +- 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) - .) | \ diff --git a/mail/thunderbird/patches/patch-as b/mail/thunderbird/patches/patch-as index 52aef24ca9a..c89115a157c 100644 --- a/mail/thunderbird/patches/patch-as +++ b/mail/thunderbird/patches/patch-as @@ -1,10 +1,10 @@ -$NetBSD: patch-as,v 1.16 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-as,v 1.17 2015/07/09 15:17:34 ryoon Exp $ Treat DragonFly like FreeBSD. ---- mozilla/js/src/configure.in.orig 2014-07-18 00:05:25.000000000 +0000 +--- mozilla/js/src/configure.in.orig 2015-06-08 17:49:21.000000000 +0000 +++ mozilla/js/src/configure.in -@@ -2082,116 +2082,13 @@ AC_LANG_CPLUSPLUS +@@ -2187,8 +2187,7 @@ AC_LANG_CPLUSPLUS MOZ_CXX11 @@ -12,121 +12,9 @@ Treat DragonFly like FreeBSD. -dnl Borrowed from glibc configure.in +dnl Setup default hidden visibility and wrapped system headers. dnl =============================================================== - if test "$GNU_CC"; then -- AC_CACHE_CHECK(for visibility(hidden) attribute, -- ac_cv_visibility_hidden, -- [cat > conftest.c <<EOF -- int foo __attribute__ ((visibility ("hidden"))) = 1; --EOF -- ac_cv_visibility_hidden=no -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -- if egrep '\.(hidden|private_extern).*foo' conftest.s >/dev/null; then -- ac_cv_visibility_hidden=yes -- fi -- fi -- rm -f conftest.[cs] -- ]) -- if test "$ac_cv_visibility_hidden" = "yes"; then -- AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) -- -- AC_CACHE_CHECK(for visibility(default) attribute, -- ac_cv_visibility_default, -- [cat > conftest.c <<EOF -- int foo __attribute__ ((visibility ("default"))) = 1; --EOF -- ac_cv_visibility_default=no -- if ${CC-cc} -fvisibility=hidden -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -- if ! egrep '\.(hidden|private_extern).*foo' conftest.s >/dev/null; then -- ac_cv_visibility_default=yes -- fi -- fi -- rm -f conftest.[cs] -- ]) -- if test "$ac_cv_visibility_default" = "yes"; then -- AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE) -- -- AC_CACHE_CHECK(for visibility pragma support, -- ac_cv_visibility_pragma, -- [cat > conftest.c <<EOF --#pragma GCC visibility push(hidden) -- int foo_hidden = 1; --#pragma GCC visibility push(default) -- int foo_default = 1; --EOF -- ac_cv_visibility_pragma=no -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -- if egrep '\.(hidden|private_extern).*foo_hidden' conftest.s >/dev/null; then -- if ! egrep '\.(hidden|private_extern).*foo_default' conftest.s > /dev/null; then -- ac_cv_visibility_pragma=yes -- fi -- fi -- fi -- rm -f conftest.[cs] -- ]) -- if test "$ac_cv_visibility_pragma" = "yes"; then -- AC_CACHE_CHECK(For gcc visibility bug with class-level attributes (GCC bug 26905), -- ac_cv_have_visibility_class_bug, -- [cat > conftest.c <<EOF --#pragma GCC visibility push(hidden) --struct __attribute__ ((visibility ("default"))) TestStruct { -- static void Init(); --}; --__attribute__ ((visibility ("default"))) void TestFunc() { -- TestStruct::Init(); --} --EOF -- ac_cv_have_visibility_class_bug=no -- if ! ${CXX-g++} ${CXXFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -S -o conftest.S conftest.c > /dev/null 2>&1 ; then -- ac_cv_have_visibility_class_bug=yes -- else -- if test `egrep -c '@PLT|\\$stub' conftest.S` = 0; then -- ac_cv_have_visibility_class_bug=yes -- fi -- fi -- rm -rf conftest.{c,S} -- ]) -- -- AC_CACHE_CHECK(For x86_64 gcc visibility bug with builtins (GCC bug 20297), -- ac_cv_have_visibility_builtin_bug, -- [cat > conftest.c <<EOF --#pragma GCC visibility push(hidden) --#pragma GCC visibility push(default) --#include <string.h> --#pragma GCC visibility pop -- --__attribute__ ((visibility ("default"))) void Func() { -- char c[[100]]; -- memset(c, 0, sizeof(c)); --} --EOF -- ac_cv_have_visibility_builtin_bug=no -- if ! ${CC-cc} ${CFLAGS} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -S -o conftest.S conftest.c > /dev/null 2>&1 ; then -- ac_cv_have_visibility_builtin_bug=yes -- else -- if test `grep -c "@PLT" conftest.S` = 0; then -- ac_cv_visibility_builtin_bug=yes -- fi -- fi -- rm -f conftest.{c,S} -- ]) -- if test "$ac_cv_have_visibility_builtin_bug" = "no" -a \ -- "$ac_cv_have_visibility_class_bug" = "no"; then -- VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h' -- WRAP_SYSTEM_INCLUDES=1 -- else -- VISIBILITY_FLAGS='-fvisibility=hidden' -- fi # have visibility pragma bug -- fi # have visibility pragma -- fi # have visibility(default) attribute -- fi # have visibility(hidden) attribute -+ AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) -+ AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE) -+ VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h' -+ WRAP_SYSTEM_INCLUDES=1 - fi # GNU_CC - - # visibility hidden flag for Sun Studio on Solaris -@@ -3162,7 +3059,7 @@ if test "$MOZ_MEMORY"; then + if test "$GNU_CC" -a "$OS_TARGET" != WINNT; then + AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) +@@ -3010,7 +3009,7 @@ if test "$MOZ_MEMORY"; then *-darwin*) AC_DEFINE(MOZ_MEMORY_DARWIN) ;; @@ -135,7 +23,7 @@ Treat DragonFly like FreeBSD. AC_DEFINE(MOZ_MEMORY_BSD) ;; *-android*|*-linuxandroid*) -@@ -4088,6 +3985,16 @@ MOZ_SUBCONFIGURE_ICU() +@@ -3851,6 +3850,16 @@ MOZ_SUBCONFIGURE_ICU() dnl ======================================================== dnl JavaScript shell dnl ======================================================== @@ -150,5 +38,5 @@ Treat DragonFly like FreeBSD. + PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 50.1) +fi - AC_HAVE_FUNCS(setlocale) - AC_HAVE_FUNCS(localeconv) + MALLOC_HEADERS="malloc.h malloc_np.h malloc/malloc.h sys/malloc.h" + MALLOC_H= diff --git a/mail/thunderbird/patches/patch-ax b/mail/thunderbird/patches/patch-ax index d7274f22237..13f4fc4b904 100644 --- a/mail/thunderbird/patches/patch-ax +++ b/mail/thunderbird/patches/patch-ax @@ -1,56 +1,56 @@ -$NetBSD: patch-ax,v 1.14 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-ax,v 1.15 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/xpcom/base/nsStackWalk.cpp.orig 2014-07-18 00:05:57.000000000 +0000 +--- mozilla/xpcom/base/nsStackWalk.cpp.orig 2015-06-08 17:49:33.000000000 +0000 +++ mozilla/xpcom/base/nsStackWalk.cpp -@@ -33,8 +33,8 @@ static CriticalAddress gCriticalAddress; +@@ -34,12 +34,12 @@ static CriticalAddress gCriticalAddress; + #define _GNU_SOURCE + #endif + +-#if defined(HAVE_DLOPEN) || defined(XP_MACOSX) ++#if defined(HAVE_DLOPEN) || defined(XP_DARWIN) #include <dlfcn.h> #endif -#define NSSTACKWALK_SUPPORTS_MACOSX \ -- (defined(XP_MACOSX) && \ +- (defined(XP_MACOSX) && \ +#define NSSTACKWALK_SUPPORTS_DARWIN \ -+ (defined(XP_DARWIN) && \ - (defined(__i386) || defined(__ppc__) || defined(HAVE__UNWIND_BACKTRACE))) ++ (defined(XP_DARWIN) && \ + (defined(__i386) || defined(__ppc__) || defined(HAVE__UNWIND_BACKTRACE))) #define NSSTACKWALK_SUPPORTS_LINUX \ -@@ -42,11 +42,11 @@ static CriticalAddress gCriticalAddress; - ((defined(__GNUC__) && (defined(__i386) || defined(PPC))) || \ - defined(HAVE__UNWIND_BACKTRACE))) - --#define NSSTACKWALK_SUPPORTS_SOLARIS \ -+#define notNSSTACKWALK_SUPPORTS_SOLARIS \ - (defined(__sun) && \ - (defined(__sparc) || defined(sparc) || defined(__i386) || defined(i386))) +@@ -47,7 +47,7 @@ static CriticalAddress gCriticalAddress; + ((defined(__GNUC__) && (defined(__i386) || defined(PPC))) || \ + defined(HAVE__UNWIND_BACKTRACE))) -#if NSSTACKWALK_SUPPORTS_MACOSX +#if NSSTACKWALK_SUPPORTS_DARWIN #include <pthread.h> #include <CoreServices/CoreServices.h> -@@ -838,7 +838,7 @@ NS_FormatCodeAddressDetails(void *aPC, c +@@ -830,7 +830,7 @@ NS_DescribeCodeAddress(void* aPC, nsCode + } - // WIN32 x86 stack walking code - // i386 or PPC Linux stackwalking code or Solaris --#elif HAVE_DLADDR && (HAVE__UNWIND_BACKTRACE || NSSTACKWALK_SUPPORTS_LINUX || NSSTACKWALK_SUPPORTS_SOLARIS || NSSTACKWALK_SUPPORTS_MACOSX) -+#elif HAVE_DLADDR && (HAVE__UNWIND_BACKTRACE || NSSTACKWALK_SUPPORTS_LINUX || NSSTACKWALK_SUPPORTS_SOLARIS || NSSTACKWALK_SUPPORTS_DARWIN) + // i386 or PPC Linux stackwalking code +-#elif HAVE_DLADDR && (HAVE__UNWIND_BACKTRACE || NSSTACKWALK_SUPPORTS_LINUX || NSSTACKWALK_SUPPORTS_MACOSX) ++#elif HAVE_DLADDR && (HAVE__UNWIND_BACKTRACE || NSSTACKWALK_SUPPORTS_LINUX || NSSTACKWALK_SUPPORTS_DARWIN) #include <stdlib.h> #include <string.h> -@@ -1162,7 +1162,7 @@ FramePointerStackWalk(NS_WalkStackCallba +@@ -901,7 +901,7 @@ FramePointerStackWalk(NS_WalkStackCallba (long(next) & 3)) { break; } -#if (defined(__ppc__) && defined(XP_MACOSX)) || defined(__powerpc64__) +#if (defined(__ppc__) && defined(XP_DARWIN)) || defined(__powerpc64__) // ppc mac or powerpc64 linux - void *pc = *(bp+2); + void* pc = *(bp + 2); bp += 3; -@@ -1192,7 +1192,7 @@ FramePointerStackWalk(NS_WalkStackCallba +@@ -931,7 +931,7 @@ FramePointerStackWalk(NS_WalkStackCallba } #define X86_OR_PPC (defined(__i386) || defined(PPC) || defined(__ppc__)) -#if X86_OR_PPC && (NSSTACKWALK_SUPPORTS_MACOSX || NSSTACKWALK_SUPPORTS_LINUX) // i386 or PPC Linux or Mac stackwalking code +#if X86_OR_PPC && (NSSTACKWALK_SUPPORTS_DARWIN || NSSTACKWALK_SUPPORTS_LINUX) // i386 or PPC Linux or Mac stackwalking code - EXPORT_XPCOM_API(nsresult) + XPCOM_API(nsresult) NS_StackWalk(NS_WalkStackCallback aCallback, uint32_t aSkipFrames, diff --git a/mail/thunderbird/patches/patch-ay b/mail/thunderbird/patches/patch-ay index 80921f1b7f8..f719da2702d 100644 --- a/mail/thunderbird/patches/patch-ay +++ b/mail/thunderbird/patches/patch-ay @@ -1,6 +1,6 @@ -$NetBSD: patch-ay,v 1.11 2015/01/29 22:22:27 wiz Exp $ +$NetBSD: patch-ay,v 1.12 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/browser/app/nsBrowserApp.cpp.orig 2014-07-18 00:05:06.000000000 +0000 +--- mozilla/browser/app/nsBrowserApp.cpp.orig 2015-06-08 17:49:17.000000000 +0000 +++ mozilla/browser/app/nsBrowserApp.cpp @@ -18,8 +18,10 @@ #include <unistd.h> @@ -14,7 +14,7 @@ $NetBSD: patch-ay,v 1.11 2015/01/29 22:22:27 wiz Exp $ #include "MacQuirks.h" #endif -@@ -447,7 +449,7 @@ TimeStamp_Now() +@@ -459,7 +461,7 @@ TimeStamp_Now() } return sGetTickCount64() * freq.QuadPart; @@ -23,3 +23,11 @@ $NetBSD: patch-ay,v 1.11 2015/01/29 22:22:27 wiz Exp $ return mach_absolute_time(); #elif defined(HAVE_CLOCK_MONOTONIC) struct timespec ts; +@@ -606,6 +608,7 @@ int main(int argc, char* argv[]) + TriggerQuirks(); + #endif + ++ setenv("MOZ_PLUGIN_PATH", "%%LOCALBASE%%/lib/browser_plugins/symlinks/gecko", 0); + int gotCounters; + #if defined(XP_UNIX) + struct rusage initialRUsage; diff --git a/mail/thunderbird/patches/patch-bi b/mail/thunderbird/patches/patch-bi deleted file mode 100644 index fecec586c50..00000000000 --- a/mail/thunderbird/patches/patch-bi +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-bi,v 1.5 2012/11/23 07:17:54 ryoon Exp $ - ---- mozilla/gfx/angle/src/compiler/osinclude.h.orig 2012-11-19 22:42:19.000000000 +0000 -+++ mozilla/gfx/angle/src/compiler/osinclude.h -@@ -16,6 +16,7 @@ - #define ANGLE_OS_WIN - #elif defined(__APPLE__) || defined(__linux__) || \ - defined(__FreeBSD__) || defined(__OpenBSD__) || \ -+ defined(__NetBSD__) || defined(__DragonFly__) || \ - defined(__sun) || defined(ANDROID) || \ - defined(__GLIBC__) || defined(__GNU__) || \ - defined(__QNX__) diff --git a/mail/thunderbird/patches/patch-calendar_lightning_Makefile.in b/mail/thunderbird/patches/patch-calendar_lightning_Makefile.in index bb9a4ff5e23..c3727e7c178 100644 --- a/mail/thunderbird/patches/patch-calendar_lightning_Makefile.in +++ b/mail/thunderbird/patches/patch-calendar_lightning_Makefile.in @@ -1,11 +1,11 @@ -$NetBSD: patch-calendar_lightning_Makefile.in,v 1.2 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-calendar_lightning_Makefile.in,v 1.3 2015/07/09 15:17:34 ryoon Exp $ ---- calendar/lightning/Makefile.in.orig 2014-07-18 00:04:05.000000000 +0000 +--- calendar/lightning/Makefile.in.orig 2015-06-08 17:40:38.000000000 +0000 +++ calendar/lightning/Makefile.in -@@ -13,7 +13,7 @@ include $(DEPTH)/config/autoconf.mk +@@ -6,7 +6,7 @@ # Lightning. - export USE_EXTENSION_MANIFEST = 1 + USE_EXTENSION_MANIFEST = 1 -XPI_PKGNAME = lightning-$(LIGHTNING_VERSION).$(AB_CD).$(MOZ_PKG_PLATFORM) +XPI_PKGNAME = lightning XPI_VERSION = $(LIGHTNING_VERSION) diff --git a/mail/thunderbird/patches/patch-calendar_providers_gdata_Makefile.in b/mail/thunderbird/patches/patch-calendar_providers_gdata_Makefile.in index 129e7c0c38d..bbdb82f0939 100644 --- a/mail/thunderbird/patches/patch-calendar_providers_gdata_Makefile.in +++ b/mail/thunderbird/patches/patch-calendar_providers_gdata_Makefile.in @@ -1,13 +1,13 @@ -$NetBSD: patch-calendar_providers_gdata_Makefile.in,v 1.2 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-calendar_providers_gdata_Makefile.in,v 1.3 2015/07/09 15:17:34 ryoon Exp $ ---- calendar/providers/gdata/Makefile.in.orig 2014-07-18 00:04:05.000000000 +0000 +--- calendar/providers/gdata/Makefile.in.orig 2015-06-08 17:40:38.000000000 +0000 +++ calendar/providers/gdata/Makefile.in -@@ -11,7 +11,7 @@ include $(DEPTH)/config/autoconf.mk +@@ -4,7 +4,7 @@ - export USE_EXTENSION_MANIFEST = 1 + USE_EXTENSION_MANIFEST = 1 DIST_FILES = install.rdf -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} diff --git a/mail/thunderbird/patches/patch-config_baseconfig.mk b/mail/thunderbird/patches/patch-config_baseconfig.mk deleted file mode 100644 index 793ad0a59b2..00000000000 --- a/mail/thunderbird/patches/patch-config_baseconfig.mk +++ /dev/null @@ -1,16 +0,0 @@ -$NetBSD: patch-config_baseconfig.mk,v 1.2 2014/07/27 20:04:59 ryoon Exp $ - ---- config/baseconfig.mk.orig 2014-07-18 00:04:05.000000000 +0000 -+++ config/baseconfig.mk -@@ -1,7 +1,7 @@ --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)-sdk - MOZILLA_SRCDIR = $(topsrcdir)/mozilla - MOZDEPTH = $(DEPTH)/mozilla - DIST = $(MOZDEPTH)/dist diff --git a/mail/thunderbird/patches/patch-ipc_chromium_src_base_debug__util__posic.cc b/mail/thunderbird/patches/patch-ipc_chromium_src_base_debug__util__posic.cc deleted file mode 100644 index b2ee8fd4bca..00000000000 --- a/mail/thunderbird/patches/patch-ipc_chromium_src_base_debug__util__posic.cc +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ipc_chromium_src_base_debug__util__posic.cc,v 1.7 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/ipc/chromium/src/base/debug_util_posix.cc.orig 2013-10-23 22:09:00.000000000 +0000 -+++ mozilla/ipc/chromium/src/base/debug_util_posix.cc -@@ -107,7 +107,7 @@ bool DebugUtil::BeingDebugged() { - return being_debugged; - } - --#elif defined(OS_LINUX) -+#elif defined(OS_LINUX) || defined(OS_SOLARIS) - - // We can look in /proc/self/status for TracerPid. We are likely used in crash - // handling, so we are careful not to use the heap or have side effects. diff --git a/mail/thunderbird/patches/patch-ipc_glue_GeckoChildProcessHost.cpp b/mail/thunderbird/patches/patch-ipc_glue_GeckoChildProcessHost.cpp index 1bdd8a71e39..7d47fe1c00c 100644 --- a/mail/thunderbird/patches/patch-ipc_glue_GeckoChildProcessHost.cpp +++ b/mail/thunderbird/patches/patch-ipc_glue_GeckoChildProcessHost.cpp @@ -1,6 +1,6 @@ -$NetBSD: patch-ipc_glue_GeckoChildProcessHost.cpp,v 1.6 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-ipc_glue_GeckoChildProcessHost.cpp,v 1.7 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/ipc/glue/GeckoChildProcessHost.cpp.orig 2014-07-18 00:05:24.000000000 +0000 +--- mozilla/ipc/glue/GeckoChildProcessHost.cpp.orig 2015-06-08 17:49:21.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 @@ -14,9 +14,9 @@ $NetBSD: patch-ipc_glue_GeckoChildProcessHost.cpp,v 1.6 2014/07/27 20:04:59 ryoo +_Pragma("GCC visibility pop") +#endif - #if defined(XP_WIN) && defined(MOZ_CONTENT_SANDBOX) - #include "sandboxBroker.h" -@@ -548,7 +554,7 @@ GeckoChildProcessHost::PerformAsyncLaunc + #include "base/command_line.h" + #include "base/string_util.h" +@@ -547,7 +553,7 @@ GeckoChildProcessHost::PerformAsyncLaunc // and passing wstrings from one config to the other is unsafe. So // we split the logic here. @@ -25,7 +25,7 @@ $NetBSD: patch-ipc_glue_GeckoChildProcessHost.cpp,v 1.6 2014/07/27 20:04:59 ryoo base::environment_map newEnvVars; ChildPrivileges privs = mPrivileges; if (privs == base::PRIVILEGES_DEFAULT) { -@@ -671,7 +677,7 @@ GeckoChildProcessHost::PerformAsyncLaunc +@@ -686,7 +692,7 @@ GeckoChildProcessHost::PerformAsyncLaunc childArgv.push_back(pidstring); #if defined(MOZ_CRASHREPORTER) @@ -34,7 +34,7 @@ $NetBSD: patch-ipc_glue_GeckoChildProcessHost.cpp,v 1.6 2014/07/27 20:04:59 ryoo int childCrashFd, childCrashRemapFd; if (!CrashReporter::CreateNotificationPipeForChild( &childCrashFd, &childCrashRemapFd)) -@@ -704,7 +710,7 @@ GeckoChildProcessHost::PerformAsyncLaunc +@@ -719,7 +725,7 @@ GeckoChildProcessHost::PerformAsyncLaunc childArgv.push_back(childProcessType); base::LaunchApp(childArgv, mFileMap, diff --git a/mail/thunderbird/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp b/mail/thunderbird/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp index c5f03eb70c6..3234b11c468 100644 --- a/mail/thunderbird/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp +++ b/mail/thunderbird/patches/patch-mail_components_shell_nsMailGNOMEIntegration.cpp @@ -1,16 +1,17 @@ -$NetBSD: patch-mail_components_shell_nsMailGNOMEIntegration.cpp,v 1.1 2014/08/10 12:52:08 abs Exp $ +$NetBSD: patch-mail_components_shell_nsMailGNOMEIntegration.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ Avoid warning storing a size_t in an unsigned int on LP64 ---- mail/components/shell/nsMailGNOMEIntegration.cpp.orig 2014-07-18 00:04:06.000000000 +0000 +--- mail/components/shell/nsMailGNOMEIntegration.cpp.orig 2015-06-08 17:40:38.000000000 +0000 +++ mail/components/shell/nsMailGNOMEIntegration.cpp -@@ -50,15 +50,15 @@ struct AppTypeAssociation { +@@ -50,16 +50,16 @@ struct AppTypeAssociation { static const AppTypeAssociation sAppTypes[] = { { - nsIShellService::MAIL, sMailProtocols, ArrayLength(sMailProtocols), + nsIShellService::MAIL, sMailProtocols, (unsigned int)ArrayLength(sMailProtocols), - "message/rfc822", "eml" + "message/rfc822", + nullptr // don't associate .eml extension, as that breaks printing those }, { - nsIShellService::NEWS, sNewsProtocols, ArrayLength(sNewsProtocols), diff --git a/mail/thunderbird/patches/patch-mail_installer_package-manifest.in b/mail/thunderbird/patches/patch-mail_installer_package-manifest.in index 0b7edb64f27..0500a30ede2 100644 --- a/mail/thunderbird/patches/patch-mail_installer_package-manifest.in +++ b/mail/thunderbird/patches/patch-mail_installer_package-manifest.in @@ -1,9 +1,9 @@ -$NetBSD: patch-mail_installer_package-manifest.in,v 1.1 2013/12/02 15:01:04 richard Exp $ +$NetBSD: patch-mail_installer_package-manifest.in,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mail/installer/package-manifest.in.orig 2013-11-18 16:43:05.000000000 +0000 +--- mail/installer/package-manifest.in.orig 2015-06-08 17:40:38.000000000 +0000 +++ mail/installer/package-manifest.in -@@ -673,7 +673,7 @@ - @BINPATH@/components/pippki.xpt +@@ -717,7 +717,7 @@ + #endif ; for Solaris SPARC -#ifdef SOLARIS diff --git a/mail/thunderbird/patches/patch-mail_installer_removed-files.in b/mail/thunderbird/patches/patch-mail_installer_removed-files.in index 5060fa45227..4fbb1a66b35 100644 --- a/mail/thunderbird/patches/patch-mail_installer_removed-files.in +++ b/mail/thunderbird/patches/patch-mail_installer_removed-files.in @@ -1,49 +1,47 @@ -$NetBSD: patch-mail_installer_removed-files.in,v 1.1 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mail_installer_removed-files.in,v 1.2 2015/07/09 15:17:34 ryoon Exp $ -* Fix make install, I am not sure... - ---- mail/installer/removed-files.in.orig 2013-10-23 22:00:46.000000000 +0000 +--- mail/installer/removed-files.in.orig 2015-06-08 17:40:38.000000000 +0000 +++ mail/installer/removed-files.in -@@ -181,42 +181,6 @@ greprefs/all.js - greprefs/security-prefs.js - greprefs/xpinstall.js - greprefs/ --hyphenation/ --hyphenation/hyph_af.dic --hyphenation/hyph_bg.dic --hyphenation/hyph_ca.dic --hyphenation/hyph_cy.dic --hyphenation/hyph_da.dic --hyphenation/hyph_de-1901.dic --hyphenation/hyph_de-1996.dic --hyphenation/hyph_de-CH.dic --hyphenation/hyph_en_US.dic --hyphenation/hyph_eo.dic --hyphenation/hyph_es.dic --hyphenation/hyph_et.dic --hyphenation/hyph_fi.dic --hyphenation/hyph_fr.dic --hyphenation/hyph_gl.dic --hyphenation/hyph_hr.dic --hyphenation/hyph_hsb.dic --hyphenation/hyph_hu.dic --hyphenation/hyph_ia.dic --hyphenation/hyph_is.dic --hyphenation/hyph_it.dic --hyphenation/hyph_kmr.dic --hyphenation/hyph_la.dic --hyphenation/hyph_lt.dic --hyphenation/hyph_mn.dic --hyphenation/hyph_nb.dic --hyphenation/hyph_nl.dic --hyphenation/hyph_nn.dic --hyphenation/hyph_pt.dic --hyphenation/hyph_ru.dic --hyphenation/hyph_sh.dic --hyphenation/hyph_sl.dic --hyphenation/hyph_sv.dic --hyphenation/hyph_tr.dic --hyphenation/hyph_uk.dic +@@ -198,42 +198,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_GTK2 icons/mozicon128.png diff --git a/mail/thunderbird/patches/patch-mk b/mail/thunderbird/patches/patch-mk index 5d9bdde871f..381831a8470 100644 --- a/mail/thunderbird/patches/patch-mk +++ b/mail/thunderbird/patches/patch-mk @@ -1,32 +1,14 @@ -$NetBSD: patch-mk,v 1.10 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mk,v 1.11 2015/07/09 15:17:34 ryoon Exp $ Treat DragonFly like FreeBSD. ---- mozilla/config/rules.mk.orig 2014-07-18 00:05:11.000000000 +0000 +--- mozilla/config/rules.mk.orig 2015-06-08 17:49:23.000000000 +0000 +++ mozilla/config/rules.mk -@@ -832,6 +832,7 @@ endif +@@ -761,6 +761,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) $(EXTRA_DEPS) $(GLOBAL_DEPS) -@@ -867,7 +868,7 @@ ifdef DTRACE_PROBE_OBJ - ifndef DTRACE_LIB_DEPENDENT - NON_DTRACE_OBJS := $(filter-out $(DTRACE_PROBE_OBJ),$(OBJS)) - $(DTRACE_PROBE_OBJ): $(NON_DTRACE_OBJS) -- dtrace -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(NON_DTRACE_OBJS) -+ dtrace -x nolibs -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(NON_DTRACE_OBJS) - endif - endif - endif -@@ -885,7 +886,7 @@ ifndef INCREMENTAL_LINKER - endif - ifdef DTRACE_LIB_DEPENDENT - ifndef XP_MACOSX -- dtrace -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(shell $(EXPAND_LIBS) $(MOZILLA_PROBE_LIBS)) -+ dtrace -x nolibs -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(shell $(EXPAND_LIBS) $(MOZILLA_PROBE_LIBS)) - endif - $(EXPAND_MKSHLIB) $(SHLIB_LDSTARTFILE) $(OBJS) $(SUB_SHLOBJS) $(DTRACE_PROBE_OBJ) $(MOZILLA_PROBE_LIBS) $(RESFILE) $(LDFLAGS) $(WRAP_LDFLAGS) $(SHARED_LIBRARY_LIBS) $(EXTRA_DSO_LDOPTS) $(MOZ_GLUE_LDFLAGS) $(OS_LIBS) $(EXTRA_LIBS) $(DEF_FILE) $(SHLIB_LDENDFILE) $(if $(LIB_IS_C_ONLY),,$(STLPORT_LIBS)) - @$(RM) $(DTRACE_PROBE_OBJ) + $(filter %.$(LIB_SUFFIX),$(LIBRARY)): $(OBJS) $(STATIC_LIBS_DEPS) $(filter %.$(LIB_SUFFIX),$(EXTRA_LIBS)) $(EXTRA_DEPS) $(GLOBAL_DEPS) diff --git a/mail/thunderbird/patches/patch-ml b/mail/thunderbird/patches/patch-ml index f68ea2f886a..f0f052c6593 100644 --- a/mail/thunderbird/patches/patch-ml +++ b/mail/thunderbird/patches/patch-ml @@ -1,33 +1,16 @@ -$NetBSD: patch-ml,v 1.7 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-ml,v 1.8 2015/07/09 15:17:34 ryoon Exp $ Treat DragonFly like FreeBSD. ---- mozilla/js/src/Makefile.in.orig 2014-07-18 00:05:24.000000000 +0000 +--- mozilla/js/src/Makefile.in.orig 2015-06-08 17:49:55.000000000 +0000 +++ mozilla/js/src/Makefile.in -@@ -20,8 +20,6 @@ run_for_side_effects := $(shell echo 'MA - STATIC_LIBRARY_NAME = js_static - LIBS = $(NSPR_LIBS) +@@ -16,9 +16,6 @@ TOPLEVEL_BUILD := 1 + + run_for_side_effects := $(shell echo 'MAKE: $(MAKE)') -DIST_INSTALL = 1 +-NO_EXPAND_LIBS = 1 - - ifdef JS_STANDALONE - SHARED_LIBRARY_LIBS += $(call EXPAND_LIBNAME_PATH,mfbt,$(DEPTH)/mfbt) - endif -@@ -226,7 +224,7 @@ endif - ifdef MOZ_SHARED_ICU - EXTRA_DSO_LDOPTS += $(MOZ_ICU_LIBS) - else --SHARED_LIBRARY_LIBS += $(MOZ_ICU_LIBS) -+SHARED_LIBRARY_LIBS += $(filter-out -L% -l% -Wl%,$(MOZ_ICU_LIBS)) - endif - - # Prevent floating point errors caused by VC++ optimizations -@@ -350,7 +348,7 @@ endif - - ifdef HAVE_DTRACE - $(CURDIR)/javascript-trace.h: $(srcdir)/devtools/javascript-trace.d -- dtrace -h -s $(srcdir)/devtools/javascript-trace.d -o javascript-trace.h.in -+ dtrace -x nolibs -h -s $(srcdir)/devtools/javascript-trace.d -o javascript-trace.h.in - sed -e 's/if _DTRACE_VERSION/ifdef INCLUDE_MOZILLA_DTRACE/' \ - -e '/const/!s/char \*/const char */g' \ - javascript-trace.h.in > javascript-trace.h + ifdef JS_HAS_CTYPES + ifdef MOZ_NATIVE_FFI + LOCAL_INCLUDES = $(MOZ_FFI_CFLAGS) diff --git a/mail/thunderbird/patches/patch-mozilla_accessible_atk_Platform.cpp b/mail/thunderbird/patches/patch-mozilla_accessible_atk_Platform.cpp new file mode 100644 index 00000000000..13a4547b2b1 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_accessible_atk_Platform.cpp @@ -0,0 +1,98 @@ +$NetBSD: patch-mozilla_accessible_atk_Platform.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/accessible/atk/Platform.cpp.orig 2015-06-08 17:49:16.000000000 +0000 ++++ mozilla/accessible/atk/Platform.cpp +@@ -18,8 +18,9 @@ + #include <dbus/dbus.h> + #endif + #include <gtk/gtk.h> ++ + #if (MOZ_WIDGET_GTK == 3) +-#include <atk-bridge.h> ++extern "C" __attribute__((weak,visibility("default"))) int atk_bridge_adaptor_init(int*, char **[]); + #endif + + using namespace mozilla; +@@ -46,7 +47,6 @@ static gulong sToplevel_hide_hook = 0; + + GType g_atk_hyperlink_impl_type = G_TYPE_INVALID; + +-#if (MOZ_WIDGET_GTK == 2) + struct GnomeAccessibilityModule + { + const char *libName; +@@ -67,11 +67,13 @@ static GnomeAccessibilityModule sAtkBrid + "gnome_accessibility_module_shutdown", nullptr + }; + ++#if (MOZ_WIDGET_GTK == 2) + static GnomeAccessibilityModule sGail = { + "libgail.so", nullptr, + "gnome_accessibility_module_init", nullptr, + "gnome_accessibility_module_shutdown", nullptr + }; ++#endif + + static nsresult + LoadGtkModule(GnomeAccessibilityModule& aModule) +@@ -98,7 +100,11 @@ LoadGtkModule(GnomeAccessibilityModule& + else + subLen = loc2 - loc1; + nsAutoCString sub(Substring(libPath, loc1, subLen)); ++#if (MOZ_WIDGET_GTK == 2) + sub.AppendLiteral("/gtk-2.0/modules/"); ++#else ++ sub.AppendLiteral("/gtk-3.0/modules/"); ++#endif + sub.Append(aModule.libName); + aModule.lib = PR_LoadLibrary(sub.get()); + if (aModule.lib) +@@ -123,7 +129,6 @@ LoadGtkModule(GnomeAccessibilityModule& + } + return NS_OK; + } +-#endif // (MOZ_WIDGET_GTK == 2) + + void + a11y::PlatformInit() +@@ -175,14 +180,17 @@ a11y::PlatformInit() + + // Init atk-bridge now + PR_SetEnv("NO_AT_BRIDGE=0"); +-#if (MOZ_WIDGET_GTK == 2) +- rv = LoadGtkModule(sAtkBridge); +- if (NS_SUCCEEDED(rv)) { +- (*sAtkBridge.init)(); +- } +-#else +- atk_bridge_adaptor_init(nullptr, nullptr); ++#if (MOZ_WIDGET_GTK == 3) ++ if (atk_bridge_adaptor_init) { ++ atk_bridge_adaptor_init(nullptr, nullptr); ++ } else + #endif ++ { ++ nsresult rv = LoadGtkModule(sAtkBridge); ++ if (NS_SUCCEEDED(rv)) { ++ (*sAtkBridge.init)(); ++ } ++ } + + if (!sToplevel_event_hook_added) { + sToplevel_event_hook_added = true; +@@ -210,7 +218,6 @@ a11y::PlatformShutdown() + sToplevel_hide_hook); + } + +-#if (MOZ_WIDGET_GTK == 2) + if (sAtkBridge.lib) { + // Do not shutdown/unload atk-bridge, + // an exit function registered will take care of it +@@ -221,6 +228,7 @@ a11y::PlatformShutdown() + sAtkBridge.init = nullptr; + sAtkBridge.shutdown = nullptr; + } ++#if (MOZ_WIDGET_GTK == 2) + if (sGail.lib) { + // Do not shutdown gail because + // 1) Maybe it's not init-ed by us. e.g. GtkEmbed diff --git a/mail/thunderbird/patches/patch-mozilla_b2g_installer_package-manifest.in b/mail/thunderbird/patches/patch-mozilla_b2g_installer_package-manifest.in index 8da92e1e765..0e4b4b0d01a 100644 --- a/mail/thunderbird/patches/patch-mozilla_b2g_installer_package-manifest.in +++ b/mail/thunderbird/patches/patch-mozilla_b2g_installer_package-manifest.in @@ -1,10 +1,10 @@ -$NetBSD: patch-mozilla_b2g_installer_package-manifest.in,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_b2g_installer_package-manifest.in,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/b2g/installer/package-manifest.in.orig 2014-07-18 00:05:06.000000000 +0000 +--- mozilla/b2g/installer/package-manifest.in.orig 2015-06-08 17:49:17.000000000 +0000 +++ mozilla/b2g/installer/package-manifest.in -@@ -565,7 +565,7 @@ - @BINPATH@/components/MozKeyboard.js - @BINPATH@/components/InputMethod.manifest +@@ -638,7 +638,7 @@ + @BINPATH@/components/EngineeringModeAPI.js + @BINPATH@/components/EngineeringModeService.js -#ifdef MOZ_DEBUG +#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG) diff --git a/mail/thunderbird/patches/patch-mozilla_browser_app_profile_firefox.js b/mail/thunderbird/patches/patch-mozilla_browser_app_profile_firefox.js deleted file mode 100644 index 46e1c0d66db..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_browser_app_profile_firefox.js +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-mozilla_browser_app_profile_firefox.js,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/browser/app/profile/firefox.js.orig 2013-10-23 22:08:48.000000000 +0000 -+++ mozilla/browser/app/profile/firefox.js -@@ -354,6 +354,7 @@ pref("browser.search.log", false); - pref("browser.search.order.1", "chrome://browser-region/locale/region.properties"); - pref("browser.search.order.2", "chrome://browser-region/locale/region.properties"); - pref("browser.search.order.3", "chrome://browser-region/locale/region.properties"); -+pref("browser.search.order.4", "chrome://browser-region/locale/region.properties"); - - // search bar results always open in a new tab - pref("browser.search.openintab", false); diff --git a/mail/thunderbird/patches/patch-mozilla_browser_installer_package-manifest.in b/mail/thunderbird/patches/patch-mozilla_browser_installer_package-manifest.in index f1b10f2c3f5..d4aab71c4db 100644 --- a/mail/thunderbird/patches/patch-mozilla_browser_installer_package-manifest.in +++ b/mail/thunderbird/patches/patch-mozilla_browser_installer_package-manifest.in @@ -1,17 +1,17 @@ -$NetBSD: patch-mozilla_browser_installer_package-manifest.in,v 1.2 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_browser_installer_package-manifest.in,v 1.3 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/browser/installer/package-manifest.in.orig 2014-07-18 00:05:09.000000000 +0000 +--- mozilla/browser/installer/package-manifest.in.orig 2015-06-08 17:49:21.000000000 +0000 +++ mozilla/browser/installer/package-manifest.in -@@ -575,7 +575,7 @@ - @BINPATH@/components/MozKeyboard.js - @BINPATH@/components/InputMethod.manifest +@@ -618,7 +618,7 @@ + @RESPATH@/components/MozKeyboard.js + @RESPATH@/components/InputMethod.manifest -#ifdef MOZ_DEBUG +#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG) - @BINPATH@/components/TestInterfaceJS.js - @BINPATH@/components/TestInterfaceJS.manifest + @RESPATH@/components/TestInterfaceJS.js + @RESPATH@/components/TestInterfaceJS.manifest #endif -@@ -737,7 +737,7 @@ +@@ -800,7 +800,7 @@ #endif ; for Solaris SPARC diff --git a/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_chrome_browser-region_region.properties b/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_chrome_browser-region_region.properties deleted file mode 100644 index 9b757b9e89c..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_chrome_browser-region_region.properties +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-mozilla_browser_locales_en-US_chrome_browser-region_region.properties,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/browser/locales/en-US/chrome/browser-region/region.properties.orig 2013-10-23 22:08:49.000000000 +0000 -+++ mozilla/browser/locales/en-US/chrome/browser-region/region.properties -@@ -9,6 +9,7 @@ browser.search.defaultenginename=Google - browser.search.order.1=Google - browser.search.order.2=Yahoo - browser.search.order.3=Bing -+browser.search.order.4=DuckDuckGo - - # This is the default set of web based feed handlers shown in the reader - # selection UI diff --git a/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_searchplugins_duckduckgo.xml b/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_searchplugins_duckduckgo.xml deleted file mode 100644 index a69e42b3791..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_searchplugins_duckduckgo.xml +++ /dev/null @@ -1,16 +0,0 @@ -$NetBSD: patch-mozilla_browser_locales_en-US_searchplugins_duckduckgo.xml,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/browser/locales/en-US/searchplugins/duckduckgo.xml.orig 2013-11-11 22:24:13.000000000 +0000 -+++ mozilla/browser/locales/en-US/searchplugins/duckduckgo.xml -@@ -0,0 +1,11 @@ -+<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/"> -+<ShortName>DuckDuckGo</ShortName> -+<Description>We believe in better search and not tracking.</Description> -+<InputEncoding>UTF-8</InputEncoding> -+<Image height="16" width="16" type="image/x-icon">data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAANcNAADXDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyDsJmlk8pf6+v3s/v7+++zr/fcnIOyzJyDsgCcg7CYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnIOwBJyDscCcg7PZttJ7/7Pfs//////++xO7/S5GA/ycg7P8nIOz2JyDscCcg7AEAAAAAAAAAAAAAAAAnIOwBJyDstScg7P8nIOz/Y8p5/2fHZf9Yv0z/YcF2/1rBUv8nIOz/JyDs/ycg7P8nIOy1JyDsAQAAAAAAAAAAJyDscCcg7P8nIOz/JyDs/4jQoP/p9+n//////05X3v9LkYD/JyDs/ycg7P8nIOz/JyDs/ycg7HAAAAAAJyDsJicg7PYnIOz/JyDs/zUu7f/+/v////////////89N+7/JyDs/yUo7f8nIOz/JyDs/ycg7P8nIOz2JyDsJicg7IAnIOz/JyDs/ycg7P9hXPH////////////t/P//GIr2/wfD+/8Gyfz/DKv5/yM57/8nIOz/JyDs/ycg7H8nIOyzJyDs/ycg7P8nIOz/jov1////////////Otz9/w3G/P8cWfH/JSvt/ycg7P8nIOz/JyDs/ycg7P8nIOyzJyDs5icg7P8nIOz/JyDs/7u5+f///////////27l/v8E0v3/BNL9/wTQ/f8Oofn/IT7v/ycg7P8nIOz/JyDs5icg7OYnIOz/JyDs/ycg7P/p6P3/uWsC////////////5fr//6Po/f8Thfb/DKv5/w6f+f8nIOz/JyDs/ycg7OYnIOyzJyDs/ycg7P8nIOz/9/b+/////////////////7lrAv/V1Pv/JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOyzJyDsgCcg7P8nIOz/JyDs/8/N+///////////////////////iIX1/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDsfycg7CYnIOz2JyDs/ycg7P9FP+7/q6n4/+7u/f/n5v3/fXn0/yoj7P8nIOz/JyDs/ycg7P8nIOz/JyDs9icg7CYAAAAAJyDscCcg7P8nIOz/wsD6/+no/f/Y1/z/eHTz/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7HAAAAAAAAAAACcg7AEnIOy1JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7LUnIOwBAAAAAAAAAAAAAAAAJyDsAScg7HAnIOz2JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs9icg7HAnIOwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyDsJicg7IAnIOyzJyDs5icg7OYnIOyzJyDsgCcg7CYAAAAAAAAAAAAAAAAAAAAA+B8AAPAPAADAAwAAwAMAAIABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAACAAQAAwAMAAMADAADwDwAA+B8AAA==</Image> -+<Url type="text/html" method="GET" template="https://duckduckgo.com/"> -+<Param name="q" value="{searchTerms}"/> -+<Param name="t" value="freebsd"/> -+</Url> -+<SearchForm>https://duckduckgo.com/</SearchForm> -+</SearchPlugin> diff --git a/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_searchplugins_list.txt b/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_searchplugins_list.txt deleted file mode 100644 index 9c106e8f46d..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_browser_locales_en-US_searchplugins_list.txt +++ /dev/null @@ -1,11 +0,0 @@ -$NetBSD: patch-mozilla_browser_locales_en-US_searchplugins_list.txt,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/browser/locales/en-US/searchplugins/list.txt.orig 2013-10-23 22:08:49.000000000 +0000 -+++ mozilla/browser/locales/en-US/searchplugins/list.txt -@@ -1,5 +1,6 @@ - amazondotcom - bing -+duckduckgo - eBay - google - twitter diff --git a/mail/thunderbird/patches/patch-mozilla_build_autoconf_nss.m4 b/mail/thunderbird/patches/patch-mozilla_build_autoconf_nss.m4 index 7b85f178478..d6d8751e4df 100644 --- a/mail/thunderbird/patches/patch-mozilla_build_autoconf_nss.m4 +++ b/mail/thunderbird/patches/patch-mozilla_build_autoconf_nss.m4 @@ -1,6 +1,6 @@ -$NetBSD: patch-mozilla_build_autoconf_nss.m4,v 1.3 2012/09/02 06:43:41 ryoon Exp $ +$NetBSD: patch-mozilla_build_autoconf_nss.m4,v 1.4 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/build/autoconf/nss.m4.orig 2012-08-25 00:30:58.000000000 +0000 +--- mozilla/build/autoconf/nss.m4.orig 2015-06-08 17:49:22.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 @@ -35,12 +35,12 @@ $NetBSD: patch-mozilla_build_autoconf_nss.m4,v 1.3 2012/09/02 06:43:41 ryoon Exp - 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]]*\)/\1/'` + 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]]*\)/\2/'` + 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]]*\)/\3/'` - min_nss_major_version=`echo $min_nss_version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\(\.\([[0-9]]*\)\)\{0,1\}/\4/'` + if test -z "$nss_config_micro_version"; then + nss_config_micro_version="0" diff --git a/mail/thunderbird/patches/patch-mozilla_build_gyp.mozbuild b/mail/thunderbird/patches/patch-mozilla_build_gyp.mozbuild index 5eb20af69d1..3ba9f681e1c 100644 --- a/mail/thunderbird/patches/patch-mozilla_build_gyp.mozbuild +++ b/mail/thunderbird/patches/patch-mozilla_build_gyp.mozbuild @@ -1,6 +1,6 @@ -$NetBSD: patch-mozilla_build_gyp.mozbuild,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_build_gyp.mozbuild,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/build/gyp.mozbuild.orig 2014-07-18 00:05:10.000000000 +0000 +--- mozilla/build/gyp.mozbuild.orig 2015-06-08 17:49:22.000000000 +0000 +++ mozilla/build/gyp.mozbuild @@ -12,6 +12,7 @@ gyp_vars = { 'have_ethtool_cmd_speed_hi': 1 if CONFIG['MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI'] else 0, @@ -10,3 +10,24 @@ $NetBSD: patch-mozilla_build_gyp.mozbuild,v 1.1 2014/07/27 20:04:59 ryoon Exp $ # basic stuff for everything 'include_internal_video_render': 0, 'clang_use_chrome_plugins': 0, +@@ -87,7 +88,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', +@@ -122,5 +123,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'] diff --git a/mail/thunderbird/patches/patch-mozilla_config_Makefile.in b/mail/thunderbird/patches/patch-mozilla_config_Makefile.in index 6427a9c1087..8fdbde89569 100644 --- a/mail/thunderbird/patches/patch-mozilla_config_Makefile.in +++ b/mail/thunderbird/patches/patch-mozilla_config_Makefile.in @@ -1,8 +1,8 @@ -$NetBSD: patch-mozilla_config_Makefile.in,v 1.2 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_config_Makefile.in,v 1.3 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/config/Makefile.in.orig 2014-07-18 00:05:10.000000000 +0000 +--- mozilla/config/Makefile.in.orig 2015-06-08 17:49:23.000000000 +0000 +++ mozilla/config/Makefile.in -@@ -77,6 +77,15 @@ export:: $(export-preqs) +@@ -77,6 +77,16 @@ export:: $(export-preqs) -DMOZ_NATIVE_LIBEVENT=$(MOZ_NATIVE_LIBEVENT) \ -DMOZ_NATIVE_LIBVPX=$(MOZ_NATIVE_LIBVPX) \ -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \ @@ -12,6 +12,7 @@ $NetBSD: patch-mozilla_config_Makefile.in,v 1.2 2014/07/27 20:04:59 ryoon Exp $ + -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) \ diff --git a/mail/thunderbird/patches/patch-mozilla_config_external_moz.build b/mail/thunderbird/patches/patch-mozilla_config_external_moz.build index 09079993df6..957b74db1c7 100644 --- a/mail/thunderbird/patches/patch-mozilla_config_external_moz.build +++ b/mail/thunderbird/patches/patch-mozilla_config_external_moz.build @@ -1,15 +1,18 @@ -$NetBSD: patch-mozilla_config_external_moz.build,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_config_external_moz.build,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/config/external/moz.build.orig 2014-07-18 00:05:11.000000000 +0000 +--- mozilla/config/external/moz.build.orig 2015-06-08 17:49:23.000000000 +0000 +++ mozilla/config/external/moz.build -@@ -15,13 +15,19 @@ if CONFIG['MOZ_UPDATER']: - if not CONFIG['MOZ_NATIVE_BZ2']: - external_dirs += ['modules/libbz2'] +@@ -19,10 +19,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'] + @@ -20,12 +23,8 @@ $NetBSD: patch-mozilla_config_external_moz.build,v 1.1 2014/07/27 20:04:59 ryoon +if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_NATIVE_TREMOR']: external_dirs += ['media/libtremor'] --if CONFIG['MOZ_OPUS']: -+if CONFIG['MOZ_OPUS'] and not CONFIG['MOZ_NATIVE_OPUS']: - external_dirs += ['media/libopus'] - if CONFIG['MOZ_WEBM']: -@@ -36,13 +42,15 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ +@@ -37,15 +46,16 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ if not CONFIG['MOZ_NATIVE_PNG']: external_dirs += ['media/libpng'] @@ -39,9 +38,11 @@ $NetBSD: patch-mozilla_config_external_moz.build,v 1.1 2014/07/27 20:04:59 ryoon 'media/kiss_fft', 'media/libcubeb', - 'media/libogg', +- 'media/libopus', - 'media/libtheora', - 'media/libspeex_resampler', + 'media/libstagefright', - 'media/libsoundtouch', ] - PARALLEL_DIRS += ['../../' + i for i in external_dirs] + DIRS += ['../../' + i for i in external_dirs] diff --git a/mail/thunderbird/patches/patch-mozilla_config_system-headers b/mail/thunderbird/patches/patch-mozilla_config_system-headers index d2a31c2fa4e..7cc78b05a40 100644 --- a/mail/thunderbird/patches/patch-mozilla_config_system-headers +++ b/mail/thunderbird/patches/patch-mozilla_config_system-headers @@ -1,17 +1,37 @@ -$NetBSD: patch-mozilla_config_system-headers,v 1.4 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_config_system-headers,v 1.5 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/config/system-headers.orig 2014-07-18 00:05:11.000000000 +0000 +--- mozilla/config/system-headers.orig 2015-06-08 17:49:23.000000000 +0000 +++ mozilla/config/system-headers -@@ -1048,8 +1048,6 @@ X11/Xlocale.h +@@ -189,7 +189,6 @@ asm/signal.h + ASRegistry.h + assert.h + atk/atk.h +-atk-bridge.h + atlcom.h + atlconv.h + atlctl.cpp +@@ -636,6 +635,7 @@ libgnomevfs/gnome-vfs-mime-handlers.h + libgnomevfs/gnome-vfs-mime-utils.h + libgnomevfs/gnome-vfs-ops.h + libgnomevfs/gnome-vfs-standard-callbacks.h ++libv4l2.h + lib$routines.h + limits + limits.h +@@ -1266,7 +1266,6 @@ X11/Xlocale.h X11/Xos.h X11/Xutil.h zmouse.h --speex/speex_resampler.h -soundtouch/SoundTouch.h #if MOZ_NATIVE_PNG==1 png.h #endif -@@ -1117,6 +1115,8 @@ ogg/ogg.h +@@ -1328,10 +1327,13 @@ 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 @@ -20,7 +40,7 @@ $NetBSD: patch-mozilla_config_system-headers,v 1.4 2014/07/27 20:04:59 ryoon Exp #endif gst/gst.h gst/app/gstappsink.h -@@ -1145,3 +1145,37 @@ unicode/utypes.h +@@ -1360,3 +1362,43 @@ unicode/utypes.h #endif libutil.h unwind.h @@ -46,6 +66,12 @@ $NetBSD: patch-mozilla_config_system-headers,v 1.4 2014/07/27 20:04:59 ryoon Exp +#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 diff --git a/mail/thunderbird/patches/patch-mozilla_content_base_src_moz.build b/mail/thunderbird/patches/patch-mozilla_content_base_src_moz.build deleted file mode 100644 index 15fd46eee29..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_content_base_src_moz.build +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-mozilla_content_base_src_moz.build,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/content/base/src/moz.build.orig 2014-07-18 00:05:11.000000000 +0000 -+++ mozilla/content/base/src/moz.build -@@ -181,6 +181,9 @@ SOURCES += [ - 'nsObjectLoadingContent.cpp', - ] - -+if CONFIG['MOZ_NATIVE_HARFBUZZ']: -+ SOURCES['nsContentUtils.cpp'].flags += [CONFIG['MOZ_HARFBUZZ_CFLAGS']] -+ - EXTRA_COMPONENTS += [ - 'contentAreaDropListener.js', - 'contentAreaDropListener.manifest', diff --git a/mail/thunderbird/patches/patch-mozilla_content_media_AudioStream.cpp b/mail/thunderbird/patches/patch-mozilla_content_media_AudioStream.cpp deleted file mode 100644 index e54185fcb19..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_content_media_AudioStream.cpp +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-mozilla_content_media_AudioStream.cpp,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/content/media/AudioStream.cpp.orig 2014-07-18 00:05:12.000000000 +0000 -+++ mozilla/content/media/AudioStream.cpp -@@ -13,7 +13,6 @@ - #include "mozilla/Mutex.h" - #include <algorithm> - #include "mozilla/Preferences.h" --#include "soundtouch/SoundTouch.h" - #include "Latency.h" - - namespace mozilla { diff --git a/mail/thunderbird/patches/patch-mozilla_content_media_AudioStream.h b/mail/thunderbird/patches/patch-mozilla_content_media_AudioStream.h deleted file mode 100644 index 9a76637b85a..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_content_media_AudioStream.h +++ /dev/null @@ -1,23 +0,0 @@ -$NetBSD: patch-mozilla_content_media_AudioStream.h,v 1.2 2014/08/13 22:36:04 joerg Exp $ - ---- mozilla/content/media/AudioStream.h.orig 2014-07-18 00:05:12.000000000 +0000 -+++ mozilla/content/media/AudioStream.h -@@ -17,6 +17,7 @@ - #include "mozilla/RefPtr.h" - - #include "cubeb/cubeb.h" -+#include "soundtouch/SoundTouch.h" - - template <> - class nsAutoRefTraits<cubeb_stream> : public nsPointerRefTraits<cubeb_stream> -@@ -25,10 +26,6 @@ public: - static void Release(cubeb_stream* aStream) { cubeb_stream_destroy(aStream); } - }; - --namespace soundtouch { --class SoundTouch; --} -- - namespace mozilla { - - class AudioStream; diff --git a/mail/thunderbird/patches/patch-mozilla_content_media_Makefile.in b/mail/thunderbird/patches/patch-mozilla_content_media_Makefile.in deleted file mode 100644 index 523ca37cb2e..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_content_media_Makefile.in +++ /dev/null @@ -1,36 +0,0 @@ -$NetBSD: patch-mozilla_content_media_Makefile.in,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/content/media/Makefile.in.orig 2014-07-18 00:05:12.000000000 +0000 -+++ mozilla/content/media/Makefile.in -@@ -6,3 +6,31 @@ include $(topsrcdir)/config/rules.mk - - CFLAGS += $(GSTREAMER_CFLAGS) - CXXFLAGS += $(GSTREAMER_CFLAGS) -+ -+ifdef MOZ_NATIVE_OGG -+CXXFLAGS += $(MOZ_OGG_CFLAGS) -+endif -+ -+ifdef MOZ_NATIVE_THEORA -+CXXFLAGS += $(MOZ_THEORA_CFLAGS) -+endif -+ -+ifdef MOZ_NATIVE_VORBIS -+CXXFLAGS += $(MOZ_VORBIS_CFLAGS) -+endif -+ -+ifdef MOZ_NATIVE_TREMOR -+CXXFLAGS += $(MOZ_TREMOR_CFLAGS) -+endif -+ -+ifdef MOZ_NATIVE_OPUS -+CXXFLAGS += $(MOZ_OPUS_CFLAGS) -+endif -+ -+ifdef MOZ_NATIVE_SPEEX -+CXXFLAGS += $(MOZ_SPEEX_CFLAGS) -+endif -+ -+ifdef MOZ_NATIVE_SOUNDTOUCH -+CXXFLAGS += $(MOZ_SOUNDTOUCH_CFLAGS) -+endif diff --git a/mail/thunderbird/patches/patch-mozilla_content_media_MediaData.cpp b/mail/thunderbird/patches/patch-mozilla_content_media_MediaData.cpp deleted file mode 100644 index 420532c9d5f..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_content_media_MediaData.cpp +++ /dev/null @@ -1,24 +0,0 @@ -$NetBSD: patch-mozilla_content_media_MediaData.cpp,v 1.1 2014/11/30 10:25:50 markd Exp $ - -Fix build with gcc 4.9 -https://bugzilla.mozilla.org/show_bug.cgi?id=999496 - ---- mozilla/content/media/MediaData.cpp.orig 2014-07-18 00:05:12.000000000 +0000 -+++ mozilla/content/media/MediaData.cpp -@@ -38,6 +38,16 @@ AudioData::EnsureAudioBuffer() - } - } - -+size_t -+AudioData::SizeOfIncludingThis(MallocSizeOf aMallocSizeOf) const -+{ -+ size_t size = aMallocSizeOf(this) + aMallocSizeOf(mAudioData); -+ if (mAudioBuffer) { -+ size += mAudioBuffer->SizeOfIncludingThis(aMallocSizeOf); -+ } -+ return size; -+} -+ - static bool - ValidatePlane(const VideoData::YCbCrBuffer::Plane& aPlane) - { diff --git a/mail/thunderbird/patches/patch-mozilla_content_media_MediaData.h b/mail/thunderbird/patches/patch-mozilla_content_media_MediaData.h deleted file mode 100644 index 5c8575b0d10..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_content_media_MediaData.h +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-mozilla_content_media_MediaData.h,v 1.1 2014/11/30 10:25:50 markd Exp $ - -Fix build with gcc 4.9 -https://bugzilla.mozilla.org/show_bug.cgi?id=999496 - ---- mozilla/content/media/MediaData.h.orig 2014-07-18 00:05:12.000000000 +0000 -+++ mozilla/content/media/MediaData.h -@@ -80,13 +80,7 @@ public: - MOZ_COUNT_DTOR(AudioData); - } - -- size_t SizeOfIncludingThis(MallocSizeOf aMallocSizeOf) const { -- size_t size = aMallocSizeOf(this) + aMallocSizeOf(mAudioData); -- if (mAudioBuffer) { -- size += mAudioBuffer->SizeOfIncludingThis(aMallocSizeOf); -- } -- return size; -- } -+ size_t SizeOfIncludingThis(MallocSizeOf aMallocSizeOf) const; - - // If mAudioBuffer is null, creates it from mAudioData. - void EnsureAudioBuffer(); diff --git a/mail/thunderbird/patches/patch-mozilla_content_media_fmp4_demuxer_bit__reader.cc b/mail/thunderbird/patches/patch-mozilla_content_media_fmp4_demuxer_bit__reader.cc deleted file mode 100644 index 171a1dd3628..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_content_media_fmp4_demuxer_bit__reader.cc +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_content_media_fmp4_demuxer_bit__reader.cc,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/content/media/fmp4/demuxer/bit_reader.cc.orig 2014-07-18 00:05:12.000000000 +0000 -+++ mozilla/content/media/fmp4/demuxer/bit_reader.cc -@@ -9,7 +9,7 @@ namespace mp4_demuxer { - - BitReader::BitReader(const uint8_t* data, off_t size) - : data_(data), bytes_left_(size), num_remaining_bits_in_curr_byte_(0) { -- DCHECK(data_ != nullptr && bytes_left_ > 0); -+ DCHECK(data_ != 0 && bytes_left_ > 0); - - UpdateCurrByte(); - } diff --git a/mail/thunderbird/patches/patch-mozilla_dom_base_moz.build b/mail/thunderbird/patches/patch-mozilla_dom_base_moz.build new file mode 100644 index 00000000000..990e088950f --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_dom_base_moz.build @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_dom_base_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/dom/base/moz.build.orig 2015-06-08 17:49:24.000000000 +0000 ++++ mozilla/dom/base/moz.build +@@ -368,6 +368,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', diff --git a/mail/thunderbird/patches/patch-mozilla_dom_media_AudioStream.h b/mail/thunderbird/patches/patch-mozilla_dom_media_AudioStream.h new file mode 100644 index 00000000000..213d1b80ae6 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_dom_media_AudioStream.h @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_dom_media_AudioStream.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/dom/media/AudioStream.h.orig 2015-06-08 17:49:28.000000000 +0000 ++++ mozilla/dom/media/AudioStream.h +@@ -17,7 +17,7 @@ + #include "CubebUtils.h" + + namespace soundtouch { +-class SoundTouch; ++class MOZ_IMPORT_API SoundTouch; + } + + namespace mozilla { diff --git a/mail/thunderbird/patches/patch-mozilla_dom_media_gmp_GMPChild.cpp b/mail/thunderbird/patches/patch-mozilla_dom_media_gmp_GMPChild.cpp new file mode 100644 index 00000000000..fd1418cacfe --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_dom_media_gmp_GMPChild.cpp @@ -0,0 +1,30 @@ +$NetBSD: patch-mozilla_dom_media_gmp_GMPChild.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/dom/media/gmp/GMPChild.cpp.orig 2015-06-08 17:49:28.000000000 +0000 ++++ mozilla/dom/media/gmp/GMPChild.cpp +@@ -79,21 +79,14 @@ GetFileBase(const std::string& aPluginPa + } + #endif + +- nsCOMPtr<nsIFile> parent; +- rv = aFileBase->GetParent(getter_AddRefs(parent)); +- if (NS_FAILED(rv)) { +- return false; +- } +- +- nsAutoString parentLeafName; +- rv = parent->GetLeafName(parentLeafName); +- if (NS_FAILED(rv)) { ++ nsAutoString leafName; ++ if (NS_FAILED(aFileBase->GetLeafName(leafName))) { + return false; + } + +- aBaseName = Substring(parentLeafName, ++ aBaseName = Substring(leafName, + 4, +- parentLeafName.Length() - 1); ++ leafName.Length() - 1); + return true; + } + diff --git a/mail/thunderbird/patches/patch-mozilla_dom_media_gmp_GMPParent.cpp b/mail/thunderbird/patches/patch-mozilla_dom_media_gmp_GMPParent.cpp new file mode 100644 index 00000000000..3fd2eeffe43 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_dom_media_gmp_GMPParent.cpp @@ -0,0 +1,33 @@ +$NetBSD: patch-mozilla_dom_media_gmp_GMPParent.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/dom/media/gmp/GMPParent.cpp.orig 2015-06-08 17:49:28.000000000 +0000 ++++ mozilla/dom/media/gmp/GMPParent.cpp +@@ -100,23 +100,16 @@ GMPParent::Init(GeckoMediaPluginService + mService = aService; + mDirectory = aPluginDir; + +- // aPluginDir is <profile-dir>/<gmp-plugin-id>/<version> +- // where <gmp-plugin-id> should be gmp-gmpopenh264 +- nsCOMPtr<nsIFile> parent; +- nsresult rv = aPluginDir->GetParent(getter_AddRefs(parent)); +- if (NS_FAILED(rv)) { +- return rv; +- } +- nsAutoString parentLeafName; +- rv = parent->GetLeafName(parentLeafName); ++ nsAutoString leafname; ++ nsresult rv = aPluginDir->GetLeafName(leafname); + if (NS_FAILED(rv)) { + return rv; + } + LOGD(("%s::%s: %p for %s", __CLASS__, __FUNCTION__, this, +- NS_LossyConvertUTF16toASCII(parentLeafName).get())); ++ NS_LossyConvertUTF16toASCII(leafname).get())); + +- MOZ_ASSERT(parentLeafName.Length() > 4); +- mName = Substring(parentLeafName, 4); ++ MOZ_ASSERT(leafname.Length() > 4); ++ mName = Substring(leafname, 4); + + return ReadGMPMetaData(); + } diff --git a/mail/thunderbird/patches/patch-mozilla_content_media_gstreamer_GStreamerAllocator.cpp b/mail/thunderbird/patches/patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp index aa7c02dfb65..2f1d7d19634 100644 --- a/mail/thunderbird/patches/patch-mozilla_content_media_gstreamer_GStreamerAllocator.cpp +++ b/mail/thunderbird/patches/patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp @@ -1,7 +1,7 @@ -$NetBSD: patch-mozilla_content_media_gstreamer_GStreamerAllocator.cpp,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_dom_media_gstreamer_GStreamerAllocator.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/content/media/gstreamer/GStreamerAllocator.cpp.orig 2014-07-18 00:05:12.000000000 +0000 -+++ mozilla/content/media/gstreamer/GStreamerAllocator.cpp +--- mozilla/dom/media/gstreamer/GStreamerAllocator.cpp.orig 2015-06-08 17:49:28.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); diff --git a/mail/thunderbird/patches/patch-mozilla_dom_media_moz.build b/mail/thunderbird/patches/patch-mozilla_dom_media_moz.build new file mode 100644 index 00000000000..b892370bf92 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_dom_media_moz.build @@ -0,0 +1,32 @@ +$NetBSD: patch-mozilla_dom_media_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/dom/media/moz.build.orig 2015-06-08 17:49:28.000000000 +0000 ++++ mozilla/dom/media/moz.build +@@ -280,6 +280,27 @@ if CONFIG['ANDROID_VERSION'] > '15': + 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: diff --git a/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp b/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp index c1ac7e8b2c4..e284ac8ae1b 100644 --- a/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp +++ b/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp @@ -1,8 +1,8 @@ -$NetBSD: patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp,v 1.5 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp,v 1.6 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/dom/plugins/ipc/PluginModuleChild.cpp.orig 2013-10-23 22:08:54.000000000 +0000 +--- mozilla/dom/plugins/ipc/PluginModuleChild.cpp.orig 2015-06-08 17:49:29.000000000 +0000 +++ mozilla/dom/plugins/ipc/PluginModuleChild.cpp -@@ -203,7 +203,7 @@ PluginModuleChild::Init(const std::strin +@@ -325,7 +325,7 @@ PluginModuleChild::InitForChrome(const s // TODO: use PluginPRLibrary here @@ -11,21 +11,21 @@ $NetBSD: patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp,v 1.5 2013/11/12 20 mShutdownFunc = (NP_PLUGINSHUTDOWN) PR_FindFunctionSymbol(mLibrary, "NP_Shutdown"); -@@ -1834,7 +1834,7 @@ PluginModuleChild::AnswerNP_GetEntryPoin - PLUGIN_LOG_DEBUG_METHOD; +@@ -1887,7 +1887,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); -@@ -1863,7 +1863,7 @@ PluginModuleChild::AnswerNP_Initialize(c - SendBackUpXResources(FileDescriptor(xSocketFd)); +@@ -1932,7 +1932,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) - *_retval = mInitializeFunc(&sBrowserFuncs, &mFunctions); - return true; + result = mInitializeFunc(&sBrowserFuncs, &mFunctions); #elif defined(OS_WIN) || defined(OS_MACOSX) + result = mInitializeFunc(&sBrowserFuncs); diff --git a/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp b/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp index b5e8d69cb5c..c0b0272f64a 100644 --- a/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp +++ b/mail/thunderbird/patches/patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp @@ -1,11 +1,11 @@ -$NetBSD: patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_dom_plugins_ipc_PluginProcessChild.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/dom/plugins/ipc/PluginProcessChild.cpp.orig 2014-07-18 00:05:16.000000000 +0000 +--- mozilla/dom/plugins/ipc/PluginProcessChild.cpp.orig 2015-06-08 17:49:29.000000000 +0000 +++ mozilla/dom/plugins/ipc/PluginProcessChild.cpp -@@ -42,7 +42,7 @@ namespace plugins { - bool - PluginProcessChild::Init() +@@ -56,7 +56,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 diff --git a/mail/thunderbird/patches/patch-mozilla_dom_system_OSFileConstants.cpp b/mail/thunderbird/patches/patch-mozilla_dom_system_OSFileConstants.cpp index 7c1bcc355b2..7471660d491 100644 --- a/mail/thunderbird/patches/patch-mozilla_dom_system_OSFileConstants.cpp +++ b/mail/thunderbird/patches/patch-mozilla_dom_system_OSFileConstants.cpp @@ -1,6 +1,6 @@ -$NetBSD: patch-mozilla_dom_system_OSFileConstants.cpp,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_dom_system_OSFileConstants.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/dom/system/OSFileConstants.cpp.orig 2014-07-18 00:05:16.000000000 +0000 +--- mozilla/dom/system/OSFileConstants.cpp.orig 2015-06-08 17:49:30.000000000 +0000 +++ mozilla/dom/system/OSFileConstants.cpp @@ -9,6 +9,10 @@ @@ -13,7 +13,17 @@ $NetBSD: patch-mozilla_dom_system_OSFileConstants.cpp,v 1.1 2014/07/27 20:04:59 #if defined(XP_UNIX) #include "unistd.h" #include "dirent.h" -@@ -26,9 +30,9 @@ +@@ -18,7 +22,9 @@ + #define statvfs statfs + #else + #include "sys/statvfs.h" ++#if !(defined(__NetBSD__) && (__NetBSD_Version__ < 600000000)) + #include <spawn.h> ++#endif // !NetBSD 5.* + #endif // defined(ANDROID) + #endif // defined(XP_UNIX) + +@@ -26,9 +32,9 @@ #include <linux/fadvise.h> #endif // defined(XP_LINUX) @@ -25,12 +35,12 @@ $NetBSD: patch-mozilla_dom_system_OSFileConstants.cpp,v 1.1 2014/07/27 20:04:59 #if defined(XP_WIN) #include <windows.h> -@@ -564,10 +568,10 @@ static const dom::ConstantSpec gLibcProp +@@ -588,10 +594,10 @@ static const dom::ConstantSpec gLibcProp // The size of |fsblkcnt_t|. { "OSFILE_SIZEOF_FSBLKCNT_T", INT_TO_JSVAL(sizeof (fsblkcnt_t)) }, -#if !defined(ANDROID) -+#if !defined(ANDROID) && (defined(__NetBSD_) && (__NetBSD_Version__ < 600000000)) ++#if !defined(ANDROID) && !(defined(__NetBSD__) && (__NetBSD_Version__ < 600000000)) // The size of |posix_spawn_file_actions_t|. { "OSFILE_SIZEOF_POSIX_SPAWN_FILE_ACTIONS_T", INT_TO_JSVAL(sizeof (posix_spawn_file_actions_t)) }, -#endif // !defined(ANDROID) @@ -38,7 +48,7 @@ $NetBSD: patch-mozilla_dom_system_OSFileConstants.cpp,v 1.1 2014/07/27 20:04:59 // Defining |dirent|. // Size -@@ -627,7 +631,7 @@ static const dom::ConstantSpec gLibcProp +@@ -660,7 +666,7 @@ static const dom::ConstantSpec gLibcProp { "OSFILE_SIZEOF_STATVFS", INT_TO_JSVAL(sizeof (struct statvfs)) }, diff --git a/mail/thunderbird/patches/patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp b/mail/thunderbird/patches/patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp index 69e34fe6b43..13d6ae7d2ee 100644 --- a/mail/thunderbird/patches/patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp +++ b/mail/thunderbird/patches/patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp @@ -1,16 +1,18 @@ -$NetBSD: patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp,v 1.1 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/extensions/spellcheck/hunspell/src/mozHunspell.cpp.orig 2013-10-23 22:08:56.000000000 +0000 +--- mozilla/extensions/spellcheck/hunspell/src/mozHunspell.cpp.orig 2015-06-08 17:49:33.000000000 +0000 +++ mozilla/extensions/spellcheck/hunspell/src/mozHunspell.cpp -@@ -417,6 +417,12 @@ mozHunspell::LoadDictionaryList() +@@ -400,6 +400,14 @@ mozHunspell::LoadDictionaryList(bool aNo } } + // load system hunspell dictionaries -+ nsIFile* hunDir; ++ nsCOMPtr<nsIFile> hunDir; + NS_NewNativeLocalFile(NS_LITERAL_CSTRING("@PREFIX@/share/hunspell"), -+ true, &hunDir); -+ LoadDictionariesFromDir(hunDir); ++ true, getter_AddRefs(hunDir)); ++ if (hunDir) { ++ LoadDictionariesFromDir(hunDir); ++ } + // find dictionaries from extensions requiring restart nsCOMPtr<nsISimpleEnumerator> dictDirs; diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_graphite2_moz-gr-update.sh b/mail/thunderbird/patches/patch-mozilla_gfx_graphite2_moz-gr-update.sh new file mode 100644 index 00000000000..b9ce16a977e --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_gfx_graphite2_moz-gr-update.sh @@ -0,0 +1,20 @@ +$NetBSD: patch-mozilla_gfx_graphite2_moz-gr-update.sh,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/gfx/graphite2/moz-gr-update.sh.orig 2015-06-08 17:49:34.000000000 +0000 ++++ mozilla/gfx/graphite2/moz-gr-update.sh +@@ -23,8 +23,14 @@ echo "\nSee" $0 "for update procedure.\n + find gfx/graphite2/ -name "*.cpp" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \; + find gfx/graphite2/ -name "*.h" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \; + ++# closest tag/release to require for system version ++TAG=$(cd ../graphitedev/ && hg parents --template {latesttag}) ++ ++perl -p -i -e "s/[0-9]+\,[0-9]+\,[0-9]+/$TAG/ and tr/./,/ \ ++ if /GR2_VERSION_REQUIRE/" configure.in ++ + # summarize what's been touched +-echo Updated to $CHANGESET. ++echo Updated to $CHANGESET \($TAG for --with-system-graphite2\) + echo Here is what changed in the gfx/graphite2 directory: + echo + diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_skia_Makefile.in b/mail/thunderbird/patches/patch-mozilla_gfx_skia_Makefile.in deleted file mode 100644 index d3421c366c5..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_gfx_skia_Makefile.in +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-mozilla_gfx_skia_Makefile.in,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/gfx/skia/Makefile.in.orig 2014-07-18 00:05:20.000000000 +0000 -+++ mozilla/gfx/skia/Makefile.in -@@ -15,6 +15,10 @@ ifeq (qt,$(MOZ_WIDGET_TOOLKIT)) - OS_CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(MOZ_PANGO_CFLAGS) $(CAIRO_FT_CFLAGS) - endif - -+ifdef MOZ_NATIVE_HARFBUZZ -+OS_CXXFLAGS += $(MOZ_HARFBUZZ_CFLAGS) -+endif -+ - include $(topsrcdir)/config/rules.mk - - ifeq ($(CPU_ARCH)_$(GNU_CC),arm_1) diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_skia_generate__mozbuild.py b/mail/thunderbird/patches/patch-mozilla_gfx_skia_generate__mozbuild.py new file mode 100644 index 00000000000..af8f434c61a --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_gfx_skia_generate__mozbuild.py @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_gfx_skia_generate__mozbuild.py,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/gfx/skia/generate_mozbuild.py.orig 2015-06-08 17:49:16.000000000 +0000 ++++ mozilla/gfx/skia/generate_mozbuild.py +@@ -142,6 +142,9 @@ if CONFIG['GNU_CXX']: + if not CONFIG['CLANG_CXX']: + CXXFLAGS += ['-Wno-logical-op'] + ++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'] diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_skia_moz.build b/mail/thunderbird/patches/patch-mozilla_gfx_skia_moz.build new file mode 100644 index 00000000000..bf7e148c3dc --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_gfx_skia_moz.build @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_gfx_skia_moz.build,v 1.3 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/gfx/skia/moz.build.orig 2015-06-08 17:49:16.000000000 +0000 ++++ mozilla/gfx/skia/moz.build +@@ -970,6 +970,9 @@ if CONFIG['GNU_CXX']: + if not CONFIG['CLANG_CXX']: + CXXFLAGS += ['-Wno-logical-op'] + ++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'] diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_thebes_Makefile.in b/mail/thunderbird/patches/patch-mozilla_gfx_thebes_Makefile.in deleted file mode 100644 index b089cd967f8..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_gfx_thebes_Makefile.in +++ /dev/null @@ -1,19 +0,0 @@ -$NetBSD: patch-mozilla_gfx_thebes_Makefile.in,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/gfx/thebes/Makefile.in.orig 2014-07-18 00:05:21.000000000 +0000 -+++ mozilla/gfx/thebes/Makefile.in -@@ -13,6 +13,14 @@ DEFINES := $(filter-out -DUNICODE,$(DEFI - CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(TK_CFLAGS) - CFLAGS += $(MOZ_CAIRO_CFLAGS) $(TK_CFLAGS) - -+ifdef MOZ_NATIVE_GRAPHITE2 -+CXXFLAGS += $(MOZ_GRAPHITE2_CFLAGS) -+endif -+ -+ifdef MOZ_NATIVE_HARFBUZZ -+CXXFLAGS += $(MOZ_HARFBUZZ_CFLAGS) -+endif -+ - ifeq ($(MOZ_WIDGET_TOOLKIT),android) - CXXFLAGS += $(CAIRO_FT_CFLAGS) - endif diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_thebes_moz.build b/mail/thunderbird/patches/patch-mozilla_gfx_thebes_moz.build new file mode 100644 index 00000000000..b16b992052f --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_gfx_thebes_moz.build @@ -0,0 +1,17 @@ +$NetBSD: patch-mozilla_gfx_thebes_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/gfx/thebes/moz.build.orig 2015-06-08 17:49:17.000000000 +0000 ++++ mozilla/gfx/thebes/moz.build +@@ -287,6 +287,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'] + diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_ycbcr_moz.build b/mail/thunderbird/patches/patch-mozilla_gfx_ycbcr_moz.build new file mode 100644 index 00000000000..e7e7ec1611d --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_gfx_ycbcr_moz.build @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_gfx_ycbcr_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/gfx/ycbcr/moz.build.orig 2015-06-08 17:49:17.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', diff --git a/mail/thunderbird/patches/patch-mozilla_gfx_ycbcr_yuv__row__arm.S b/mail/thunderbird/patches/patch-mozilla_gfx_ycbcr_yuv__row__arm.S new file mode 100644 index 00000000000..a47dc5f7685 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_gfx_ycbcr_yuv__row__arm.S @@ -0,0 +1,317 @@ +$NetBSD: patch-mozilla_gfx_ycbcr_yuv__row__arm.S,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/gfx/ycbcr/yuv_row_arm.S.orig 2015-07-06 19:52:50.000000000 +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 = <wFwEwDwCwBwAw9w8w7w6w5w4w3w2w1w0> ++ @ Q9 = <xFxExDxCxBxAx9x8x7x6x5x4x3x2x1x0> ++ 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 = <xEwExCwCxAwAx8w8x6w6x4w4x2w2x0w0> ++ VRSHRN.S32 D21,Q11,#9 ++ VDUP.I8 Q9, r12 ++ VRSHRN.S32 D22,Q12,#9 @ Q11 = <xFwFxDwDxBwBx9w9x7w7x5w5x3w3x1w1> ++ 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 = <wFwEwDwCwBwAw9w8w7w6w5w4w3w2w1w0> ++ @ Free ALU slot @ Q11 = <xFxExDxCxBxAx9x8x7x6x5x4x3x2x1x0> ++ 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 diff --git a/mail/thunderbird/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp b/mail/thunderbird/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp index 1256791bc34..b9c7a18fdf4 100644 --- a/mail/thunderbird/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp +++ b/mail/thunderbird/patches/patch-mozilla_image_decoders_nsJPEGDecoder.cpp @@ -1,15 +1,15 @@ -$NetBSD: patch-mozilla_image_decoders_nsJPEGDecoder.cpp,v 1.1 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_image_decoders_nsJPEGDecoder.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/image/decoders/nsJPEGDecoder.cpp.orig 2013-10-23 22:08:58.000000000 +0000 +--- mozilla/image/decoders/nsJPEGDecoder.cpp.orig 2015-06-08 17:49:17.000000000 +0000 +++ mozilla/image/decoders/nsJPEGDecoder.cpp -@@ -19,13 +19,28 @@ +@@ -23,13 +23,28 @@ extern "C" { #include "iccjpeg.h" -} +#ifdef JCS_EXTENSIONS - #if defined(IS_BIG_ENDIAN) + #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 @@ -32,26 +32,26 @@ $NetBSD: patch-mozilla_image_decoders_nsJPEGDecoder.cpp,v 1.1 2013/11/12 20:50:5 static void cmyk_convert_rgb(JSAMPROW row, JDIMENSION width); -@@ -338,6 +353,7 @@ nsJPEGDecoder::WriteInternal(const char - case JCS_GRAYSCALE: - case JCS_RGB: - case JCS_YCbCr: +@@ -373,6 +388,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) { -@@ -346,6 +362,9 @@ nsJPEGDecoder::WriteInternal(const char - } else { - mInfo.out_color_space = JCS_RGB; - } + // if we're not color managing we can decode directly to + // MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB + if (mCMSMode != eCMSMode_All) { +@@ -381,6 +397,9 @@ nsJPEGDecoder::WriteInternal(const char* + } else { + mInfo.out_color_space = JCS_RGB; + } +#else -+ mInfo.out_color_space = JCS_RGB; ++ mInfo.out_color_space = JCS_RGB; +#endif - break; - case JCS_CMYK: - case JCS_YCCK: -@@ -407,6 +426,15 @@ nsJPEGDecoder::WriteInternal(const char - return; /* I/O suspension */ + break; + case JCS_CMYK: + case JCS_YCCK: +@@ -450,6 +469,15 @@ nsJPEGDecoder::WriteInternal(const char* + return; // I/O suspension } +#ifndef JCS_EXTENSIONS @@ -64,21 +64,21 @@ $NetBSD: patch-mozilla_image_decoders_nsJPEGDecoder.cpp,v 1.1 2013/11/12 20:50:5 + } +#endif - /* If this is a progressive JPEG ... */ - mState = mInfo.buffered_image ? JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL; -@@ -552,7 +580,11 @@ nsJPEGDecoder::OutputScanlines(bool* sus - uint32_t *imageRow = ((uint32_t*)mImageData) + - (mInfo.output_scanline * mInfo.output_width); + // If this is a progressive JPEG ... + mState = mInfo.buffered_image ? +@@ -632,7 +660,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 */ + // Special case: scanline will be directly converted into packed ARGB if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) { - *suspend = true; /* suspend */ -@@ -862,6 +894,282 @@ term_source (j_decompress_ptr jd) + *suspend = true; // suspend +@@ -959,6 +991,282 @@ term_source (j_decompress_ptr jd) } // namespace mozilla @@ -358,6 +358,6 @@ $NetBSD: patch-mozilla_image_decoders_nsJPEGDecoder.cpp,v 1.1 2013/11/12 20:50:5 +#endif + + - /**************** Inverted CMYK -> RGB conversion **************/ - /* - * Input is (Inverted) CMYK stored as 4 bytes per pixel. + ///*************** Inverted CMYK -> RGB conversion ************************* + /// Input is (Inverted) CMYK stored as 4 bytes per pixel. + /// Output is RGB stored as 3 bytes per pixel. diff --git a/mail/thunderbird/patches/patch-mozilla_intl_hyphenation_hnjalloc.h b/mail/thunderbird/patches/patch-mozilla_intl_hyphenation_hnjalloc.h new file mode 100644 index 00000000000..ad07b89f345 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_intl_hyphenation_hnjalloc.h @@ -0,0 +1,14 @@ +$NetBSD: patch-mozilla_intl_hyphenation_hnjalloc.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/intl/hyphenation/hnjalloc.h.orig 2015-06-08 17:49:18.000000000 +0000 ++++ mozilla/intl/hyphenation/hnjalloc.h +@@ -24,6 +24,9 @@ + */ + + #include <stdio.h> /* ensure stdio.h is loaded before our macros */ ++#ifdef __sun ++#include <wchar.h> ++#endif + + #undef FILE + #define FILE hnjFile diff --git a/mail/thunderbird/patches/patch-mozilla_intl_hyphenation_src_hnjalloc.h b/mail/thunderbird/patches/patch-mozilla_intl_hyphenation_src_hnjalloc.h deleted file mode 100644 index 540662d36b2..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_intl_hyphenation_src_hnjalloc.h +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-mozilla_intl_hyphenation_src_hnjalloc.h,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/intl/hyphenation/src/hnjalloc.h.orig 2013-10-23 22:08:58.000000000 +0000 -+++ mozilla/intl/hyphenation/src/hnjalloc.h -@@ -24,6 +24,9 @@ - */ - - #include <stdio.h> /* ensure stdio.h is loaded before our macros */ -+#ifdef __sun -+#include <wchar.h> -+#endif - - #undef FILE - #define FILE hnjFile diff --git a/mail/thunderbird/patches/patch-mozilla_intl_unicharutil_util_Makefile.in b/mail/thunderbird/patches/patch-mozilla_intl_unicharutil_util_Makefile.in deleted file mode 100644 index 2fb13d19973..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_intl_unicharutil_util_Makefile.in +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-mozilla_intl_unicharutil_util_Makefile.in,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/intl/unicharutil/util/Makefile.in.orig 2014-07-18 00:05:24.000000000 +0000 -+++ mozilla/intl/unicharutil/util/Makefile.in -@@ -21,3 +21,7 @@ ifdef _MSC_VER - OS_COMPILE_CXXFLAGS += -Zl - OS_COMPILE_CFLAGS += -Zl - endif -+ -+ifdef MOZ_NATIVE_HARFBUZZ -+CXXFLAGS += $(MOZ_HARFBUZZ_CFLAGS) -+endif diff --git a/mail/thunderbird/patches/patch-mozilla_intl_unicharutil_util_moz.build b/mail/thunderbird/patches/patch-mozilla_intl_unicharutil_util_moz.build new file mode 100644 index 00000000000..0fb4c23a907 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_intl_unicharutil_util_moz.build @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_intl_unicharutil_util_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/intl/unicharutil/util/moz.build.orig 2015-06-08 17:49:21.000000000 +0000 ++++ mozilla/intl/unicharutil/util/moz.build +@@ -38,5 +38,8 @@ if CONFIG['_MSC_VER']: + if CONFIG['ENABLE_INTL_API']: + CXXFLAGS += CONFIG['MOZ_ICU_CFLAGS'] + ++if CONFIG['MOZ_NATIVE_HARFBUZZ']: ++ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ + if CONFIG['GNU_CXX']: + FAIL_ON_WARNINGS = True diff --git a/mail/thunderbird/patches/patch-mozilla_ios b/mail/thunderbird/patches/patch-mozilla_ios deleted file mode 100644 index ed5b21233bf..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_ios +++ /dev/null @@ -1,8 +0,0 @@ -$NetBSD: patch-mozilla_ios,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/ios.orig 2014-07-27 06:20:09.000000000 +0000 -+++ mozilla/ios -@@ -0,0 +1,3 @@ -+#pragma GCC visibility push(default) -+#include_next <ios> -+#pragma GCC visibility pop diff --git a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_atomicops.h b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_atomicops.h new file mode 100644 index 00000000000..20977021638 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_atomicops.h @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_ipc_chromium_src_base_atomicops.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/ipc/chromium/src/base/atomicops.h.orig 2015-06-08 17:49:21.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 diff --git a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_base__paths.h b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_base__paths.h deleted file mode 100644 index 675c8624c06..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_base__paths.h +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_ipc_chromium_src_base_base__paths.h,v 1.4 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/ipc/chromium/src/base/base_paths.h.orig 2013-10-23 22:09:00.000000000 +0000 -+++ mozilla/ipc/chromium/src/base/base_paths.h -@@ -13,7 +13,7 @@ - #include "base/base_paths_win.h" - #elif defined(OS_MACOSX) - #include "base/base_paths_mac.h" --#elif defined(OS_LINUX) || defined(OS_BSD) -+#elif defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) - #include "base/base_paths_linux.h" - #endif - #include "base/path_service.h" diff --git a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc deleted file mode 100644 index c3711424ff8..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/ipc/chromium/src/base/message_pump_libevent.cc.orig 2013-10-23 22:09:00.000000000 +0000 -+++ mozilla/ipc/chromium/src/base/message_pump_libevent.cc -@@ -16,7 +16,7 @@ - #include "base/scoped_ptr.h" - #include "base/time.h" - #include "nsDependentSubstring.h" --#include "third_party/libevent/event.h" -+#include "event.h" - - // Lifecycle of struct event - // Libevent uses two main data structures: diff --git a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util.h b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util.h index 6faf07a9973..6800056f877 100644 --- a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util.h +++ b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util.h @@ -1,17 +1,8 @@ -$NetBSD: patch-mozilla_ipc_chromium_src_base_process__util.h,v 1.5 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_ipc_chromium_src_base_process__util.h,v 1.6 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/ipc/chromium/src/base/process_util.h.orig 2013-10-23 22:09:00.000000000 +0000 +--- mozilla/ipc/chromium/src/base/process_util.h.orig 2015-06-08 17:49:21.000000000 +0000 +++ mozilla/ipc/chromium/src/base/process_util.h -@@ -13,7 +13,7 @@ - #if defined(OS_WIN) - #include <windows.h> - #include <tlhelp32.h> --#elif defined(OS_LINUX) || defined(__GLIBC__) -+#elif defined(OS_LINUX) || defined(__GLIBC__) || defined(OS_SOLARIS) - #include <dirent.h> - #include <limits.h> - #include <sys/types.h> -@@ -32,6 +32,9 @@ +@@ -41,6 +41,9 @@ typedef PROCESSENTRY32 ProcessEntry; typedef IO_COUNTERS IoCounters; #elif defined(OS_POSIX) @@ -21,12 +12,3 @@ $NetBSD: patch-mozilla_ipc_chromium_src_base_process__util.h,v 1.5 2013/11/12 20 // TODO(port): we should not rely on a Win32 structure. struct ProcessEntry { int pid; -@@ -316,7 +319,7 @@ class NamedProcessIterator { - #if defined(OS_WIN) - HANDLE snapshot_; - bool started_iteration_; --#elif defined(OS_LINUX) || defined(__GLIBC__) -+#elif defined(OS_LINUX) || defined(__GLIBC__) || defined(OS_SOLARIS) - DIR *procfs_dir_; - #elif defined(OS_BSD) - std::vector<ProcessEntry> content; diff --git a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc index aed0ff671b0..375f98607f8 100644 --- a/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc +++ b/mail/thunderbird/patches/patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc @@ -1,163 +1,14 @@ -$NetBSD: patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc,v 1.8 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_ipc_chromium_src_base_process__util__bsd.cc,v 1.9 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/ipc/chromium/src/base/process_util_bsd.cc.orig 2014-07-18 00:05:24.000000000 +0000 +--- mozilla/ipc/chromium/src/base/process_util_bsd.cc.orig 2015-06-08 17:49:21.000000000 +0000 +++ mozilla/ipc/chromium/src/base/process_util_bsd.cc -@@ -15,7 +15,9 @@ +@@ -9,6 +9,9 @@ + #include <sys/wait.h> - #include <ctype.h> #include <fcntl.h> +#if defined(OS_BSD) - #include <kvm.h> ++#include <kvm.h> +#endif #include <unistd.h> #include <string> -@@ -311,6 +313,141 @@ void SetCurrentProcessPrivileges(ChildPr - - #endif - -+#if defined(OS_MACOSX) -+NamedProcessIterator::NamedProcessIterator(const std::wstring& executable_name, -+ const ProcessFilter* filter) -+ : executable_name_(executable_name), -+ index_of_kinfo_proc_(0), -+ filter_(filter) { -+ // Get a snapshot of all of my processes (yes, as we loop it can go stale, but -+ // but trying to find where we were in a constantly changing list is basically -+ // impossible. -+ -+ int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_UID, int(geteuid()) }; -+ -+ // Since more processes could start between when we get the size and when -+ // we get the list, we do a loop to keep trying until we get it. -+ bool done = false; -+ int try_num = 1; -+ const int max_tries = 10; -+ do { -+ // Get the size of the buffer -+ size_t len = 0; -+ if (sysctl(mib, arraysize(mib), NULL, &len, NULL, 0) < 0) { -+ CHROMIUM_LOG(ERROR) << "failed to get the size needed for the process list"; -+ kinfo_procs_.resize(0); -+ done = true; -+ } else { -+ size_t num_of_kinfo_proc = len / sizeof(struct kinfo_proc); -+ // Leave some spare room for process table growth (more could show up -+ // between when we check and now) -+ num_of_kinfo_proc += 4; -+ kinfo_procs_.resize(num_of_kinfo_proc); -+ len = num_of_kinfo_proc * sizeof(struct kinfo_proc); -+ // Load the list of processes -+ if (sysctl(mib, arraysize(mib), &kinfo_procs_[0], &len, NULL, 0) < 0) { -+ // If we get a mem error, it just means we need a bigger buffer, so -+ // loop around again. Anything else is a real error and give up. -+ if (errno != ENOMEM) { -+ CHROMIUM_LOG(ERROR) << "failed to get the process list"; -+ kinfo_procs_.resize(0); -+ done = true; -+ } -+ } else { -+ // Got the list, just make sure we're sized exactly right -+ size_t num_of_kinfo_proc = len / sizeof(struct kinfo_proc); -+ kinfo_procs_.resize(num_of_kinfo_proc); -+ done = true; -+ } -+ } -+ } while (!done && (try_num++ < max_tries)); -+ -+ if (!done) { -+ CHROMIUM_LOG(ERROR) << "failed to collect the process list in a few tries"; -+ kinfo_procs_.resize(0); -+ } -+} -+ -+NamedProcessIterator::~NamedProcessIterator() { -+} -+ -+const ProcessEntry* NamedProcessIterator::NextProcessEntry() { -+ bool result = false; -+ do { -+ result = CheckForNextProcess(); -+ } while (result && !IncludeEntry()); -+ -+ if (result) { -+ return &entry_; -+ } -+ -+ return NULL; -+} -+ -+bool NamedProcessIterator::CheckForNextProcess() { -+ std::string executable_name_utf8(WideToUTF8(executable_name_)); -+ -+ std::string data; -+ std::string exec_name; -+ -+ for (; index_of_kinfo_proc_ < kinfo_procs_.size(); ++index_of_kinfo_proc_) { -+ kinfo_proc* kinfo = &kinfo_procs_[index_of_kinfo_proc_]; -+ -+ // Skip processes just awaiting collection -+ if ((kinfo->kp_proc.p_pid > 0) && (kinfo->kp_proc.p_stat == SZOMB)) -+ continue; -+ -+ int mib[] = { CTL_KERN, KERN_PROCARGS, kinfo->kp_proc.p_pid }; -+ -+ // Found out what size buffer we need -+ size_t data_len = 0; -+ if (sysctl(mib, arraysize(mib), NULL, &data_len, NULL, 0) < 0) { -+ CHROMIUM_LOG(ERROR) << "failed to figure out the buffer size for a commandline"; -+ continue; -+ } -+ -+ data.resize(data_len); -+ if (sysctl(mib, arraysize(mib), &data[0], &data_len, NULL, 0) < 0) { -+ CHROMIUM_LOG(ERROR) << "failed to fetch a commandline"; -+ continue; -+ } -+ -+ // Data starts w/ the full path null termed, so we have to extract just the -+ // executable name from the path. -+ -+ size_t exec_name_end = data.find('\0'); -+ if (exec_name_end == std::string::npos) { -+ CHROMIUM_LOG(ERROR) << "command line data didn't match expected format"; -+ continue; -+ } -+ size_t last_slash = data.rfind('/', exec_name_end); -+ if (last_slash == std::string::npos) -+ exec_name = data.substr(0, exec_name_end); -+ else -+ exec_name = data.substr(last_slash + 1, exec_name_end - last_slash - 1); -+ -+ // Check the name -+ if (executable_name_utf8 == exec_name) { -+ entry_.pid = kinfo->kp_proc.p_pid; -+ entry_.ppid = kinfo->kp_eproc.e_ppid; -+ base::strlcpy(entry_.szExeFile, exec_name.c_str(), -+ sizeof(entry_.szExeFile)); -+ // Start w/ the next entry next time through -+ ++index_of_kinfo_proc_; -+ // Done -+ return true; -+ } -+ } -+ return false; -+} -+ -+bool NamedProcessIterator::IncludeEntry() { -+ // Don't need to check the name, we did that w/in CheckForNextProcess. -+ if (!filter_) -+ return true; -+ return filter_->Includes(entry_.pid, entry_.ppid); -+} -+#else - NamedProcessIterator::NamedProcessIterator(const std::wstring& executable_name, - const ProcessFilter* filter) - { -@@ -370,5 +507,6 @@ const ProcessEntry* NamedProcessIterator - if (nextEntry >= content.size()) return NULL; - return &content[nextEntry++]; - } -+#endif - - } // namespace base diff --git a/mail/thunderbird/patches/patch-mozilla_ipc_glue_moz.build b/mail/thunderbird/patches/patch-mozilla_ipc_glue_moz.build new file mode 100644 index 00000000000..d138fd562b5 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_ipc_glue_moz.build @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_ipc_glue_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/ipc/glue/moz.build.orig 2015-06-08 17:49:21.000000000 +0000 ++++ mozilla/ipc/glue/moz.build +@@ -87,7 +87,7 @@ elif CONFIG['OS_ARCH'] in ('DragonFly', + UNIFIED_SOURCES += [ + 'ProcessUtils_bsd.cpp' + ] +-elif CONFIG['OS_ARCH'] in ('Darwin'): ++elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': + UNIFIED_SOURCES += [ + 'ProcessUtils_mac.mm' + ] diff --git a/mail/thunderbird/patches/patch-mozilla_js_public_CallArgs.h b/mail/thunderbird/patches/patch-mozilla_js_public_CallArgs.h new file mode 100644 index 00000000000..ddc728a9a21 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_public_CallArgs.h @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_public_CallArgs.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/public/CallArgs.h.orig 2015-06-08 17:49:21.000000000 +0000 ++++ mozilla/js/public/CallArgs.h +@@ -344,7 +344,7 @@ class MOZ_STACK_CLASS CallArgs : public + * Returns true if there are at least |required| arguments passed in. If + * false, it reports an error message on the context. + */ +- bool requireAtLeast(JSContext* cx, const char* fnname, unsigned required); ++ JS_PUBLIC_API(bool) requireAtLeast(JSContext* cx, const char* fnname, unsigned required); + + }; + diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_asmjs_AsmJSSignalHandlers.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_asmjs_AsmJSSignalHandlers.cpp new file mode 100644 index 00000000000..7621b180046 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_asmjs_AsmJSSignalHandlers.cpp @@ -0,0 +1,19 @@ +$NetBSD: patch-mozilla_js_src_asmjs_AsmJSSignalHandlers.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/asmjs/AsmJSSignalHandlers.cpp.orig 2015-06-08 17:49:21.000000000 +0000 ++++ mozilla/js/src/asmjs/AsmJSSignalHandlers.cpp +@@ -637,10 +637,11 @@ HandleMachException(JSRuntime* rt, const + mach_port_t rtThread = request.body.thread.name; + + // Read out the JSRuntime thread's register state. +- x86_thread_state_t state; +- unsigned int count = x86_THREAD_STATE_COUNT; ++ moz_platform_thread_state_t state; ++ thread_state_flavor_t flavor = MOZ_PLATFORM_THREAD_STATE_FLAVOR; ++ mach_msg_type_number_t count = MOZ_PLATFORM_THREAD_STATE_COUNT; + kern_return_t kret; +- kret = thread_get_state(rtThread, x86_THREAD_STATE, (thread_state_t)&state, &count); ++ kret = thread_get_state(rtThread, flavor, (thread_state_t)&state, &count); + if (kret != KERN_SUCCESS) + return false; + diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_builtin_TypedObject.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_builtin_TypedObject.cpp deleted file mode 100644 index db386654165..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_js_src_builtin_TypedObject.cpp +++ /dev/null @@ -1,142 +0,0 @@ -$NetBSD: patch-mozilla_js_src_builtin_TypedObject.cpp,v 1.3 2015/06/08 13:40:58 joerg Exp $ - ---- mozilla/js/src/builtin/TypedObject.cpp.orig 2015-05-07 18:53:49.000000000 +0000 -+++ mozilla/js/src/builtin/TypedObject.cpp -@@ -710,12 +710,12 @@ ArrayMetaTypeDescr::construct(JSContext* - contents.append(")"); - RootedAtom stringRepr(cx, contents.finishAtom()); - if (!stringRepr) -- return nullptr; -+ return false; - - // Extract ArrayType.prototype - RootedObject arrayTypePrototype(cx, GetPrototype(cx, arrayTypeGlobal)); - if (!arrayTypePrototype) -- return nullptr; -+ return false; - - // Create the instance of ArrayType - Rooted<UnsizedArrayTypeDescr*> obj(cx); -@@ -728,7 +728,7 @@ ArrayMetaTypeDescr::construct(JSContext* - if (!JSObject::defineProperty(cx, obj, cx->names().length, - UndefinedHandleValue, nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - args.rval().setObject(*obj); - return true; -@@ -762,7 +762,7 @@ UnsizedArrayTypeDescr::dimension(JSConte - if (!size.isValid()) { - JS_ReportErrorNumber(cx, js_GetErrorMessage, nullptr, - JSMSG_TYPEDOBJECT_TOO_BIG); -- return nullptr; -+ return false; - } - - // Construct a canonical string `new ArrayType(<elementType>).dimension(N)`: -@@ -775,7 +775,7 @@ UnsizedArrayTypeDescr::dimension(JSConte - contents.append(")"); - RootedAtom stringRepr(cx, contents.finishAtom()); - if (!stringRepr) -- return nullptr; -+ return false; - - // Create the sized type object. - Rooted<SizedArrayTypeDescr*> obj(cx); -@@ -793,7 +793,7 @@ UnsizedArrayTypeDescr::dimension(JSConte - if (!JSObject::defineProperty(cx, obj, cx->names().length, - lengthVal, nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - // Add `unsized` property, which is a link from the sized - // array to the unsized array. -@@ -801,7 +801,7 @@ UnsizedArrayTypeDescr::dimension(JSConte - if (!JSObject::defineProperty(cx, obj, cx->names().unsized, - unsizedTypeDescrValue, nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - args.rval().setObject(*obj); - return true; -@@ -1253,7 +1253,7 @@ DefineSimpleTypeDescr(JSContext* cx, - Rooted<TypedProto*> proto(cx); - proto = NewObjectWithProto<TypedProto>(cx, objProto, nullptr, TenuredObject); - if (!proto) -- return nullptr; -+ return false; - proto->initTypeDescrSlot(*descr); - descr->initReservedSlot(JS_DESCR_SLOT_TYPROTO, ObjectValue(*proto)); - -@@ -1358,14 +1358,14 @@ GlobalObject::initTypedObjectModule(JSCo - #define BINARYDATA_SCALAR_DEFINE(constant_, type_, name_) \ - if (!DefineSimpleTypeDescr<ScalarTypeDescr>(cx, global, module, constant_, \ - cx->names().name_)) \ -- return nullptr; -+ return false; - JS_FOR_EACH_SCALAR_TYPE_REPR(BINARYDATA_SCALAR_DEFINE) - #undef BINARYDATA_SCALAR_DEFINE - - #define BINARYDATA_REFERENCE_DEFINE(constant_, type_, name_) \ - if (!DefineSimpleTypeDescr<ReferenceTypeDescr>(cx, global, module, constant_, \ - cx->names().name_)) \ -- return nullptr; -+ return false; - JS_FOR_EACH_REFERENCE_TYPE_REPR(BINARYDATA_REFERENCE_DEFINE) - #undef BINARYDATA_REFERENCE_DEFINE - -@@ -1375,14 +1375,14 @@ GlobalObject::initTypedObjectModule(JSCo - arrayType = DefineMetaTypeDescr<ArrayMetaTypeDescr>( - cx, global, module, TypedObjectModuleObject::ArrayTypePrototype); - if (!arrayType) -- return nullptr; -+ return false; - - RootedValue arrayTypeValue(cx, ObjectValue(*arrayType)); - if (!JSObject::defineProperty(cx, module, cx->names().ArrayType, - arrayTypeValue, - nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - // StructType. - -@@ -1390,14 +1390,14 @@ GlobalObject::initTypedObjectModule(JSCo - structType = DefineMetaTypeDescr<StructMetaTypeDescr>( - cx, global, module, TypedObjectModuleObject::StructTypePrototype); - if (!structType) -- return nullptr; -+ return false; - - RootedValue structTypeValue(cx, ObjectValue(*structType)); - if (!JSObject::defineProperty(cx, module, cx->names().StructType, - structTypeValue, - nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - // Everything is setup, install module on the global object: - RootedValue moduleValue(cx, ObjectValue(*module)); -@@ -1407,7 +1407,7 @@ GlobalObject::initTypedObjectModule(JSCo - nullptr, nullptr, - 0)) - { -- return nullptr; -+ return false; - } - - return module; -@@ -2466,7 +2466,7 @@ TypedObject::constructUnsized(JSContext* - if (length < 0) { - JS_ReportErrorNumber(cx, js_GetErrorMessage, - nullptr, JSMSG_TYPEDOBJECT_BAD_ARGS); -- return nullptr; -+ return false; - } - Rooted<TypedObject*> obj(cx, createZeroed(cx, callee, length)); - if (!obj) diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_frontend_BytecodeCompiler.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_frontend_BytecodeCompiler.cpp deleted file mode 100644 index 6420c2b8152..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_js_src_frontend_BytecodeCompiler.cpp +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_js_src_frontend_BytecodeCompiler.cpp,v 1.3 2015/06/08 13:40:58 joerg Exp $ - ---- mozilla/js/src/frontend/BytecodeCompiler.cpp.orig 2015-05-07 18:53:49.000000000 +0000 -+++ mozilla/js/src/frontend/BytecodeCompiler.cpp -@@ -544,7 +544,7 @@ CompileFunctionBody(JSContext* cx, Mutab - - RootedScriptSource sourceObject(cx, CreateScriptSourceObject(cx, options)); - if (!sourceObject) -- return nullptr; -+ return false; - ScriptSource* ss = sourceObject->source(); - - SourceCompressionTask sct(cx); diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_gc_Memory.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_gc_Memory.cpp deleted file mode 100644 index 5eb74343b5a..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_js_src_gc_Memory.cpp +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_js_src_gc_Memory.cpp,v 1.2 2015/05/26 12:34:42 ryoon Exp $ - ---- mozilla/js/src/gc/Memory.cpp.orig 2015-05-07 18:53:49.000000000 +0000 -+++ mozilla/js/src/gc/Memory.cpp -@@ -212,7 +212,7 @@ gc::InitMemorySubsystem(JSRuntime* rt) - static inline void* - MapMemory(size_t length, int prot, int flags, int fd, off_t offset) - { --#if defined(__ia64__) -+#if defined(__ia64__) || (defined(__sparc64__) && defined(__NetBSD__)) - /* - * The JS engine assumes that all allocated pointers have their high 17 bits clear, - * which ia64's mmap doesn't support directly. However, we can emulate it by passing diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_gc_Statistics.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_gc_Statistics.cpp new file mode 100644 index 00000000000..2a55c632902 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_gc_Statistics.cpp @@ -0,0 +1,15 @@ +$NetBSD: patch-mozilla_js_src_gc_Statistics.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/gc/Statistics.cpp.orig 2015-06-08 17:49:22.000000000 +0000 ++++ mozilla/js/src/gc/Statistics.cpp +@@ -222,8 +222,8 @@ class gcstats::StatisticsSerializer + while (*c) { + if (*c == ' ' || *c == '\t') + p('_'); +- else if (isupper(*c)) +- p(tolower(*c)); ++ else if (isupper((unsigned char)*c)) ++ p(tolower((unsigned char)*c)); + else if (*c == '+') + p("added_"); + else if (*c == '-') diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_jit_ExecutableAllocator.h b/mail/thunderbird/patches/patch-mozilla_js_src_jit_ExecutableAllocator.h new file mode 100644 index 00000000000..5f7905048c3 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_jit_ExecutableAllocator.h @@ -0,0 +1,16 @@ +$NetBSD: patch-mozilla_js_src_jit_ExecutableAllocator.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/jit/ExecutableAllocator.h.orig 2015-06-08 17:49:24.000000000 +0000 ++++ mozilla/js/src/jit/ExecutableAllocator.h +@@ -419,6 +419,11 @@ class ExecutableAllocator { + { + __clear_cache(code, reinterpret_cast<char*>(code) + size); + } ++#elif defined(JS_CODEGEN_ARM) && (defined(__FreeBSD__) || defined(__NetBSD__)) ++ static void cacheFlush(void* code, size_t size) ++ { ++ __clear_cache(code, reinterpret_cast<char*>(code) + size); ++ } + #elif defined(JS_CODEGEN_ARM) && (defined(__linux__) || defined(ANDROID)) && defined(__GNUC__) + static void cacheFlush(void* code, size_t size) + { diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_jit_LIR.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_jit_LIR.cpp new file mode 100644 index 00000000000..2c4669be28b --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_jit_LIR.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jit_LIR.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/jit/LIR.cpp.orig 2015-06-08 17:49:25.000000000 +0000 ++++ mozilla/js/src/jit/LIR.cpp +@@ -323,7 +323,7 @@ LNode::printName(FILE* fp, Opcode op) + const char* name = names[op]; + size_t len = strlen(name); + for (size_t i = 0; i < len; i++) +- fprintf(fp, "%c", tolower(name[i])); ++ fprintf(fp, "%c", tolower(((unsigned char)name[i]))); + } + + void diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_jit_MIR.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_jit_MIR.cpp new file mode 100644 index 00000000000..f45ba637fad --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_jit_MIR.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jit_MIR.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/jit/MIR.cpp.orig 2015-06-08 17:49:25.000000000 +0000 ++++ mozilla/js/src/jit/MIR.cpp +@@ -71,7 +71,7 @@ MDefinition::PrintOpcodeName(FILE* fp, M + const char* name = names[op]; + size_t len = strlen(name); + for (size_t i = 0; i < len; i++) +- fprintf(fp, "%c", tolower(name[i])); ++ fprintf(fp, "%c", tolower(((unsigned char)name[i]))); + } + + const Value& diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_jit_arm_Architecture-arm.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_jit_arm_Architecture-arm.cpp new file mode 100644 index 00000000000..f0a00ee25b5 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_jit_arm_Architecture-arm.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jit_arm_Architecture-arm.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/jit/arm/Architecture-arm.cpp.orig 2015-06-08 17:49:25.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_ARM_SIMULATOR) ++#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) diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_jsapi.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_jsapi.cpp new file mode 100644 index 00000000000..a87bea4b813 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_jsapi.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jsapi.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/jsapi.cpp.orig 2015-06-08 17:49:25.000000000 +0000 ++++ mozilla/js/src/jsapi.cpp +@@ -115,7 +115,7 @@ using js::frontend::Parser; + #define JS_ADDRESSOF_VA_LIST(ap) (&(ap)) + #endif + +-bool ++JS_PUBLIC_API(bool) + JS::CallArgs::requireAtLeast(JSContext* cx, const char* fnname, unsigned required) { + if (length() < required) { + char numArgsStr[40]; diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_jsdate.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_jsdate.cpp new file mode 100644 index 00000000000..03af5399025 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_jsdate.cpp @@ -0,0 +1,20 @@ +$NetBSD: patch-mozilla_js_src_jsdate.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/jsdate.cpp.orig 2015-06-08 17:49:25.000000000 +0000 ++++ mozilla/js/src/jsdate.cpp +@@ -2669,11 +2669,11 @@ 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]))) { ++ !(isdigit(((unsigned char)buf[0])) && isdigit(((unsigned char)buf[1])) && ++ isdigit(((unsigned char)buf[2])) && isdigit(((unsigned char)buf[3])))) { + double localtime = obj->as<DateObject>().cachedLocalTime(&cx->runtime()->dateTimeInfo); + int year = IsNaN(localtime) ? 0 : (int) YearFromTime(localtime); + JS_snprintf(buf + (result_len - 2), (sizeof buf) - (result_len - 2), diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_jskwgen.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_jskwgen.cpp new file mode 100644 index 00000000000..565d24b5709 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_jskwgen.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_jskwgen.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/jskwgen.cpp.orig 2015-06-08 17:49:25.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))); diff --git a/mail/thunderbird/patches/patch-mozilla_js_src_shell_jsoptparse.cpp b/mail/thunderbird/patches/patch-mozilla_js_src_shell_jsoptparse.cpp new file mode 100644 index 00000000000..ff4e5b6eb6e --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_src_shell_jsoptparse.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_src_shell_jsoptparse.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/src/shell/jsoptparse.cpp.orig 2015-06-08 17:49:25.000000000 +0000 ++++ mozilla/js/src/shell/jsoptparse.cpp +@@ -90,7 +90,7 @@ PrintParagraph(const char* text, unsigne + printf("%*s", startColno, ""); + + while (*it != '\0') { +- MOZ_ASSERT(!isspace(*it)); ++ MOZ_ASSERT(!isspace((unsigned char)*it)); + + /* Delimit the current token. */ + const char* limit = it; diff --git a/mail/thunderbird/patches/patch-mozilla_js_xpconnect_src_XPCConvert.cpp b/mail/thunderbird/patches/patch-mozilla_js_xpconnect_src_XPCConvert.cpp new file mode 100644 index 00000000000..f04aaf4fa19 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_xpconnect_src_XPCConvert.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_xpconnect_src_XPCConvert.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/xpconnect/src/XPCConvert.cpp.orig 2015-06-08 17:49:29.000000000 +0000 ++++ mozilla/js/xpconnect/src/XPCConvert.cpp +@@ -134,7 +134,7 @@ XPCConvert::NativeData2JS(MutableHandleV + d.setNumber(*static_cast<const float*>(s)); + return true; + case nsXPTType::T_DOUBLE: +- d.setNumber(*static_cast<const double*>(s)); ++ d.setNumber(CanonicalizeNaN(*static_cast<const double*>(s))); + return true; + case nsXPTType::T_BOOL : + d.setBoolean(*static_cast<const bool*>(s)); diff --git a/mail/thunderbird/patches/patch-mozilla_js_xpconnect_src_xpcprivate.h b/mail/thunderbird/patches/patch-mozilla_js_xpconnect_src_xpcprivate.h new file mode 100644 index 00000000000..1dca8a903b6 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_js_xpconnect_src_xpcprivate.h @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_js_xpconnect_src_xpcprivate.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/js/xpconnect/src/xpcprivate.h.orig 2015-06-08 17:49:55.000000000 +0000 ++++ mozilla/js/xpconnect/src/xpcprivate.h +@@ -1017,6 +1017,8 @@ static inline bool IS_PROTO_CLASS(const + /***************************************************************************/ + // XPCWrappedNativeScope is one-to-one with a JS global object. + ++extern template class JS_PUBLIC_API(JS::WeakMapPtr)<JSObject*, JSObject*>; ++ + class nsIAddonInterposition; + class nsXPCComponentsBase; + class XPCWrappedNativeScope : public PRCList diff --git a/mail/thunderbird/patches/patch-mozilla_js_xpconnect_wrapper_XrayWrapper.cpp b/mail/thunderbird/patches/patch-mozilla_js_xpconnect_wrapper_XrayWrapper.cpp deleted file mode 100644 index c41ee4e9ca8..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_js_xpconnect_wrapper_XrayWrapper.cpp +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_js_xpconnect_wrapper_XrayWrapper.cpp,v 1.1 2015/06/29 21:27:01 markd Exp $ - ---- mozilla/js/xpconnect/wrappers/XrayWrapper.cpp.orig 2015-05-07 18:53:42.000000000 +0000 -+++ mozilla/js/xpconnect/wrappers/XrayWrapper.cpp -@@ -351,7 +351,7 @@ public: - { - JSAutoCompartment ac(cx, target); - if (!JS_GetClassPrototype(cx, key, protop)) -- return nullptr; -+ return false; - } - return JS_WrapObject(cx, protop); - } diff --git a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_AUTHORS b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_AUTHORS new file mode 100644 index 00000000000..205e169c35a --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_AUTHORS @@ -0,0 +1,9 @@ +$NetBSD: patch-mozilla_media_libcubeb_AUTHORS,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libcubeb/AUTHORS.orig 2015-06-08 17:49:22.000000000 +0000 ++++ mozilla/media/libcubeb/AUTHORS +@@ -4,3 +4,4 @@ Michael Wu <mwu@mozilla.com> + Paul Adenot <paul@paul.cx> + David Richards <drichards@mozilla.com> + Sebastien Alaiwan <sebastien.alaiwan@gmail.com> ++Evgeniy Vodolazskiy <waterlaz@gmail.com> diff --git a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_Makefile.in b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_Makefile.in deleted file mode 100644 index 778123aebe2..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_Makefile.in +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-mozilla_media_libcubeb_src_Makefile.in,v 1.3 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/media/libcubeb/src/Makefile.in.orig 2014-07-18 00:05:38.000000000 +0000 -+++ mozilla/media/libcubeb/src/Makefile.in -@@ -9,3 +9,7 @@ CFLAGS += \ - $(MOZ_ALSA_CFLAGS) \ - $(MOZ_PULSEAUDIO_CFLAGS) \ - $(NULL) -+ -+ifdef MOZ_NATIVE_SPEEX -+CFLAGS += $(MOZ_SPEEX_CFLAGS) -+endif diff --git a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb.c b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb.c new file mode 100644 index 00000000000..86d6fc220d1 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb.c @@ -0,0 +1,24 @@ +$NetBSD: patch-mozilla_media_libcubeb_src_cubeb.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libcubeb/src/cubeb.c.orig 2015-06-08 17:49:22.000000000 +0000 ++++ mozilla/media/libcubeb/src/cubeb.c +@@ -56,6 +56,9 @@ int opensl_init(cubeb ** context, char c + #if defined(USE_AUDIOTRACK) + int audiotrack_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) +@@ -122,6 +125,9 @@ cubeb_init(cubeb ** context, char const + #if defined(USE_AUDIOTRACK) + audiotrack_init, + #endif ++#if defined(USE_OSS) ++ oss_init, ++#endif + }; + int i; + diff --git a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c index fb8a9b2e053..e769e23312b 100644 --- a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c +++ b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c @@ -1,10 +1,10 @@ -$NetBSD: patch-mozilla_media_libcubeb_src_cubeb__alsa.c,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_media_libcubeb_src_cubeb__alsa.c,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/media/libcubeb/src/cubeb_alsa.c.orig 2014-07-18 00:05:38.000000000 +0000 +--- mozilla/media/libcubeb/src/cubeb_alsa.c.orig 2015-06-08 17:49:22.000000000 +0000 +++ mozilla/media/libcubeb/src/cubeb_alsa.c -@@ -6,6 +6,9 @@ - */ +@@ -7,12 +7,18 @@ #undef NDEBUG + #define _DEFAULT_SOURCE #define _BSD_SOURCE +#if defined(__NetBSD__) +#define _NETBSD_SOURCE @@ -12,3 +12,662 @@ $NetBSD: patch-mozilla_media_libcubeb_src_cubeb__alsa.c,v 1.1 2014/07/27 20:04:5 #define _XOPEN_SOURCE 500 #include <pthread.h> #include <sys/time.h> + #include <assert.h> + #include <limits.h> ++#include <dlfcn.h> + #include <poll.h> ++#include <stdlib.h> ++#include <stdio.h> + #include <unistd.h> + #include <alsa/asoundlib.h> + #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,64 @@ 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 defined(EBADFD) ++ case -EBADFD: ++ 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; ++#endif ++ } ++ 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 +450,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 +561,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 +589,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 +598,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 +621,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 +645,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 +656,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 +672,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 +691,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 +703,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 +718,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 +775,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 +841,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 +892,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 +931,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 +1005,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 +1015,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 +1062,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 +1072,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 +1107,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 +1132,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, "default", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0); ++ r = WRAP(snd_pcm_open)(&pcm, "default", 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 +1183,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 +1217,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 +1233,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 +1262,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; + } + diff --git a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb__oss.c b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb__oss.c new file mode 100644 index 00000000000..4ea994c7b61 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_cubeb__oss.c @@ -0,0 +1,407 @@ +$NetBSD: patch-mozilla_media_libcubeb_src_cubeb__oss.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libcubeb/src/cubeb_oss.c.orig 2015-07-06 19:52:50.000000000 +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 <sys/soundcard.h> ++#else ++#include <soundcard.h> ++#endif ++#include <unistd.h> ++#include <stdlib.h> ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <fcntl.h> ++#include <sys/ioctl.h> ++#include <errno.h> ++#include <pthread.h> ++#include <stdio.h> ++ ++#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; i<n; i++){ ++ buffer[i] = ((int)buffer[i])*pan[i%2]/128; ++ } ++} ++ ++static void *writer(void *stm) ++{ ++ cubeb_stream* stream = (cubeb_stream*)stm; ++ int16_t buffer[OSS_BUFFER_SIZE]; ++ float f_buffer[OSS_BUFFER_SIZE]; ++ int got; ++ unsigned long i; ++ while (stream->running) { ++ 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 ++}; diff --git a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_moz.build b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_moz.build index eae05ec8b4a..ee3cc7eef4d 100644 --- a/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_moz.build +++ b/mail/thunderbird/patches/patch-mozilla_media_libcubeb_src_moz.build @@ -1,8 +1,21 @@ -$NetBSD: patch-mozilla_media_libcubeb_src_moz.build,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_media_libcubeb_src_moz.build,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/media/libcubeb/src/moz.build.orig 2014-07-18 00:05:38.000000000 +0000 +--- mozilla/media/libcubeb/src/moz.build.orig 2015-06-08 17:49:22.000000000 +0000 +++ mozilla/media/libcubeb/src/moz.build -@@ -30,7 +30,7 @@ if CONFIG['OS_ARCH'] == 'OpenBSD': +@@ -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 @@ -10,4 +23,24 @@ $NetBSD: patch-mozilla_media_libcubeb_src_moz.build,v 1.1 2014/07/27 20:04:59 ry +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': SOURCES += [ 'cubeb_audiounit.c', + 'cubeb_osx_run_loop.c' +@@ -65,6 +71,9 @@ if CONFIG['GKMEDIAS_SHARED_LIBRARY']: + + FINAL_LIBRARY = 'gkmedias' + ++if CONFIG['MOZ_NATIVE_SPEEX']: ++ SOURCES['cubeb_resampler.cpp'].flags += CONFIG['MOZ_SPEEX_CFLAGS'] ++ + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': + CFLAGS += [ + '-I%s/%s' % (CONFIG['ANDROID_SOURCE'], d) for d in [ +@@ -73,7 +82,9 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk + ] ] + ++CFLAGS += CONFIG['MOZ_OSS_CFLAGS'] + FAIL_ON_WARNINGS = True + ++CFLAGS += CONFIG['MOZ_OSS_CFLAGS'] + CFLAGS += CONFIG['MOZ_ALSA_CFLAGS'] + CFLAGS += CONFIG['MOZ_PULSEAUDIO_CFLAGS'] diff --git a/mail/thunderbird/patches/patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp b/mail/thunderbird/patches/patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp new file mode 100644 index 00000000000..c31e52fc217 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_media_libstagefright_frameworks_av_media_libstagefright_foundation_AString.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libstagefright/frameworks/av/media/libstagefright/foundation/AString.cpp.orig 2015-06-08 17:49:23.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 <osreldate.h> ++# if __FreeBSD_version < 900506 ++# undef tolower ++# endif ++#endif ++ ++#if defined(__NetBSD__) && defined(tolower) ++#undef tolower ++#endif ++ + namespace stagefright { + + // static diff --git a/mail/thunderbird/patches/patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c b/mail/thunderbird/patches/patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c new file mode 100644 index 00000000000..2a4e2674468 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c @@ -0,0 +1,27 @@ +$NetBSD: patch-mozilla_media_libstagefright_system_core_liblog_fake__log__device.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libstagefright/system/core/liblog/fake_log_device.c.orig 2015-06-08 17:49:23.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; diff --git a/mail/thunderbird/patches/patch-mozilla_media_libstagefright_system_core_liblog_logprint.c b/mail/thunderbird/patches/patch-mozilla_media_libstagefright_system_core_liblog_logprint.c new file mode 100644 index 00000000000..5bd93aa8382 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libstagefright_system_core_liblog_logprint.c @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_media_libstagefright_system_core_liblog_logprint.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libstagefright/system/core/liblog/logprint.c.orig 2015-06-08 17:49:23.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; + } diff --git a/mail/thunderbird/patches/patch-mozilla_media_libtheora_Makefile.in b/mail/thunderbird/patches/patch-mozilla_media_libtheora_Makefile.in deleted file mode 100644 index 74553c4d732..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_media_libtheora_Makefile.in +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-mozilla_media_libtheora_Makefile.in,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/media/libtheora/Makefile.in.orig 2014-07-27 06:20:09.000000000 +0000 -+++ mozilla/media/libtheora/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 diff --git a/mail/thunderbird/patches/patch-mozilla_media_libtheora_lib_arm_armcpu.c b/mail/thunderbird/patches/patch-mozilla_media_libtheora_lib_arm_armcpu.c new file mode 100644 index 00000000000..25a342c44b6 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libtheora_lib_arm_armcpu.c @@ -0,0 +1,23 @@ +$NetBSD: patch-mozilla_media_libtheora_lib_arm_armcpu.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libtheora/lib/arm/armcpu.c.orig 2015-06-08 17:49:23.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 diff --git a/mail/thunderbird/patches/patch-mozilla_media_libtheora_lib_info.c b/mail/thunderbird/patches/patch-mozilla_media_libtheora_lib_info.c new file mode 100644 index 00000000000..50e3c4b954e --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libtheora_lib_info.c @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_libtheora_lib_info.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libtheora/lib/info.c.orig 2015-06-08 17:49:23.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]!='='; + } diff --git a/mail/thunderbird/patches/patch-mozilla_media_libtheora_moz.build b/mail/thunderbird/patches/patch-mozilla_media_libtheora_moz.build new file mode 100644 index 00000000000..e789cb4976e --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libtheora_moz.build @@ -0,0 +1,10 @@ +$NetBSD: patch-mozilla_media_libtheora_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libtheora/moz.build.orig 2015-06-08 17:49:23.000000000 +0000 ++++ mozilla/media/libtheora/moz.build +@@ -93,3 +93,5 @@ if CONFIG['GNU_AS']: + if CONFIG['OS_TARGET'] == 'Android': + DEFINES['__linux__'] = True + ++if CONFIG['MOZ_NATIVE_OGG']: ++ CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] diff --git a/mail/thunderbird/patches/patch-mozilla_media_libtremor_moz.build b/mail/thunderbird/patches/patch-mozilla_media_libtremor_moz.build new file mode 100644 index 00000000000..c50e1066a19 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libtremor_moz.build @@ -0,0 +1,10 @@ +$NetBSD: patch-mozilla_media_libtremor_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libtremor/moz.build.orig 2015-06-08 17:49:23.000000000 +0000 ++++ mozilla/media/libtremor/moz.build +@@ -6,3 +6,5 @@ + + DIRS += ['include/tremor', 'lib'] + ++if CONFIG['MOZ_NATIVE_OGG']: ++ CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] diff --git a/mail/thunderbird/patches/patch-mozilla_media_libvorbis_lib_vorbis__info.c b/mail/thunderbird/patches/patch-mozilla_media_libvorbis_lib_vorbis__info.c new file mode 100644 index 00000000000..cd47d11cfd2 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libvorbis_lib_vorbis__info.c @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_libvorbis_lib_vorbis__info.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libvorbis/lib/vorbis_info.c.orig 2015-06-08 17:49:23.000000000 +0000 ++++ mozilla/media/libvorbis/lib/vorbis_info.c +@@ -87,7 +87,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++; + } diff --git a/mail/thunderbird/patches/patch-mozilla_media_libvorbis_moz.build b/mail/thunderbird/patches/patch-mozilla_media_libvorbis_moz.build new file mode 100644 index 00000000000..b87f8d4dccc --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libvorbis_moz.build @@ -0,0 +1,11 @@ +$NetBSD: patch-mozilla_media_libvorbis_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libvorbis/moz.build.orig 2015-06-08 17:49:23.000000000 +0000 ++++ mozilla/media/libvorbis/moz.build +@@ -55,3 +55,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'] diff --git a/mail/thunderbird/patches/patch-mozilla_media_libyuv_include_libyuv_scale__row.h b/mail/thunderbird/patches/patch-mozilla_media_libyuv_include_libyuv_scale__row.h new file mode 100644 index 00000000000..697a0a38776 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_libyuv_include_libyuv_scale__row.h @@ -0,0 +1,17 @@ +$NetBSD: patch-mozilla_media_libyuv_include_libyuv_scale__row.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/libyuv/include/libyuv/scale_row.h.orig 2015-06-08 17:49:23.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, diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_signaling.gyp b/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_signaling.gyp deleted file mode 100644 index e603c2c54c5..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_signaling.gyp +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-mozilla_media_webrtc_signaling_signaling.gyp,v 1.2 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/media/webrtc/signaling/signaling.gyp.orig 2014-07-18 00:05:39.000000000 +0000 -+++ mozilla/media/webrtc/signaling/signaling.gyp -@@ -847,14 +847,13 @@ - ['OS=="mac"', { - 'defines' : [ - 'SIP_OS_OSX', -- '_POSIX_SOURCE', -+ # using BSD extensions, leave _POSIX_SOURCE undefined - 'CPR_MEMORY_LITTLE_ENDIAN', - 'NO_SOCKET_POLLING', - 'USE_TIMER_SELECT_BASED', - 'FULL_BUILD', - 'STUBBED_OUT', - 'USE_PRINTF', -- '_DARWIN_C_SOURCE', - 'NO_NSPR_10_SUPPORT', - ], - }], diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_test_Makefile.in b/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_test_Makefile.in deleted file mode 100644 index f898e428870..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_test_Makefile.in +++ /dev/null @@ -1,25 +0,0 @@ -$NetBSD: patch-mozilla_media_webrtc_signaling_test_Makefile.in,v 1.2 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/media/webrtc/signaling/test/Makefile.in.orig 2014-07-18 00:05:40.000000000 +0000 -+++ mozilla/media/webrtc/signaling/test/Makefile.in -@@ -7,6 +7,7 @@ LIBS = \ - $(NSPR_LIBS) \ - $(NSS_LIBS) \ - $(REALTIME_LIBS) \ -+ $(MOZ_LIBV4L2_LIBS) \ - $(DEPTH)/xpcom/glue/$(LIB_PREFIX)xpcomglue_s.$(LIB_SUFFIX) \ - $(DEPTH)/media/mtransport/standalone/$(LIB_PREFIX)mtransport_s.$(LIB_SUFFIX) \ - $(DEPTH)/media/webrtc/signalingtest/signaling_ecc/$(LIB_PREFIX)ecc.$(LIB_SUFFIX) \ -@@ -48,6 +49,12 @@ LIBS += \ - $(NULL) - endif - -+ifdef MOZ_NATIVE_OPUS -+LIBS += \ -+ $(MOZ_OPUS_LIBS) \ -+ $(NULL) -+endif -+ - ifdef MOZ_NATIVE_LIBVPX - LIBS += \ - $(MOZ_LIBVPX_LIBS) \ diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_test_moz.build b/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_test_moz.build new file mode 100644 index 00000000000..fa42ba7fca0 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_webrtc_signaling_test_moz.build @@ -0,0 +1,26 @@ +$NetBSD: patch-mozilla_media_webrtc_signaling_test_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/webrtc/signaling/test/moz.build.orig 2015-06-08 17:49:23.000000000 +0000 ++++ mozilla/media/webrtc/signaling/test/moz.build +@@ -109,15 +109,19 @@ if CONFIG['JS_SHARED_LIBRARY']: + 'js', + ] + ++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'] + diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi index 5e7901941b9..c3c414b6cbb 100644 --- a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi +++ b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi @@ -1,17 +1,27 @@ -$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_codecs_opus_opus.gypi,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi.orig 2014-07-18 00:05:42.000000000 +0000 +--- mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi.orig 2015-06-08 17:49:24.000000000 +0000 +++ mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi -@@ -14,9 +14,9 @@ +@@ -17,18 +17,11 @@ 'conditions': [ ['build_with_mozilla==1', { # Mozilla provides its own build of the opus library. - 'include_dirs': [ - '/media/libopus/include', -- ] +- '/media/libopus/src', +- '/media/libopus/celt', + 'cflags_mozilla': [ ++ '$(filter -I%, $(MOZ_CELT_CFLAGS))/celt', + '$(MOZ_OPUS_CFLAGS)', -+ ], ++ '$(filter -I%, $(MOZ_OPUS_CFLAGS))/../src', + ], +- 'direct_dependent_settings': { +- 'include_dirs': [ +- '/media/libopus/include', +- '/media/libopus/src', +- '/media/libopus/celt', +- ], +- }, }, { 'dependencies': [ '<(DEPTH)/third_party/opus/opus.gyp:opus' diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi new file mode 100644 index 00000000000..ecaa697f6ba --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi @@ -0,0 +1,28 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_audio__coding_neteq_neteq.gypi,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi.orig 2015-06-08 17:49:24.000000000 +0000 ++++ mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi +@@ -84,19 +84,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': [ diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc new file mode 100644 index 00000000000..3b2f6451777 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.cc,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/desktop_capture/screen_capturer.cc.orig 2015-06-08 17:49:25.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; diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h new file mode 100644 index 00000000000..9037405c8e8 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_desktop__capture_screen__capturer.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/media/webrtc/trunk/webrtc/modules/desktop_capture/screen_capturer.h.orig 2015-06-08 17:49:25.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); diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi index 84e13a7f8a0..1d8c696c8c3 100644 --- a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi +++ b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi @@ -1,6 +1,6 @@ -$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi,v 1.1 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi.orig 2013-10-23 22:09:13.000000000 +0000 +--- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi.orig 2015-06-08 17:49:25.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. @@ -11,21 +11,24 @@ $NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_modules_video__capture_video__c + }, 'targets': [ { - 'target_name': 'video_capture_module', -@@ -49,6 +52,16 @@ - }, { # include_internal_video_capture == 1 - 'conditions': [ - ['include_v4l2_video_capture==1', { -+ 'conditions': [ -+ ['use_libv4l2==1', { -+ 'defines': [ -+ 'HAVE_LIBV4L2', -+ ], -+ 'libraries': [ -+ '-lv4l2', -+ ], -+ }], + # Note this library is missing an implementation for the video capture. +@@ -69,6 +72,19 @@ + 'linux/video_capture_linux.cc', + 'linux/video_capture_linux.h', + ], ++ 'conditions': [ ++ ['use_libv4l2==1', { ++ 'defines': [ ++ 'HAVE_LIBV4L2', + ], - 'include_dirs': [ - 'linux', - ], ++ 'cflags_mozilla': [ ++ '$(MOZ_LIBV4L2_CFLAGS)', ++ ], ++ 'libraries': [ ++ '-lv4l2', ++ ], ++ }], ++ ], + }], # linux + ['OS=="mac"', { + 'sources': [ diff --git a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp index d67c06f63d1..44ddf443d3d 100644 --- a/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp +++ b/mail/thunderbird/patches/patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp @@ -1,8 +1,22 @@ -$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp,v 1.2 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp,v 1.3 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp.orig 2014-07-18 00:05:43.000000000 +0000 +--- mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp.orig 2015-06-08 17:49:25.000000000 +0000 +++ mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp -@@ -21,6 +21,13 @@ Scott McMurray
+@@ -14,6 +14,13 @@ Cygwin fix provided by:
+ Scott McMurray
+ */
+
++#ifdef __FreeBSD__
++# include <osreldate.h>
++# if __FreeBSD_version < 900506
++# define getchar boost_getchar
++# endif
++#endif
++
+ #ifndef BOOST_SPREAD_SORT_H
+ #define BOOST_SPREAD_SORT_H
+ #include <algorithm>
+@@ -21,6 +28,13 @@ Scott McMurray
#include <vector>
#include "webrtc/system_wrappers/source/spreadsortlib/constants.hpp"
@@ -13,6 +27,6 @@ $NetBSD: patch-mozilla_media_webrtc_trunk_webrtc_system__wrappers_source_spreads +# endif
+#endif
+
- namespace boost {
- namespace detail {
- //This only works on unsigned data types
+ #ifdef getchar
+ #undef getchar
+ #endif
diff --git a/mail/thunderbird/patches/patch-mozilla_memory_build_mozjemalloc__compat.c b/mail/thunderbird/patches/patch-mozilla_memory_build_mozjemalloc__compat.c new file mode 100644 index 00000000000..bbe91049b92 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_memory_build_mozjemalloc__compat.c @@ -0,0 +1,53 @@ +$NetBSD: patch-mozilla_memory_build_mozjemalloc__compat.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/memory/build/mozjemalloc_compat.c.orig 2015-06-08 17:49:26.000000000 +0000 ++++ mozilla/memory/build/mozjemalloc_compat.c +@@ -131,6 +131,48 @@ compute_bin_unused(unsigned int narenas) + return 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) + { diff --git a/mail/thunderbird/patches/patch-mozilla_memory_jemalloc_src_configure b/mail/thunderbird/patches/patch-mozilla_memory_jemalloc_src_configure new file mode 100644 index 00000000000..8602ac2847d --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_memory_jemalloc_src_configure @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_memory_jemalloc_src_configure,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/memory/jemalloc/src/configure.orig 2015-06-08 17:49:26.000000000 +0000 ++++ mozilla/memory/jemalloc/src/configure +@@ -6566,7 +6566,7 @@ else + LG_PAGE="detect" + fi + +-if test "x$LG_PAGE" == "xdetect"; then ++if test "x$LG_PAGE" = "xdetect"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking LG_PAGE" >&5 + $as_echo_n "checking LG_PAGE... " >&6; } + if ${je_cv_lg_page+:} false; then : diff --git a/mail/thunderbird/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp b/mail/thunderbird/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp index fbfaf5adecf..ce15dd61027 100644 --- a/mail/thunderbird/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp +++ b/mail/thunderbird/patches/patch-mozilla_memory_mozalloc_mozalloc__abort.cpp @@ -1,8 +1,8 @@ -$NetBSD: patch-mozilla_memory_mozalloc_mozalloc__abort.cpp,v 1.1 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_memory_mozalloc_mozalloc__abort.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/memory/mozalloc/mozalloc_abort.cpp.orig 2013-10-23 22:09:13.000000000 +0000 +--- mozilla/memory/mozalloc/mozalloc_abort.cpp.orig 2015-06-08 17:49:26.000000000 +0000 +++ mozilla/memory/mozalloc/mozalloc_abort.cpp -@@ -34,7 +34,11 @@ mozalloc_abort(const char* const msg) +@@ -63,7 +63,11 @@ void fillAbortMessage(char (&msg)[N], ui // Define abort() here, so that it is used instead of the system abort(). This // lets us control the behavior when aborting, in order to get better results // on *NIX platforms. See mozalloc_abort for details. @@ -12,5 +12,5 @@ $NetBSD: patch-mozilla_memory_mozalloc_mozalloc__abort.cpp,v 1.1 2013/11/12 20:5 void abort(void) +#endif { - mozalloc_abort("Redirecting call to abort() to mozalloc_abort\n"); - } + #ifdef MOZ_WIDGET_ANDROID + char msg[64] = {}; diff --git a/mail/thunderbird/patches/patch-mozilla_memory_volatile_VolatileBufferOSX.cpp b/mail/thunderbird/patches/patch-mozilla_memory_volatile_VolatileBufferOSX.cpp new file mode 100644 index 00000000000..4c5264ce53d --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_memory_volatile_VolatileBufferOSX.cpp @@ -0,0 +1,19 @@ +$NetBSD: patch-mozilla_memory_volatile_VolatileBufferOSX.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/memory/volatile/VolatileBufferOSX.cpp.orig 2015-06-08 17:49:26.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; + } diff --git a/mail/thunderbird/patches/patch-mozilla_mfbt_Attributes.h b/mail/thunderbird/patches/patch-mozilla_mfbt_Attributes.h index e337203bbb6..d828dfb6d20 100644 --- a/mail/thunderbird/patches/patch-mozilla_mfbt_Attributes.h +++ b/mail/thunderbird/patches/patch-mozilla_mfbt_Attributes.h @@ -1,8 +1,16 @@ -$NetBSD: patch-mozilla_mfbt_Attributes.h,v 1.1 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_mfbt_Attributes.h,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/mfbt/Attributes.h.orig 2014-07-18 00:05:43.000000000 +0000 +--- mozilla/mfbt/Attributes.h.orig 2015-06-08 17:49:26.000000000 +0000 +++ mozilla/mfbt/Attributes.h -@@ -54,6 +54,9 @@ +@@ -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) + # ifdef __clang__ +@@ -70,6 +71,9 @@ # ifndef __has_extension # define __has_extension __has_feature /* compatibility, for older versions of clang */ # endif @@ -12,21 +20,13 @@ $NetBSD: patch-mozilla_mfbt_Attributes.h,v 1.1 2014/07/27 20:04:59 ryoon Exp $ # if __has_extension(cxx_constexpr) # define MOZ_HAVE_CXX11_CONSTEXPR # endif -@@ -75,6 +78,9 @@ +@@ -84,6 +88,9 @@ # endif #elif defined(__GNUC__) # if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L +# if MOZ_GCC_VERSION_AT_LEAST(4, 8, 0) +# define MOZ_HAVE_CXX11_ALIGNAS +# endif - # if MOZ_GCC_VERSION_AT_LEAST(4, 7, 0) - # define MOZ_HAVE_CXX11_OVERRIDE - # define MOZ_HAVE_CXX11_FINAL final -@@ -96,6 +102,7 @@ - # define MOZ_HAVE_NORETURN __attribute__((noreturn)) - #elif defined(_MSC_VER) - # if _MSC_VER >= 1800 -+# define MOZ_HAVE_CXX11_ALIGNAS - # define MOZ_HAVE_CXX11_DELETE + # define MOZ_HAVE_CXX11_CONSTEXPR + # define MOZ_HAVE_EXPLICIT_CONVERSION # endif - # if _MSC_VER >= 1700 diff --git a/mail/thunderbird/patches/patch-mozilla_mfbt_Poison.cpp b/mail/thunderbird/patches/patch-mozilla_mfbt_Poison.cpp index 830f01ce792..462b996257b 100644 --- a/mail/thunderbird/patches/patch-mozilla_mfbt_Poison.cpp +++ b/mail/thunderbird/patches/patch-mozilla_mfbt_Poison.cpp @@ -1,15 +1,15 @@ -$NetBSD: patch-mozilla_mfbt_Poison.cpp,v 1.1 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_mfbt_Poison.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/mfbt/Poison.cpp.orig 2013-10-23 22:09:13.000000000 +0000 +--- mozilla/mfbt/Poison.cpp.orig 2015-06-08 17:49:26.000000000 +0000 +++ mozilla/mfbt/Poison.cpp -@@ -125,7 +125,11 @@ ReleaseRegion(void *region, uintptr_t si +@@ -129,7 +129,11 @@ ReleaseRegion(void* aRegion, uintptr_t a static bool - ProbeRegion(uintptr_t region, uintptr_t size) + ProbeRegion(uintptr_t aRegion, uintptr_t aSize) { +#if !defined(__sun__) - if (madvise(reinterpret_cast<void*>(region), size, MADV_NORMAL)) { + if (madvise(reinterpret_cast<void*>(aRegion), aSize, MADV_NORMAL)) { +#else -+ if (posix_madvise(reinterpret_cast<void*>(region), size, MADV_NORMAL)) { ++ if (posix_madvise(reinterpret_cast<void*>(aRegion), aSize, MADV_NORMAL)) { +#endif return true; } else { diff --git a/mail/thunderbird/patches/patch-mozilla_netwerk_base_nsNetUtil.h b/mail/thunderbird/patches/patch-mozilla_netwerk_base_nsNetUtil.h new file mode 100644 index 00000000000..c685234f61f --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_netwerk_base_nsNetUtil.h @@ -0,0 +1,39 @@ +$NetBSD: patch-mozilla_netwerk_base_nsNetUtil.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/netwerk/base/nsNetUtil.h.orig 2015-06-08 17:49:29.000000000 +0000 ++++ mozilla/netwerk/base/nsNetUtil.h +@@ -13,6 +13,7 @@ + #include "nsMemory.h" + #include "nsCOMPtr.h" + #include "prio.h" // for read/write flags, permissions, etc. ++#include "prnetdb.h" + #include "nsHashKeys.h" + + #include "plstr.h" +@@ -2828,6 +2829,26 @@ NS_IsSrcdocChannel(nsIChannel *aChannel) + bool NS_IsReasonableHTTPHeaderValue(const nsACString& aValue); + + /** ++ * Return a host endian value decoded from network byte order, ++ * accessed in an alignement safe way. ++ */ ++inline uint16_t NS_decodeN16(const void *bytes) ++{ ++ uint16_t tmp; ++ ++ memcpy(&tmp, bytes, sizeof tmp); ++ return PR_ntohs(tmp); ++} ++ ++inline uint32_t NS_decodeN32(const void *bytes) ++{ ++ uint32_t tmp; ++ ++ memcpy(&tmp, bytes, sizeof tmp); ++ return PR_ntohl(tmp); ++} ++ ++/** + * Return true if the given string is a valid HTTP token per RFC 2616 section + * 2.2. + */ diff --git a/mail/thunderbird/patches/patch-mozilla_netwerk_dns_Makefile.in b/mail/thunderbird/patches/patch-mozilla_netwerk_dns_Makefile.in deleted file mode 100644 index a7feca8008c..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_netwerk_dns_Makefile.in +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-mozilla_netwerk_dns_Makefile.in,v 1.1 2014/07/27 20:04:59 ryoon Exp $ - ---- mozilla/netwerk/dns/Makefile.in.orig 2014-07-18 00:05:46.000000000 +0000 -+++ mozilla/netwerk/dns/Makefile.in -@@ -5,6 +5,10 @@ - - include $(topsrcdir)/config/rules.mk - -+ifdef MOZ_NATIVE_HARFBUZZ -+CXXFLAGS += $(MOZ_HARFBUZZ_CFLAGS) -+endif -+ - # Generate the include file containing compact, static definitions - # for effective TLD data. - etld_data.inc: $(srcdir)/prepare_tlds.py $(srcdir)/effective_tld_names.dat diff --git a/mail/thunderbird/patches/patch-mozilla_netwerk_dns_moz.build b/mail/thunderbird/patches/patch-mozilla_netwerk_dns_moz.build new file mode 100644 index 00000000000..b08e1ef8ea8 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_netwerk_dns_moz.build @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_netwerk_dns_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/netwerk/dns/moz.build.orig 2015-06-08 17:49:29.000000000 +0000 ++++ mozilla/netwerk/dns/moz.build +@@ -68,5 +68,8 @@ 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': + CXXFLAGS += ['-I%s/bionic/libc/dns/include' % CONFIG['ANDROID_SOURCE']] diff --git a/mail/thunderbird/patches/patch-mozilla_netwerk_ipc_NeckoParent.cpp b/mail/thunderbird/patches/patch-mozilla_netwerk_ipc_NeckoParent.cpp deleted file mode 100644 index 267313d72bd..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_netwerk_ipc_NeckoParent.cpp +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_netwerk_ipc_NeckoParent.cpp,v 1.1 2015/06/29 21:27:01 markd Exp $ - ---- mozilla/netwerk/ipc/NeckoParent.cpp.orig 2015-05-07 18:53:46.000000000 +0000 -+++ mozilla/netwerk/ipc/NeckoParent.cpp -@@ -359,7 +359,7 @@ NeckoParent::RecvPRtspChannelConstructor - RtspChannelParent* p = static_cast<RtspChannelParent*>(aActor); - return p->Init(aConnectArgs); - #else -- return nullptr; -+ return false; - #endif - } - diff --git a/mail/thunderbird/patches/patch-mozilla_netwerk_protocol_http_Http2Session.cpp b/mail/thunderbird/patches/patch-mozilla_netwerk_protocol_http_Http2Session.cpp new file mode 100644 index 00000000000..23784fcb712 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_netwerk_protocol_http_Http2Session.cpp @@ -0,0 +1,91 @@ +$NetBSD: patch-mozilla_netwerk_protocol_http_Http2Session.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/netwerk/protocol/http/Http2Session.cpp.orig 2015-06-08 17:49:29.000000000 +0000 ++++ mozilla/netwerk/protocol/http/Http2Session.cpp +@@ -32,7 +32,6 @@ + #include "nsStandardURL.h" + #include "nsURLHelper.h" + #include "prprf.h" +-#include "prnetdb.h" + #include "sslt.h" + + #ifdef DEBUG +@@ -1385,7 +1384,7 @@ Http2Session::RecvPriority(Http2Session + return rv; + + uint32_t newPriorityDependency = +- PR_ntohl(*reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get() + kFrameHeaderBytes)); ++ NS_decodeN32(self->mInputFrameBuffer.get() + kFrameHeaderBytes); + bool exclusive = !!(newPriorityDependency & 0x80000000); + newPriorityDependency &= 0x7fffffff; + uint8_t newPriorityWeight = *(self->mInputFrameBuffer.get() + kFrameHeaderBytes + 4); +@@ -1416,7 +1415,7 @@ Http2Session::RecvRstStream(Http2Session + } + + self->mDownstreamRstReason = +- PR_ntohl(*reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get() + kFrameHeaderBytes)); ++ NS_decodeN32(self->mInputFrameBuffer.get() + kFrameHeaderBytes); + + LOG3(("Http2Session::RecvRstStream %p RST_STREAM Reason Code %u ID %x\n", + self, self->mDownstreamRstReason, self->mInputFrameID)); +@@ -1477,8 +1476,8 @@ Http2Session::RecvSettings(Http2Session + uint8_t *setting = reinterpret_cast<uint8_t *> + (self->mInputFrameBuffer.get()) + kFrameHeaderBytes + index * 6; + +- uint16_t id = PR_ntohs(*reinterpret_cast<uint16_t *>(setting)); +- uint32_t value = PR_ntohl(*reinterpret_cast<uint32_t *>(setting + 2)); ++ uint16_t id = NS_decodeN16(setting); ++ uint32_t value = NS_decodeN32(setting + 2); + LOG3(("Settings ID %u, Value %u", id, value)); + + switch (id) +@@ -1565,7 +1564,7 @@ Http2Session::RecvPushPromise(Http2Sessi + } + promiseLen = 4; + promisedID = +- PR_ntohl(*reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get() + kFrameHeaderBytes + paddingControlBytes)); ++ NS_decodeN32(self->mInputFrameBuffer.get() + kFrameHeaderBytes + paddingControlBytes); + promisedID &= 0x7fffffff; + } + +@@ -1828,11 +1827,11 @@ Http2Session::RecvGoAway(Http2Session *s + + self->mShouldGoAway = true; + self->mGoAwayID = +- PR_ntohl(*reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get() + kFrameHeaderBytes)); ++ NS_decodeN32(self->mInputFrameBuffer.get() + kFrameHeaderBytes); + self->mGoAwayID &= 0x7fffffff; + self->mCleanShutdown = true; + uint32_t statusCode = +- PR_ntohl(*reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get() + kFrameHeaderBytes + 4)); ++ NS_decodeN32(self->mInputFrameBuffer.get() + kFrameHeaderBytes + 4); + + // Find streams greater than the last-good ID and mark them for deletion + // in the mGoAwayStreamsToRestart queue with the GoAwayEnumerator. The +@@ -1906,7 +1905,7 @@ Http2Session::RecvWindowUpdate(Http2Sess + } + + uint32_t delta = +- PR_ntohl(*reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get() + kFrameHeaderBytes)); ++ NS_decodeN32(self->mInputFrameBuffer.get() + kFrameHeaderBytes); + delta &= 0x7fffffff; + + LOG3(("Http2Session::RecvWindowUpdate %p len=%d Stream 0x%X.\n", +@@ -2543,7 +2542,7 @@ Http2Session::WriteSegments(nsAHttpSegme + + // 3 bytes of length, 1 type byte, 1 flag byte, 1 unused bit, 31 bits of ID + uint8_t totallyWastedByte = mInputFrameBuffer.get()[0]; +- mInputFrameDataSize = PR_ntohs(*reinterpret_cast<uint16_t *>(mInputFrameBuffer.get() + 1)); ++ mInputFrameDataSize = NS_decodeN16(mInputFrameBuffer.get() + 1); + if (totallyWastedByte || (mInputFrameDataSize > kMaxFrameData)) { + LOG3(("Got frame too large 0x%02X%04X", totallyWastedByte, mInputFrameDataSize)); + RETURN_SESSION_ERROR(this, PROTOCOL_ERROR); +@@ -2551,7 +2550,7 @@ Http2Session::WriteSegments(nsAHttpSegme + mInputFrameType = *reinterpret_cast<uint8_t *>(mInputFrameBuffer.get() + kFrameLengthBytes); + mInputFrameFlags = *reinterpret_cast<uint8_t *>(mInputFrameBuffer.get() + kFrameLengthBytes + kFrameTypeBytes); + mInputFrameID = +- PR_ntohl(*reinterpret_cast<uint32_t *>(mInputFrameBuffer.get() + kFrameLengthBytes + kFrameTypeBytes + kFrameFlagBytes)); ++ NS_decodeN32(mInputFrameBuffer.get() + kFrameLengthBytes + kFrameTypeBytes + kFrameFlagBytes); + mInputFrameID &= 0x7fffffff; + mInputFrameDataRead = 0; + diff --git a/mail/thunderbird/patches/patch-mozilla_ostream b/mail/thunderbird/patches/patch-mozilla_ostream deleted file mode 100644 index e38e52b3a71..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_ostream +++ /dev/null @@ -1,8 +0,0 @@ -$NetBSD: patch-mozilla_ostream,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/ostream.orig 2014-07-27 06:20:09.000000000 +0000 -+++ mozilla/ostream -@@ -0,0 +1,3 @@ -+#pragma GCC visibility push(default) -+#include_next <ostream> -+#pragma GCC visibility pop diff --git a/mail/thunderbird/patches/patch-mozilla_probes_Makefile.in b/mail/thunderbird/patches/patch-mozilla_probes_Makefile.in deleted file mode 100644 index 8aec434c5fd..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_probes_Makefile.in +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_probes_Makefile.in,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/probes/Makefile.in.orig 2014-07-18 00:05:48.000000000 +0000 -+++ mozilla/probes/Makefile.in -@@ -7,7 +7,7 @@ export:: $(DIST)/include/mozilla-trace.h - - # Replace _DTRACE_VERSION with INCLUDE_MOZILLA_DTRACE - $(DIST)/include/mozilla-trace.h: mozilla-trace.d Makefile -- dtrace -h -s $(srcdir)/mozilla-trace.d -o mozilla-trace.h.tmp -+ dtrace -x nolibs -h -s $(srcdir)/mozilla-trace.d -o mozilla-trace.h.tmp - sed -e 's/if _DTRACE_VERSION/ifdef INCLUDE_MOZILLA_DTRACE/' \ - mozilla-trace.h.tmp > $(DIST)/include/mozilla-trace.h - rm mozilla-trace.h.tmp diff --git a/mail/thunderbird/patches/patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp b/mail/thunderbird/patches/patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp index 5601ebe0497..0c5f0a7cf0c 100644 --- a/mail/thunderbird/patches/patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp +++ b/mail/thunderbird/patches/patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp @@ -1,12 +1,12 @@ -$NetBSD: patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp,v 1.1 2013/11/12 20:50:51 ryoon Exp $ +$NetBSD: patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/security/manager/ssl/src/nsNSSComponent.cpp.orig 2013-10-23 22:09:16.000000000 +0000 +--- mozilla/security/manager/ssl/src/nsNSSComponent.cpp.orig 2015-06-08 17:49:16.000000000 +0000 +++ mozilla/security/manager/ssl/src/nsNSSComponent.cpp -@@ -49,6 +49,7 @@ - +@@ -43,6 +43,7 @@ #include "nss.h" + #include "pkix/pkixnss.h" #include "ssl.h" +#define NSS_ENABLE_ECC 1 #include "sslproto.h" #include "secmod.h" - #include "secmime.h" + #include "secerr.h" diff --git a/mail/thunderbird/patches/patch-mozilla_storage_src_moz.build b/mail/thunderbird/patches/patch-mozilla_storage_src_moz.build deleted file mode 100644 index dc115be785c..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_storage_src_moz.build +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-mozilla_storage_src_moz.build,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/storage/src/moz.build.orig 2014-07-18 00:05:51.000000000 +0000 -+++ mozilla/storage/src/moz.build -@@ -48,11 +48,14 @@ FINAL_LIBRARY = 'storagecomps' - # (such as NSS) might trigger an initialization of sqlite and allocation - # of memory using the default allocator, prior to the storage service - # registering its allocator, causing memory management failures (bug 938730). -+# However, this is not an issue if both the jemalloc allocator and the default -+# allocator are the same thing. - # - # Note: On Windows our sqlite build assumes we use jemalloc. If you disable - # MOZ_STORAGE_MEMORY on Windows, you will also need to change the "ifdef - # MOZ_MEMORY" options in db/sqlite3/src/Makefile.in. --if CONFIG['MOZ_MEMORY'] and not CONFIG['MOZ_NATIVE_SQLITE']: -+if CONFIG['MOZ_MEMORY'] and (not CONFIG['MOZ_NATIVE_SQLITE'] -+ or CONFIG['MOZ_NATIVE_JEMALLOC']): - if CONFIG['OS_TARGET'] != 'Android': - DEFINES['MOZ_STORAGE_MEMORY'] = True - diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm b/mail/thunderbird/patches/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm index da4be401966..f3e2f440a76 100644 --- a/mail/thunderbird/patches/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm +++ b/mail/thunderbird/patches/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm @@ -1,9 +1,9 @@ -$NetBSD: patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm,v 1.1 2014/07/27 20:05:00 ryoon Exp $ +$NetBSD: patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm.orig 2014-07-18 00:05:52.000000000 +0000 +--- mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm.orig 2015-06-08 17:49:29.000000000 +0000 +++ mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm -@@ -400,7 +400,7 @@ - throw_on_negative("statvfs", UnixFile.statvfs(sourcePath, fileSystemInfoPtr)); +@@ -399,7 +399,7 @@ + throw_on_negative("statvfs", (UnixFile.statvfs || UnixFile.statfs)(sourcePath, fileSystemInfoPtr)); let bytes = new Type.uint64_t.implementation( - fileSystemInfo.f_bsize * fileSystemInfo.f_bavail); diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_library_libxul.mk b/mail/thunderbird/patches/patch-mozilla_toolkit_library_libxul.mk deleted file mode 100644 index d640873fc55..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_toolkit_library_libxul.mk +++ /dev/null @@ -1,73 +0,0 @@ -$NetBSD: patch-mozilla_toolkit_library_libxul.mk,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/toolkit/library/libxul.mk.orig 2014-07-18 00:05:54.000000000 +0000 -+++ mozilla/toolkit/library/libxul.mk -@@ -77,6 +77,34 @@ ifdef MOZ_NATIVE_HUNSPELL - EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS) - endif - -+ifdef MOZ_NATIVE_OGG -+EXTRA_DSO_LDOPTS += $(MOZ_OGG_LIBS) -+endif -+ -+ifdef MOZ_NATIVE_THEORA -+EXTRA_DSO_LDOPTS += $(MOZ_THEORA_LIBS) -+endif -+ -+ifdef MOZ_NATIVE_VORBIS -+EXTRA_DSO_LDOPTS += $(MOZ_VORBIS_LIBS) -+endif -+ -+ifdef MOZ_NATIVE_TREMOR -+EXTRA_DSO_LDOPTS += $(MOZ_TREMOR_LIBS) -+endif -+ -+ifdef MOZ_NATIVE_OPUS -+EXTRA_DSO_LDOPTS += $(MOZ_OPUS_LIBS) -+endif -+ -+ifdef MOZ_NATIVE_SPEEX -+EXTRA_DSO_LDOPTS += $(MOZ_SPEEX_LIBS) -+endif -+ -+ifdef MOZ_NATIVE_SOUNDTOUCH -+EXTRA_DSO_LDOPTS += $(MOZ_SOUNDTOUCH_LIBS) -+endif -+ - ifdef MOZ_NATIVE_LIBEVENT - EXTRA_DSO_LDOPTS += $(MOZ_LIBEVENT_LIBS) - endif -@@ -89,12 +117,24 @@ ifndef MOZ_TREE_PIXMAN - EXTRA_DSO_LDOPTS += $(MOZ_PIXMAN_LIBS) - endif - -+ifdef MOZ_NATIVE_GRAPHITE2 -+EXTRA_DSO_LDOPTS += $(MOZ_GRAPHITE2_LIBS) -+endif -+ -+ifdef MOZ_NATIVE_HARFBUZZ -+EXTRA_DSO_LDOPTS += $(MOZ_HARFBUZZ_LIBS) -+endif -+ - ifdef MOZ_DMD - EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,dmd,$(DIST)/lib) - endif - - EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib) - -+ifdef MOZ_LIBV4L2_LIBS -+EXTRA_DSO_LDOPTS += $(MOZ_LIBV4L2_LIBS) -+endif -+ - ifdef MOZ_WEBRTC - ifeq (WINNT,$(OS_TARGET)) - ifndef MOZ_HAS_WINSDK_WITH_D3D -@@ -231,7 +271,7 @@ ifdef MOZ_ENABLE_QT - EXTRA_DSO_LDOPTS += $(MOZ_QT_LDFLAGS) $(XEXT_LIBS) - endif - --ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) -+ifeq (Darwin,$(OS_ARCH)) - ifdef MOZ_GSTREAMER - EXTRA_DSO_LDOPTS += $(GSTREAMER_LIBS) - endif diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_library_moz.build b/mail/thunderbird/patches/patch-mozilla_toolkit_library_moz.build new file mode 100644 index 00000000000..cb636babbdd --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_toolkit_library_moz.build @@ -0,0 +1,69 @@ +$NetBSD: patch-mozilla_toolkit_library_moz.build,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/toolkit/library/moz.build.orig 2015-06-08 17:49:31.000000000 +0000 ++++ mozilla/toolkit/library/moz.build +@@ -214,6 +214,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']: +@@ -225,6 +226,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'] + +@@ -234,8 +259,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'] +@@ -365,7 +396,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': diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_modules_GMPInstallManager.jsm b/mail/thunderbird/patches/patch-mozilla_toolkit_modules_GMPInstallManager.jsm new file mode 100644 index 00000000000..0fc33b65d93 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_toolkit_modules_GMPInstallManager.jsm @@ -0,0 +1,30 @@ +$NetBSD: patch-mozilla_toolkit_modules_GMPInstallManager.jsm,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/toolkit/modules/GMPInstallManager.jsm.orig 2015-06-08 17:49:31.000000000 +0000 ++++ mozilla/toolkit/modules/GMPInstallManager.jsm +@@ -874,9 +874,7 @@ GMPDownloader.prototype = { + let gmpAddon = this._gmpAddon; + let installToDirPath = Cc["@mozilla.org/file/local;1"]. + createInstance(Ci.nsIFile); +- let path = OS.Path.join(OS.Constants.Path.profileDir, +- gmpAddon.id, +- gmpAddon.version); ++ let path = OS.Path.join(OS.Constants.Path.profileDir, gmpAddon.id); + installToDirPath.initWithPath(path); + log.info("install to directory path: " + installToDirPath.path); + let gmpInstaller = new GMPExtractor(zipPath, installToDirPath.path); +@@ -885,10 +883,12 @@ GMPDownloader.prototype = { + // Success, set the prefs + let now = Math.round(Date.now() / 1000); + GMPPrefs.set(GMPPrefs.KEY_PLUGIN_LAST_UPDATE, now, gmpAddon.id); +- // Setting the version pref signals installation completion to consumers, +- // if you need to set other prefs etc. do it before this. ++ // Setting the path pref signals installation completion to consumers, ++ // so set the version and potential other information they use first. + GMPPrefs.set(GMPPrefs.KEY_PLUGIN_VERSION, gmpAddon.version, + gmpAddon.id); ++ GMPPrefs.set(GMPPrefs.KEY_PLUGIN_PATH, ++ installToDirPath.path, gmpAddon.id); + this._deferred.resolve(extractedPaths); + }, err => { + this._deferred.reject(err); diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_modules_GMPUtils.jsm b/mail/thunderbird/patches/patch-mozilla_toolkit_modules_GMPUtils.jsm new file mode 100644 index 00000000000..f925119b203 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_toolkit_modules_GMPUtils.jsm @@ -0,0 +1,12 @@ +$NetBSD: patch-mozilla_toolkit_modules_GMPUtils.jsm,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/toolkit/modules/GMPUtils.jsm.orig 2015-06-08 17:49:31.000000000 +0000 ++++ mozilla/toolkit/modules/GMPUtils.jsm +@@ -74,6 +74,7 @@ this.GMPPrefs = { + KEY_EME_ENABLED: "media.eme.enabled", + KEY_PLUGIN_ENABLED: "media.{0}.enabled", + KEY_PLUGIN_LAST_UPDATE: "media.{0}.lastUpdate", ++ KEY_PLUGIN_PATH: "media.{0}.path", + KEY_PLUGIN_VERSION: "media.{0}.version", + KEY_PLUGIN_AUTOUPDATE: "media.{0}.autoupdate", + KEY_PLUGIN_FORCEVISIBLE: "media.{0}.forcevisible", diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_mozapps_extensions_internal_GMPProvider.jsm b/mail/thunderbird/patches/patch-mozilla_toolkit_mozapps_extensions_internal_GMPProvider.jsm new file mode 100644 index 00000000000..8a0c129d877 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_toolkit_mozapps_extensions_internal_GMPProvider.jsm @@ -0,0 +1,132 @@ +$NetBSD: patch-mozilla_toolkit_mozapps_extensions_internal_GMPProvider.jsm,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/toolkit/mozapps/extensions/internal/GMPProvider.jsm.orig 2015-06-08 17:49:31.000000000 +0000 ++++ mozilla/toolkit/mozapps/extensions/internal/GMPProvider.jsm +@@ -101,12 +101,11 @@ function GMPWrapper(aPluginInfo) { + Log.repository.getLoggerWithMessagePrefix("Toolkit.GMP", + "GMPWrapper(" + + this._plugin.id + ") "); +- Preferences.observe(GMPPrefs.getPrefKey(GMPPrefs.KEY_PLUGIN_ENABLED, +- this._plugin.id), ++ Preferences.observe(GMPPrefs.getPrefKey(GMPPrefs.KEY_PLUGIN_ENABLED, this._plugin.id), + this.onPrefEnabledChanged, this); +- Preferences.observe(GMPPrefs.getPrefKey(GMPPrefs.KEY_PLUGIN_VERSION, ++ Preferences.observe(GMPPrefs.getPrefKey(GMPPrefs.KEY_PLUGIN_PATH, + this._plugin.id), +- this.onPrefVersionChanged, this); ++ this.onPrefPathChanged, this); + if (this._plugin.isEME) { + Preferences.observe(GMPPrefs.KEY_EME_ENABLED, + this.onPrefEMEGlobalEnabledChanged, this); +@@ -123,17 +122,14 @@ GMPWrapper.prototype = { + optionsType: AddonManager.OPTIONS_TYPE_INLINE, + get optionsURL() { return this._plugin.optionsURL; }, + ++ + set gmpPath(aPath) { this._gmpPath = aPath; }, + get gmpPath() { +- if (!this._gmpPath && this.isInstalled) { +- this._gmpPath = OS.Path.join(OS.Constants.Path.profileDir, +- this._plugin.id, +- GMPPrefs.get(GMPPrefs.KEY_PLUGIN_VERSION, +- null, this._plugin.id)); ++ if (!this._gmpPath) { ++ this._gmpPath = GMPPrefs.get(GMPPrefs.KEY_PLUGIN_PATH, null, this._plugin.id); + } + return this._gmpPath; + }, +- + get id() { return this._plugin.id; }, + get type() { return "plugin"; }, + get isGMPlugin() { return true; }, +@@ -144,8 +140,13 @@ GMPWrapper.prototype = { + get description() { return this._plugin.description; }, + get fullDescription() { return this._plugin.fullDescription; }, + +- get version() { return GMPPrefs.get(GMPPrefs.KEY_PLUGIN_VERSION, null, +- this._plugin.id); }, ++ get version() { ++ if (this.isInstalled) { ++ return GMPPrefs.get(GMPPrefs.KEY_PLUGIN_VERSION, null, ++ this._plugin.id); ++ } ++ return null; ++ }, + + get isActive() { return !this.appDisabled && !this.userDisabled; }, + get appDisabled() { +@@ -292,24 +293,17 @@ GMPWrapper.prototype = { + + get pluginMimeTypes() { return []; }, + get pluginLibraries() { +- if (this.isInstalled) { +- let path = this.version; +- return [path]; +- } +- return []; ++ let path = GMPPrefs.get(GMPPrefs.KEY_PLUGIN_PATH, null, this._plugin.id); ++ return path && path.length ? [OS.Path.basename(path)] : []; + }, + get pluginFullpath() { +- if (this.isInstalled) { +- let path = OS.Path.join(OS.Constants.Path.profileDir, +- this._plugin.id, +- this.version); +- return [path]; +- } +- return []; ++ let path = GMPPrefs.get(GMPPrefs.KEY_PLUGIN_PATH, null, this._plugin.id); ++ return path && path.length ? [path] : []; + }, + + get isInstalled() { +- return this.version && this.version.length > 0; ++ let path = GMPPrefs.get(GMPPrefs.KEY_PLUGIN_PATH, null, this._plugin.id); ++ return path && path.length > 0; + }, + + _handleEnabledChanged: function() { +@@ -389,10 +383,10 @@ GMPWrapper.prototype = { + } + }, + +- onPrefVersionChanged: function() { ++ onPrefPathChanged: function() { + AddonManagerPrivate.callAddonListeners("onUninstalling", this, false); + if (this._gmpPath) { +- this._log.info("onPrefVersionChanged() - unregistering gmp directory " + ++ this._log.info("onPrefPathChanged() - unregistering gmp directory " + + this._gmpPath); + gmpService.removeAndDeletePluginDirectory(this._gmpPath, true /* can defer */); + } +@@ -401,15 +395,10 @@ GMPWrapper.prototype = { + AddonManagerPrivate.callInstallListeners("onExternalInstall", null, this, + null, false); + AddonManagerPrivate.callAddonListeners("onInstalling", this, false); +- this._gmpPath = null; +- if (this.isInstalled) { +- this._gmpPath = OS.Path.join(OS.Constants.Path.profileDir, +- this._plugin.id, +- GMPPrefs.get(GMPPrefs.KEY_PLUGIN_VERSION, +- null, this._plugin.id)); +- } ++ this._gmpPath = GMPPrefs.get(GMPPrefs.KEY_PLUGIN_PATH, ++ null, this._plugin.id); + if (this._gmpPath && this.isActive) { +- this._log.info("onPrefVersionChanged() - registering gmp directory " + ++ this._log.info("onPrefPathChanged() - registering gmp directory " + + this._gmpPath); + gmpService.addPluginDirectory(this._gmpPath); + } +@@ -431,9 +420,9 @@ GMPWrapper.prototype = { + Preferences.ignore(GMPPrefs.getPrefKey(GMPPrefs.KEY_PLUGIN_ENABLED, + this._plugin.id), + this.onPrefEnabledChanged, this); +- Preferences.ignore(GMPPrefs.getPrefKey(GMPPrefs.KEY_PLUGIN_VERSION, ++ Preferences.ignore(GMPPrefs.getPrefKey(GMPPrefs.KEY_PLUGIN_PATH, + this._plugin.id), +- this.onPrefVersionChanged, this); ++ this.onPrefPathChanged, this); + if (this._plugin.isEME) { + Preferences.ignore(GMPPrefs.KEY_EME_ENABLED, + this.onPrefEMEGlobalEnabledChanged, this); diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_toolkit.mozbuild b/mail/thunderbird/patches/patch-mozilla_toolkit_toolkit.mozbuild deleted file mode 100644 index 45751627890..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_toolkit_toolkit.mozbuild +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-mozilla_toolkit_toolkit.mozbuild,v 1.2 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/toolkit/toolkit.mozbuild.orig 2014-07-18 00:05:56.000000000 +0000 -+++ mozilla/toolkit/toolkit.mozbuild -@@ -40,8 +40,8 @@ add_tier_dir('platform', [ - if CONFIG['MOZ_AUTH_EXTENSION']: - add_tier_dir('platform', 'extensions/auth') - --if CONFIG['MOZ_UPDATER']: -- add_tier_dir('platform', 'other-licenses/bsdiff') -+#if CONFIG['MOZ_UPDATER']: -+# add_tier_dir('platform', 'other-licenses/bsdiff') - - # Gecko/Core components. - diff --git a/mail/thunderbird/patches/patch-mozilla_toolkit_xre_nsAppRunner.cpp b/mail/thunderbird/patches/patch-mozilla_toolkit_xre_nsAppRunner.cpp new file mode 100644 index 00000000000..a46802d6e3f --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_toolkit_xre_nsAppRunner.cpp @@ -0,0 +1,31 @@ +$NetBSD: patch-mozilla_toolkit_xre_nsAppRunner.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/toolkit/xre/nsAppRunner.cpp.orig 2015-06-08 17:49:32.000000000 +0000 ++++ mozilla/toolkit/xre/nsAppRunner.cpp +@@ -1808,6 +1808,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; +@@ -1821,6 +1833,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 diff --git a/mail/thunderbird/patches/patch-mozilla_unwind.h b/mail/thunderbird/patches/patch-mozilla_unwind.h deleted file mode 100644 index 8cb83b33790..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_unwind.h +++ /dev/null @@ -1,9 +0,0 @@ -$NetBSD: patch-mozilla_unwind.h,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/unwind.h.orig 2014-07-27 06:20:09.000000000 +0000 -+++ mozilla/unwind.h -@@ -0,0 +1,4 @@ -+#pragma GCC system_header -+#pragma GCC visibility push(default) -+#include_next <unwind.h> -+#pragma GCC visibility pop diff --git a/mail/thunderbird/patches/patch-mozilla_webapprt_moz.build b/mail/thunderbird/patches/patch-mozilla_webapprt_moz.build index a676c264b8d..18e0d686d8f 100644 --- a/mail/thunderbird/patches/patch-mozilla_webapprt_moz.build +++ b/mail/thunderbird/patches/patch-mozilla_webapprt_moz.build @@ -1,6 +1,6 @@ -$NetBSD: patch-mozilla_webapprt_moz.build,v 1.1 2014/07/27 20:05:00 ryoon Exp $ +$NetBSD: patch-mozilla_webapprt_moz.build,v 1.2 2015/07/09 15:17:34 ryoon Exp $ ---- mozilla/webapprt/moz.build.orig 2014-07-18 00:05:56.000000000 +0000 +--- mozilla/webapprt/moz.build.orig 2015-06-08 17:49:33.000000000 +0000 +++ mozilla/webapprt/moz.build @@ -6,7 +6,7 @@ @@ -9,12 +9,5 @@ $NetBSD: patch-mozilla_webapprt_moz.build,v 1.1 2014/07/27 20:05:00 ryoon Exp $ -elif CONFIG['OS_ARCH'] == 'Darwin': +elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': DIRS += ['mac'] - elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk2': - DIRS += ['gtk2'] -@@ -45,4 +45,4 @@ if CONFIG['MOZILLA_OFFICIAL']: - DEFINES['GRE_MILESTONE'] = CONFIG['GRE_MILESTONE'] - DEFINES['MOZ_APP_BASENAME'] = CONFIG['MOZ_APP_BASENAME'] - --JAR_MANIFESTS += ['jar.mn'] -\ No newline at end of file -+JAR_MANIFESTS += ['jar.mn'] + elif CONFIG['MOZ_ENABLE_GTK']: + DIRS += ['gtk'] diff --git a/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtk2drawing.c b/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtk2drawing.c new file mode 100644 index 00000000000..aabaf457d94 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtk2drawing.c @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_widget_gtk_gtk2drawing.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/widget/gtk/gtk2drawing.c.orig 2015-06-08 17:49:33.000000000 +0000 ++++ mozilla/widget/gtk/gtk2drawing.c +@@ -831,7 +831,7 @@ moz_gtk_get_focus_outline_size(gint* foc + return MOZ_GTK_SUCCESS; + } + +-gint ++static gint + moz_gtk_widget_get_focus(GtkWidget* widget, gboolean* interior_focus, + gint* focus_width, gint* focus_pad) + { +@@ -928,7 +928,7 @@ moz_gtk_splitter_get_metrics(gint orient + return MOZ_GTK_SUCCESS; + } + +-gint ++static gint + moz_gtk_button_get_inner_border(GtkWidget* widget, GtkBorder* inner_border) + { + static const GtkBorder default_inner_border = { 1, 1, 1, 1 }; diff --git a/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtk3drawing.c b/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtk3drawing.c new file mode 100644 index 00000000000..5853622c2f2 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtk3drawing.c @@ -0,0 +1,833 @@ +$NetBSD: patch-mozilla_widget_gtk_gtk3drawing.c,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/widget/gtk/gtk3drawing.c.orig 2015-06-08 17:49:33.000000000 +0000 ++++ mozilla/widget/gtk/gtk3drawing.c +@@ -65,6 +65,7 @@ static GtkWidget* gScrolledWindowWidget; + static style_prop_t style_prop_func; + static gboolean have_arrow_scaling; + static gboolean checkbox_check_state; ++static gboolean notebook_has_tab_gap; + static gboolean is_initialized; + + #define ARROW_UP 0 +@@ -725,6 +726,14 @@ moz_gtk_init() + else + checkbox_check_state = GTK_STATE_FLAG_ACTIVE; + ++ if(!gtk_check_version(3, 12, 0)) { ++ ensure_tab_widget(); ++ gtk_widget_style_get(gTabWidget, "has-tab-gap", ¬ebook_has_tab_gap, NULL); ++ } ++ else { ++ notebook_has_tab_gap = TRUE; ++ } ++ + /* Add style property to GtkEntry. + * Adding the style property to the normal GtkEntry class means that it + * will work without issues inside GtkComboBox and for Spinbuttons. */ +@@ -762,37 +771,17 @@ moz_gtk_radio_get_metrics(gint* indicato + gint + moz_gtk_get_focus_outline_size(gint* focus_h_width, gint* focus_v_width) + { +- gboolean interior_focus; +- gint focus_width = 0; ++ GtkBorder border; ++ GtkBorder padding; ++ GtkStyleContext *style; + + ensure_entry_widget(); +- gtk_widget_style_get(gEntryWidget, +- "interior-focus", &interior_focus, +- "focus-line-width", &focus_width, +- NULL); +- if (interior_focus) { +- GtkBorder border; +- GtkStyleContext *style = gtk_widget_get_style_context(gEntryWidget); +- gtk_style_context_get_border(style, 0, &border); +- *focus_h_width = border.left + focus_width; +- *focus_v_width = border.top + focus_width; +- } else { +- *focus_h_width = focus_width; +- *focus_v_width = focus_width; +- } +- return MOZ_GTK_SUCCESS; +-} +- +-gint +-moz_gtk_widget_get_focus(GtkWidget* widget, gboolean* interior_focus, +- gint* focus_width, gint* focus_pad) +-{ +- gtk_widget_style_get (widget, +- "interior-focus", interior_focus, +- "focus-line-width", focus_width, +- "focus-padding", focus_pad, +- NULL); ++ style = gtk_widget_get_style_context(gEntryWidget); + ++ gtk_style_context_get_border(style, 0, &border); ++ gtk_style_context_get_padding(style, 0, &padding); ++ *focus_h_width = border.left + padding.left; ++ *focus_v_width = border.top + padding.top; + return MOZ_GTK_SUCCESS; + } + +@@ -880,24 +869,6 @@ moz_gtk_splitter_get_metrics(gint orient + return MOZ_GTK_SUCCESS; + } + +-gint +-moz_gtk_button_get_inner_border(GtkWidget* widget, GtkBorder* inner_border) +-{ +- static const GtkBorder default_inner_border = { 1, 1, 1, 1 }; +- GtkBorder *tmp_border; +- +- gtk_widget_style_get (widget, "inner-border", &tmp_border, NULL); +- +- if (tmp_border) { +- *inner_border = *tmp_border; +- gtk_border_free(tmp_border); +- } +- else +- *inner_border = default_inner_border; +- +- return MOZ_GTK_SUCCESS; +-} +- + static gint + moz_gtk_button_paint(cairo_t *cr, GdkRectangle* rect, + GtkWidgetState* state, +@@ -908,19 +879,8 @@ moz_gtk_button_paint(cairo_t *cr, GdkRec + GtkStyleContext* style = gtk_widget_get_style_context(widget); + gint x = rect->x, y=rect->y, width=rect->width, height=rect->height; + +- gboolean interior_focus; +- gint focus_width, focus_pad; +- +- moz_gtk_widget_get_focus(widget, &interior_focus, &focus_width, &focus_pad); + gtk_widget_set_direction(widget, direction); +- +- if (!interior_focus && state->focused) { +- x += focus_width + focus_pad; +- y += focus_width + focus_pad; +- width -= 2 * (focus_width + focus_pad); +- height -= 2 * (focus_width + focus_pad); +- } +- ++ + gtk_style_context_save(style); + gtk_style_context_set_state(style, state_flags); + +@@ -953,20 +913,12 @@ moz_gtk_button_paint(cairo_t *cr, GdkRec + } + + if (state->focused) { +- if (interior_focus) { +- GtkBorder border; +- gtk_style_context_get_border(style, state_flags, &border); +- x += border.left + focus_pad; +- y += border.top + focus_pad; +- width -= 2 * (border.left + focus_pad); +- height -= 2 * (border.top + focus_pad); +- } else { +- x -= focus_width + focus_pad; +- y -= focus_width + focus_pad; +- width += 2 * (focus_width + focus_pad); +- height += 2 * (focus_width + focus_pad); +- } +- ++ GtkBorder border; ++ gtk_style_context_get_border(style, state_flags, &border); ++ x += border.left; ++ y += border.top; ++ width -= (border.left + border.right); ++ height -= (border.top + border.bottom); + gtk_render_focus(style, cr, x, y, width, height); + } + gtk_style_context_restore(style); +@@ -1056,33 +1008,23 @@ calculate_button_inner_rect(GtkWidget* b + GtkTextDirection direction, + gboolean ignore_focus) + { +- GtkBorder inner_border; +- gboolean interior_focus; +- gint focus_width, focus_pad; + GtkStyleContext* style; + GtkBorder border; ++ GtkBorder padding = {0, 0, 0, 0}; + + style = gtk_widget_get_style_context(button); + + /* This mirrors gtkbutton's child positioning */ +- moz_gtk_button_get_inner_border(button, &inner_border); +- moz_gtk_widget_get_focus(button, &interior_focus, +- &focus_width, &focus_pad); +- +- if (ignore_focus) +- focus_width = focus_pad = 0; +- + gtk_style_context_get_border(style, 0, &border); ++ if (!ignore_focus) ++ gtk_style_context_get_padding(style, 0, &padding); + +- inner_rect->x = rect->x + border.left + focus_width + focus_pad; +- inner_rect->x += direction == GTK_TEXT_DIR_LTR ? +- inner_border.left : inner_border.right; +- inner_rect->y = rect->y + inner_border.top + border.top + +- focus_width + focus_pad; +- inner_rect->width = MAX(1, rect->width - inner_border.left - +- inner_border.right - (border.left + focus_pad + focus_width) * 2); +- inner_rect->height = MAX(1, rect->height - inner_border.top - +- inner_border.bottom - (border.top + focus_pad + focus_width) * 2); ++ inner_rect->x = rect->x + border.left + padding.left; ++ inner_rect->y = rect->y + padding.top + border.top; ++ inner_rect->width = MAX(1, rect->width - padding.left - ++ padding.right - border.left * 2); ++ inner_rect->height = MAX(1, rect->height - padding.top - ++ padding.bottom - border.top * 2); + + return MOZ_GTK_SUCCESS; + } +@@ -1230,6 +1172,7 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWi + GtkStyleContext* style; + GtkScrollbar *scrollbar; + GtkAdjustment *adj; ++ GtkBorder margin; + + ensure_scrollbar_widget(); + +@@ -1239,15 +1182,20 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWi + scrollbar = GTK_SCROLLBAR(gVertScrollbarWidget); + + gtk_widget_set_direction(GTK_WIDGET(scrollbar), direction); +- ++ + style = gtk_widget_get_style_context(GTK_WIDGET(scrollbar)); + gtk_style_context_save(style); +- ++ + gtk_style_context_add_class(style, GTK_STYLE_CLASS_SLIDER); + gtk_style_context_set_state(style, state_flags); + +- gtk_render_slider(style, cr, rect->x, rect->y, +- rect->width, rect->height, ++ gtk_style_context_get_margin (style, state_flags, &margin); ++ ++ gtk_render_slider(style, cr, ++ rect->x + margin.left, ++ rect->y + margin.top, ++ rect->width - margin.left - margin.right, ++ rect->height - margin.top - margin.bottom, + (widget == MOZ_GTK_SCROLLBAR_THUMB_HORIZONTAL) ? + GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL); + +@@ -1451,19 +1399,12 @@ moz_gtk_entry_paint(cairo_t *cr, GdkRect + { + gint x = rect->x, y = rect->y, width = rect->width, height = rect->height; + GtkStyleContext* style; +- gboolean interior_focus; +- gint focus_width; + int draw_focus_outline_only = state->depressed; // NS_THEME_FOCUS_OUTLINE + + gtk_widget_set_direction(widget, direction); + + style = gtk_widget_get_style_context(widget); + +- gtk_widget_style_get(widget, +- "interior-focus", &interior_focus, +- "focus-line-width", &focus_width, +- NULL); +- + if (draw_focus_outline_only) { + // Inflate the given 'rect' with the focus outline size. + gint h, v; +@@ -1495,14 +1436,6 @@ moz_gtk_entry_paint(cairo_t *cr, GdkRect + /* This will get us the lit borders that focused textboxes enjoy on + * some themes. */ + gtk_style_context_set_state(style, GTK_STATE_FLAG_FOCUSED); +- if (!interior_focus) { +- /* Indent the border a little bit if we have exterior focus +- (this is what GTK does to draw native entries) */ +- x += focus_width; +- y += focus_width; +- width -= 2 * focus_width; +- height -= 2 * focus_width; +- } + } + + if (state->disabled) { +@@ -1514,11 +1447,6 @@ moz_gtk_entry_paint(cairo_t *cr, GdkRect + } + gtk_render_frame(style, cr, x, y, width, height); + +- if (state->focused && !state->disabled) { +- if (!interior_focus) { +- gtk_render_focus(style, cr, rect->x, rect->y, rect->width, rect->height); +- } +- } + gtk_style_context_restore(style); + + return MOZ_GTK_SUCCESS; +@@ -1823,8 +1751,6 @@ moz_gtk_container_paint(cairo_t *cr, Gdk + GtkStateFlags state_flags = GetStateFlagsFromGtkWidgetState(state); + GtkStyleContext* style; + GtkWidget *widget; +- gboolean interior_focus; +- gint focus_width, focus_pad; + + if (isradio) { + ensure_radiobutton_widget(); +@@ -1837,7 +1763,6 @@ moz_gtk_container_paint(cairo_t *cr, Gdk + + style = gtk_widget_get_style_context(widget); + gtk_style_context_save(style); +- moz_gtk_widget_get_focus(widget, &interior_focus, &focus_width, &focus_pad); + gtk_style_context_set_state(style, state_flags); + + /* this is for drawing a prelight box */ +@@ -1846,10 +1771,6 @@ moz_gtk_container_paint(cairo_t *cr, Gdk + rect->x, rect->y, rect->width, rect->height); + } + +- if (state->focused && !interior_focus) { +- gtk_render_focus(style, cr, +- rect->x, rect->y, rect->width, rect->height); +- } + gtk_style_context_restore(style); + + return MOZ_GTK_SUCCESS; +@@ -1862,7 +1783,6 @@ moz_gtk_toggle_label_paint(cairo_t *cr, + { + GtkStyleContext *style; + GtkWidget *widget; +- gboolean interior_focus; + + if (!state->focused) + return MOZ_GTK_SUCCESS; +@@ -1883,10 +1803,6 @@ moz_gtk_toggle_label_paint(cairo_t *cr, + } + gtk_widget_set_direction(widget, direction); + +- gtk_widget_style_get(widget, "interior-focus", &interior_focus, NULL); +- if (!interior_focus) +- return MOZ_GTK_SUCCESS; +- + gtk_style_context_set_state(style, GetStateFlagsFromGtkWidgetState(state)); + gtk_render_focus(style, cr, + rect->x, rect->y, rect->width, rect->height); +@@ -2105,6 +2021,9 @@ moz_gtk_get_tab_thickness(void) + GtkStyleContext * style; + + ensure_tab_widget(); ++ if (!notebook_has_tab_gap) ++ return 0; /* tabs do not overdraw the tabpanel border with "no gap" style */ ++ + style = gtk_widget_get_style_context(gTabWidget); + gtk_style_context_add_class(style, GTK_STYLE_CLASS_NOTEBOOK); + gtk_style_context_get_border(style, 0, &border); +@@ -2150,7 +2069,7 @@ moz_gtk_tab_paint(cairo_t *cr, GdkRectan + ensure_tab_widget(); + gtk_widget_set_direction(gTabWidget, direction); + +- style = gtk_widget_get_style_context(gTabWidget); ++ style = gtk_widget_get_style_context(gTabWidget); + gtk_style_context_save(style); + moz_gtk_tab_prepare_style_context(style, flags); + +@@ -2167,143 +2086,155 @@ moz_gtk_tab_paint(cairo_t *cr, GdkRectan + + focusRect = backRect = tabRect; + +- if ((flags & MOZ_GTK_TAB_SELECTED) == 0) { +- /* Only draw the tab */ +- gtk_render_extension(style, cr, +- tabRect.x, tabRect.y, tabRect.width, tabRect.height, +- (flags & MOZ_GTK_TAB_BOTTOM) ? +- GTK_POS_TOP : GTK_POS_BOTTOM ); +- } else { +- /* Draw the tab and the gap +- * We want the gap to be positioned exactly on the tabpanel top +- * border; since tabbox.css may set a negative margin so that the tab +- * frame rect already overlaps the tabpanel frame rect, we need to take +- * that into account when drawing. To that effect, nsNativeThemeGTK +- * passes us this negative margin (bmargin in the graphic below) in the +- * lowest bits of |flags|. We use it to set gap_voffset, the distance +- * between the top of the gap and the bottom of the tab (resp. the +- * bottom of the gap and the top of the tab when we draw a bottom tab), +- * while ensuring that the gap always touches the border of the tab, +- * i.e. 0 <= gap_voffset <= gap_height, to avoid surprinsing results +- * with big negative or positive margins. +- * Here is a graphical explanation in the case of top tabs: +- * ___________________________ +- * / \ +- * | T A B | +- * ----------|. . . . . . . . . . . . . . .|----- top of tabpanel +- * : ^ bmargin : ^ +- * : | (-negative margin, : | +- * bottom : v passed in flags) : | gap_height +- * of -> :.............................: | (the size of the +- * the tab . part of the gap . | tabpanel top border) +- * . outside of the tab . v +- * ---------------------------------------------- +- * +- * To draw the gap, we use gtk_paint_box_gap(), see comment in +- * moz_gtk_tabpanels_paint(). This box_gap is made 3 * gap_height tall, +- * which should suffice to ensure that the only visible border is the +- * pierced one. If the tab is in the middle, we make the box_gap begin +- * a bit to the left of the tab and end a bit to the right, adjusting +- * the gap position so it still is under the tab, because we want the +- * rendering of a gap in the middle of a tabpanel. This is the role of +- * the gints gap_{l,r}_offset. On the contrary, if the tab is the +- * first, we align the start border of the box_gap with the start +- * border of the tab (left if LTR, right if RTL), by setting the +- * appropriate offset to 0.*/ +- gint gap_loffset, gap_roffset, gap_voffset, gap_height; +- +- /* Get height needed by the gap */ +- gap_height = moz_gtk_get_tab_thickness(); +- +- /* Extract gap_voffset from the first bits of flags */ +- gap_voffset = flags & MOZ_GTK_TAB_MARGIN_MASK; +- if (gap_voffset > gap_height) +- gap_voffset = gap_height; +- +- /* Set gap_{l,r}_offset to appropriate values */ +- gap_loffset = gap_roffset = 20; /* should be enough */ +- if (flags & MOZ_GTK_TAB_FIRST) { +- if (direction == GTK_TEXT_DIR_RTL) +- gap_roffset = initial_gap; +- else +- gap_loffset = initial_gap; +- } +- +- if (flags & MOZ_GTK_TAB_BOTTOM) { +- /* Draw the tab on bottom */ +- focusRect.y += gap_voffset; +- focusRect.height -= gap_voffset; +- ++ if (notebook_has_tab_gap) { ++ if ((flags & MOZ_GTK_TAB_SELECTED) == 0) { ++ /* Only draw the tab */ + gtk_render_extension(style, cr, +- tabRect.x, tabRect.y + gap_voffset, tabRect.width, +- tabRect.height - gap_voffset, GTK_POS_TOP); +- +- gtk_style_context_remove_region(style, GTK_STYLE_REGION_TAB); +- +- backRect.y += (gap_voffset - gap_height); +- backRect.height = gap_height; +- +- /* Draw the gap; erase with background color before painting in +- * case theme does not */ +- gtk_render_background(style, cr, backRect.x, backRect.y, +- backRect.width, backRect.height); +- cairo_save(cr); +- cairo_rectangle(cr, backRect.x, backRect.y, backRect.width, backRect.height); +- cairo_clip(cr); +- +- gtk_render_frame_gap(style, cr, +- tabRect.x - gap_loffset, +- tabRect.y + gap_voffset - 3 * gap_height, +- tabRect.width + gap_loffset + gap_roffset, +- 3 * gap_height, GTK_POS_BOTTOM, +- gap_loffset, gap_loffset + tabRect.width); +- cairo_restore(cr); ++ tabRect.x, tabRect.y, tabRect.width, tabRect.height, ++ (flags & MOZ_GTK_TAB_BOTTOM) ? ++ GTK_POS_TOP : GTK_POS_BOTTOM ); + } else { +- /* Draw the tab on top */ +- focusRect.height -= gap_voffset; +- gtk_render_extension(style, cr, +- tabRect.x, tabRect.y, tabRect.width, +- tabRect.height - gap_voffset, GTK_POS_BOTTOM); +- +- gtk_style_context_remove_region(style, GTK_STYLE_REGION_TAB); +- +- backRect.y += (tabRect.height - gap_voffset); +- backRect.height = gap_height; ++ /* Draw the tab and the gap ++ * We want the gap to be positioned exactly on the tabpanel top ++ * border; since tabbox.css may set a negative margin so that the tab ++ * frame rect already overlaps the tabpanel frame rect, we need to take ++ * that into account when drawing. To that effect, nsNativeThemeGTK ++ * passes us this negative margin (bmargin in the graphic below) in the ++ * lowest bits of |flags|. We use it to set gap_voffset, the distance ++ * between the top of the gap and the bottom of the tab (resp. the ++ * bottom of the gap and the top of the tab when we draw a bottom tab), ++ * while ensuring that the gap always touches the border of the tab, ++ * i.e. 0 <= gap_voffset <= gap_height, to avoid surprinsing results ++ * with big negative or positive margins. ++ * Here is a graphical explanation in the case of top tabs: ++ * ___________________________ ++ * / \ ++ * | T A B | ++ * ----------|. . . . . . . . . . . . . . .|----- top of tabpanel ++ * : ^ bmargin : ^ ++ * : | (-negative margin, : | ++ * bottom : v passed in flags) : | gap_height ++ * of -> :.............................: | (the size of the ++ * the tab . part of the gap . | tabpanel top border) ++ * . outside of the tab . v ++ * ---------------------------------------------- ++ * ++ * To draw the gap, we use gtk_paint_box_gap(), see comment in ++ * moz_gtk_tabpanels_paint(). This box_gap is made 3 * gap_height tall, ++ * which should suffice to ensure that the only visible border is the ++ * pierced one. If the tab is in the middle, we make the box_gap begin ++ * a bit to the left of the tab and end a bit to the right, adjusting ++ * the gap position so it still is under the tab, because we want the ++ * rendering of a gap in the middle of a tabpanel. This is the role of ++ * the gints gap_{l,r}_offset. On the contrary, if the tab is the ++ * first, we align the start border of the box_gap with the start ++ * border of the tab (left if LTR, right if RTL), by setting the ++ * appropriate offset to 0.*/ ++ gint gap_loffset, gap_roffset, gap_voffset, gap_height; ++ ++ /* Get height needed by the gap */ ++ gap_height = moz_gtk_get_tab_thickness(); ++ ++ /* Extract gap_voffset from the first bits of flags */ ++ gap_voffset = flags & MOZ_GTK_TAB_MARGIN_MASK; ++ if (gap_voffset > gap_height) ++ gap_voffset = gap_height; ++ ++ /* Set gap_{l,r}_offset to appropriate values */ ++ gap_loffset = gap_roffset = 20; /* should be enough */ ++ if (flags & MOZ_GTK_TAB_FIRST) { ++ if (direction == GTK_TEXT_DIR_RTL) ++ gap_roffset = initial_gap; ++ else ++ gap_loffset = initial_gap; ++ } + +- /* Draw the gap; erase with background color before painting in +- * case theme does not */ +- gtk_render_background(style, cr, backRect.x, backRect.y, +- backRect.width, backRect.height); +- +- cairo_save(cr); +- cairo_rectangle(cr, backRect.x, backRect.y, backRect.width, backRect.height); +- cairo_clip(cr); +- +- gtk_render_frame_gap(style, cr, +- tabRect.x - gap_loffset, +- tabRect.y + tabRect.height - gap_voffset, +- tabRect.width + gap_loffset + gap_roffset, +- 3 * gap_height, GTK_POS_TOP, +- gap_loffset, gap_loffset + tabRect.width); +- cairo_restore(cr); ++ if (flags & MOZ_GTK_TAB_BOTTOM) { ++ /* Draw the tab on bottom */ ++ focusRect.y += gap_voffset; ++ focusRect.height -= gap_voffset; ++ ++ gtk_render_extension(style, cr, ++ tabRect.x, tabRect.y + gap_voffset, tabRect.width, ++ tabRect.height - gap_voffset, GTK_POS_TOP); ++ ++ gtk_style_context_remove_region(style, GTK_STYLE_REGION_TAB); ++ ++ backRect.y += (gap_voffset - gap_height); ++ backRect.height = gap_height; ++ ++ /* Draw the gap; erase with background color before painting in ++ * case theme does not */ ++ gtk_render_background(style, cr, backRect.x, backRect.y, ++ backRect.width, backRect.height); ++ cairo_save(cr); ++ cairo_rectangle(cr, backRect.x, backRect.y, backRect.width, backRect.height); ++ cairo_clip(cr); ++ ++ gtk_render_frame_gap(style, cr, ++ tabRect.x - gap_loffset, ++ tabRect.y + gap_voffset - 3 * gap_height, ++ tabRect.width + gap_loffset + gap_roffset, ++ 3 * gap_height, GTK_POS_BOTTOM, ++ gap_loffset, gap_loffset + tabRect.width); ++ cairo_restore(cr); ++ } else { ++ /* Draw the tab on top */ ++ focusRect.height -= gap_voffset; ++ gtk_render_extension(style, cr, ++ tabRect.x, tabRect.y, tabRect.width, ++ tabRect.height - gap_voffset, GTK_POS_BOTTOM); ++ ++ gtk_style_context_remove_region(style, GTK_STYLE_REGION_TAB); ++ ++ backRect.y += (tabRect.height - gap_voffset); ++ backRect.height = gap_height; ++ ++ /* Draw the gap; erase with background color before painting in ++ * case theme does not */ ++ gtk_render_background(style, cr, backRect.x, backRect.y, ++ backRect.width, backRect.height); ++ ++ cairo_save(cr); ++ cairo_rectangle(cr, backRect.x, backRect.y, backRect.width, backRect.height); ++ cairo_clip(cr); ++ ++ gtk_render_frame_gap(style, cr, ++ tabRect.x - gap_loffset, ++ tabRect.y + tabRect.height - gap_voffset, ++ tabRect.width + gap_loffset + gap_roffset, ++ 3 * gap_height, GTK_POS_TOP, ++ gap_loffset, gap_loffset + tabRect.width); ++ cairo_restore(cr); ++ } + } ++ } else { ++ gtk_render_background(style, cr, tabRect.x, tabRect.y, tabRect.width, tabRect.height); ++ gtk_render_frame(style, cr, tabRect.x, tabRect.y, tabRect.width, tabRect.height); + } + ++ gtk_style_context_restore(style); ++ + if (state->focused) { + /* Paint the focus ring */ +- GtkBorder border; +- gtk_style_context_get_border(style, GetStateFlagsFromGtkWidgetState(state), &border); ++ GtkBorder padding; ++ ++ gtk_style_context_save(style); ++ moz_gtk_tab_prepare_style_context(style, flags); + +- focusRect.x += border.left; +- focusRect.width -= (border.left + border.right); +- focusRect.y += border.top; +- focusRect.height -= (border.top + border.bottom); ++ gtk_style_context_get_padding(style, GetStateFlagsFromGtkWidgetState(state), &padding); ++ ++ focusRect.x += padding.left; ++ focusRect.width -= (padding.left + padding.right); ++ focusRect.y += padding.top; ++ focusRect.height -= (padding.top + padding.bottom); + + gtk_render_focus(style, cr, + focusRect.x, focusRect.y, focusRect.width, focusRect.height); ++ ++ gtk_style_context_restore(style); + } + +- gtk_style_context_restore(style); + + return MOZ_GTK_SUCCESS; + } +@@ -2684,26 +2615,18 @@ moz_gtk_get_widget_border(GtkThemeWidget + switch (widget) { + case MOZ_GTK_BUTTON: + { +- GtkBorder inner_border; +- gboolean interior_focus; +- gint focus_width, focus_pad; +- + ensure_button_widget(); ++ style = gtk_widget_get_style_context(gButtonWidget); ++ + *left = *top = *right = *bottom = gtk_container_get_border_width(GTK_CONTAINER(gButtonWidget)); + + /* Don't add this padding in HTML, otherwise the buttons will + become too big and stuff the layout. */ + if (!inhtml) { +- moz_gtk_widget_get_focus(gButtonWidget, &interior_focus, &focus_width, &focus_pad); +- moz_gtk_button_get_inner_border(gButtonWidget, &inner_border); +- *left += focus_width + focus_pad + inner_border.left; +- *right += focus_width + focus_pad + inner_border.right; +- *top += focus_width + focus_pad + inner_border.top; +- *bottom += focus_width + focus_pad + inner_border.bottom; ++ moz_gtk_add_style_padding(style, left, top, right, bottom); + } + +- moz_gtk_add_style_border(gtk_widget_get_style_context(gButtonWidget), +- left, top, right, bottom); ++ moz_gtk_add_style_border(style, left, top, right, bottom); + return MOZ_GTK_SUCCESS; + } + case MOZ_GTK_ENTRY: +@@ -2711,7 +2634,13 @@ moz_gtk_get_widget_border(GtkThemeWidget + ensure_entry_widget(); + style = gtk_widget_get_style_context(gEntryWidget); + moz_gtk_add_style_border(style, left, top, right, bottom); +- moz_gtk_add_style_padding(style, left, top, right, bottom); ++ ++ /* Use the document padding in HTML ++ and GTK style padding in XUL. */ ++ if (!inhtml) { ++ moz_gtk_add_style_padding(style, left, top, right, bottom); ++ } ++ + return MOZ_GTK_SUCCESS; + } + case MOZ_GTK_TREEVIEW: +@@ -2731,23 +2660,15 @@ moz_gtk_get_widget_border(GtkThemeWidget + * assigned. + * That is why the following code is the same as for MOZ_GTK_BUTTON. + * */ +- +- GtkBorder inner_border; +- gboolean interior_focus; +- gint focus_width, focus_pad; ++ GtkStyleContext *style; + + ensure_tree_header_cell_widget(); + *left = *top = *right = *bottom = gtk_container_get_border_width(GTK_CONTAINER(gTreeHeaderCellWidget)); + +- moz_gtk_widget_get_focus(gTreeHeaderCellWidget, &interior_focus, &focus_width, &focus_pad); +- moz_gtk_button_get_inner_border(gTreeHeaderCellWidget, &inner_border); +- *left += focus_width + focus_pad + inner_border.left; +- *right += focus_width + focus_pad + inner_border.right; +- *top += focus_width + focus_pad + inner_border.top; +- *bottom += focus_width + focus_pad + inner_border.bottom; +- +- moz_gtk_add_style_border(gtk_widget_get_style_context(gTreeHeaderCellWidget), +- left, top, right, bottom); ++ style = gtk_widget_get_style_context(gTreeHeaderCellWidget); ++ ++ moz_gtk_add_style_border(style, left, top, right, bottom); ++ moz_gtk_add_style_padding(style, left, top, right, bottom); + return MOZ_GTK_SUCCESS; + } + case MOZ_GTK_TREE_HEADER_SORTARROW: +@@ -2767,29 +2688,23 @@ moz_gtk_get_widget_border(GtkThemeWidget + /* We need to account for the arrow on the dropdown, so text + * doesn't come too close to the arrow, or in some cases spill + * into the arrow. */ +- gboolean ignored_interior_focus, wide_separators; +- gint focus_width, focus_pad, separator_width; ++ gboolean wide_separators; ++ gint separator_width; + GtkRequisition arrow_req; + GtkBorder border; + + ensure_combo_box_widgets(); + +- *left = gtk_container_get_border_width(GTK_CONTAINER(gComboBoxButtonWidget)); ++ *left = *top = *right = *bottom = ++ gtk_container_get_border_width(GTK_CONTAINER(gComboBoxButtonWidget)); ++ ++ style = gtk_widget_get_style_context(gComboBoxButtonWidget); + + if (!inhtml) { +- moz_gtk_widget_get_focus(gComboBoxButtonWidget, +- &ignored_interior_focus, +- &focus_width, &focus_pad); +- *left += focus_width + focus_pad; ++ moz_gtk_add_style_padding(style, left, top, right, bottom); + } + +- style = gtk_widget_get_style_context(gComboBoxButtonWidget); +- gtk_style_context_get_border(style, 0, &border); +- +- *top = *left + border.top; +- *left += border.left; +- +- *right = *left; *bottom = *top; ++ moz_gtk_add_style_border(style, left, top, right, bottom); + + /* If there is no separator, don't try to count its width. */ + separator_width = 0; +@@ -2841,60 +2756,23 @@ moz_gtk_get_widget_border(GtkThemeWidget + ensure_frame_widget(); + w = gFrameWidget; + break; +- case MOZ_GTK_CHECKBUTTON_LABEL: +- case MOZ_GTK_RADIOBUTTON_LABEL: +- { +- gboolean interior_focus; +- gint focus_width, focus_pad; +- +- /* If the focus is interior, then the label has a border of +- (focus_width + focus_pad). */ +- if (widget == MOZ_GTK_CHECKBUTTON_LABEL) { +- ensure_checkbox_widget(); +- moz_gtk_widget_get_focus(gCheckboxWidget, &interior_focus, +- &focus_width, &focus_pad); +- } +- else { +- ensure_radiobutton_widget(); +- moz_gtk_widget_get_focus(gRadiobuttonWidget, &interior_focus, +- &focus_width, &focus_pad); +- } +- +- if (interior_focus) +- *left = *top = *right = *bottom = (focus_width + focus_pad); +- +- return MOZ_GTK_SUCCESS; +- } +- + case MOZ_GTK_CHECKBUTTON_CONTAINER: + case MOZ_GTK_RADIOBUTTON_CONTAINER: + { +- gboolean interior_focus; +- gint focus_width, focus_pad; +- +- /* If the focus is _not_ interior, then the container has a border +- of (focus_width + focus_pad). */ + if (widget == MOZ_GTK_CHECKBUTTON_CONTAINER) { + ensure_checkbox_widget(); +- moz_gtk_widget_get_focus(gCheckboxWidget, &interior_focus, +- &focus_width, &focus_pad); + w = gCheckboxWidget; + } else { + ensure_radiobutton_widget(); +- moz_gtk_widget_get_focus(gRadiobuttonWidget, &interior_focus, +- &focus_width, &focus_pad); + w = gRadiobuttonWidget; + } ++ style = gtk_widget_get_style_context(w); + + *left = *top = *right = *bottom = gtk_container_get_border_width(GTK_CONTAINER(w)); +- +- if (!interior_focus) { +- *left += (focus_width + focus_pad); +- *right += (focus_width + focus_pad); +- *top += (focus_width + focus_pad); +- *bottom += (focus_width + focus_pad); +- } +- ++ moz_gtk_add_style_border(style, ++ left, top, right, bottom); ++ moz_gtk_add_style_padding(style, ++ left, top, right, bottom); + return MOZ_GTK_SUCCESS; + } + case MOZ_GTK_MENUPOPUP: +@@ -2921,6 +2799,8 @@ moz_gtk_get_widget_border(GtkThemeWidget + return MOZ_GTK_SUCCESS; + } + /* These widgets have no borders, since they are not containers. */ ++ case MOZ_GTK_CHECKBUTTON_LABEL: ++ case MOZ_GTK_RADIOBUTTON_LABEL: + case MOZ_GTK_SPLITTER_HORIZONTAL: + case MOZ_GTK_SPLITTER_VERTICAL: + case MOZ_GTK_CHECKBUTTON: +@@ -2975,11 +2855,7 @@ moz_gtk_get_tab_border(gint* left, gint* + gtk_style_context_save(style); + moz_gtk_tab_prepare_style_context(style, flags); + +- // TODO add_style_border() should be replaced +- // with focus-line-width and focus-padding +- // see Bug 877605 + *left = *top = *right = *bottom = 0; +- moz_gtk_add_style_border(style, left, top, right, bottom); + moz_gtk_add_style_padding(style, left, top, right, bottom); + + gtk_widget_style_get (gTabWidget, "tab-curvature", &tab_curvature, NULL); +@@ -2990,16 +2866,9 @@ moz_gtk_get_tab_border(gint* left, gint* + int initial_gap; + gtk_widget_style_get (gTabWidget, "initial-gap", &initial_gap, NULL); + if (direction == GTK_TEXT_DIR_RTL) +- *right += initial_gap; ++ *right += initial_gap; + else +- *left += initial_gap; +- } +- +- // Top tabs have no bottom border, bottom tabs have no top border +- if (flags & MOZ_GTK_TAB_BOTTOM) { +- *top = 0; +- } else { +- *bottom = 0; ++ *left += initial_gap; + } + + gtk_style_context_restore(style); diff --git a/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtkdrawing.h b/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtkdrawing.h new file mode 100644 index 00000000000..ed06f077cd5 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_widget_gtk_gtkdrawing.h @@ -0,0 +1,41 @@ +$NetBSD: patch-mozilla_widget_gtk_gtkdrawing.h,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/widget/gtk/gtkdrawing.h.orig 2015-06-08 17:49:33.000000000 +0000 ++++ mozilla/widget/gtk/gtkdrawing.h +@@ -293,16 +293,6 @@ moz_gtk_checkbox_get_metrics(gint* indic + gint + moz_gtk_radio_get_metrics(gint* indicator_size, gint* indicator_spacing); + +-/** +- * Get the inner-border value for a GtkButton widget (button or tree header) +- * widget: [IN] the widget to get the border value for +- * inner_border: [OUT] the inner border +- * +- * returns: MOZ_GTK_SUCCESS if there was no error, an error code otherwise +- */ +-gint +-moz_gtk_button_get_inner_border(GtkWidget* widget, GtkBorder* inner_border); +- + /** Get the extra size for the focus ring for outline:auto. + * widget: [IN] the widget to get the focus metrics for + * focus_h_width: [OUT] the horizontal width +@@ -313,19 +303,6 @@ moz_gtk_button_get_inner_border(GtkWidge + gint + moz_gtk_get_focus_outline_size(gint* focus_h_width, gint* focus_v_width); + +-/** Get the focus metrics for a treeheadercell, button, checkbox, or radio button. +- * widget: [IN] the widget to get the focus metrics for +- * interior_focus: [OUT] whether the focus is drawn around the +- * label (TRUE) or around the whole container (FALSE) +- * focus_width: [OUT] the width of the focus line +- * focus_pad: [OUT] the padding between the focus line and children +- * +- * returns: MOZ_GTK_SUCCESS if there was no error, an error code otherwise +- */ +-gint +-moz_gtk_widget_get_focus(GtkWidget* widget, gboolean* interior_focus, +- gint* focus_width, gint* focus_pad); +- + /** Get the horizontal padding for the menuitem widget or checkmenuitem widget. + * horizontal_padding: [OUT] The left and right padding of the menuitem or checkmenuitem + * diff --git a/mail/thunderbird/patches/patch-mozilla_widget_gtk_nsNativeThemeGTK.cpp b/mail/thunderbird/patches/patch-mozilla_widget_gtk_nsNativeThemeGTK.cpp new file mode 100644 index 00000000000..211e1b9d0e9 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_widget_gtk_nsNativeThemeGTK.cpp @@ -0,0 +1,30 @@ +$NetBSD: patch-mozilla_widget_gtk_nsNativeThemeGTK.cpp,v 1.1 2015/07/09 15:17:34 ryoon Exp $ + +--- mozilla/widget/gtk/nsNativeThemeGTK.cpp.orig 2015-06-08 17:49:33.000000000 +0000 ++++ mozilla/widget/gtk/nsNativeThemeGTK.cpp +@@ -761,6 +761,8 @@ nsNativeThemeGTK::GetExtraSizeForWidget( + return false; + + gint gap_height = moz_gtk_get_tab_thickness(); ++ if (!gap_height) ++ return false; + + int32_t extra = gap_height - GetTabMarginPixels(aFrame); + if (extra <= 0) +@@ -1528,9 +1530,15 @@ nsNativeThemeGTK::GetWidgetTransparency( + case NS_THEME_MENUPOPUP: + case NS_THEME_WINDOW: + case NS_THEME_DIALOG: +- // Tooltips use gtk_paint_flat_box(). ++ return eOpaque; ++ // Tooltips use gtk_paint_flat_box() on Gtk2 ++ // but are shaped on Gtk3 + case NS_THEME_TOOLTIP: ++#if (MOZ_WIDGET_GTK == 2) + return eOpaque; ++#else ++ return eTransparent; ++#endif + } + + return eUnknownTransparency; diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsDebugImpl.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsDebugImpl.cpp deleted file mode 100644 index 6bb6d144e9d..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsDebugImpl.cpp +++ /dev/null @@ -1,88 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_base_nsDebugImpl.cpp,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/xpcom/base/nsDebugImpl.cpp.orig 2014-07-18 00:05:56.000000000 +0000 -+++ mozilla/xpcom/base/nsDebugImpl.cpp -@@ -44,12 +44,43 @@ - #endif - #endif - --#if defined(XP_MACOSX) -+#if defined(XP_MACOSX) || defined(__DragonFly__) || defined(__FreeBSD__) \ -+ || defined(__NetBSD__) || defined(__OpenBSD__) - #include <stdbool.h> - #include <unistd.h> -+#include <sys/param.h> - #include <sys/sysctl.h> - #endif - -+#if defined(__OpenBSD__) -+#include <sys/proc.h> -+#endif -+ -+#if defined(__DragonFly__) || defined(__FreeBSD__) -+#include <sys/user.h> -+#endif -+ -+#if defined(__NetBSD__) -+#undef KERN_PROC -+#define KERN_PROC KERN_PROC2 -+#define KINFO_PROC struct kinfo_proc2 -+#else -+#define KINFO_PROC struct kinfo_proc -+#endif -+ -+#if defined(XP_MACOSX) -+#define KP_FLAGS kp_proc.p_flag -+#elif defined(__DragonFly__) -+#define KP_FLAGS kp_flags -+#elif defined(__FreeBSD__) -+#define KP_FLAGS ki_flag -+#elif defined(__OpenBSD__) && !defined(_P_TRACED) -+#define KP_FLAGS p_psflags -+#define P_TRACED PS_TRACED -+#else -+#define KP_FLAGS p_flag -+#endif -+ - #include "mozilla/mozalloc_abort.h" - - static void -@@ -143,16 +174,22 @@ nsDebugImpl::GetIsDebuggerAttached(bool* - - #if defined(XP_WIN) - *aResult = ::IsDebuggerPresent(); --#elif defined(XP_MACOSX) -+#elif defined(XP_MACOSX) || defined(__DragonFly__) || defined(__FreeBSD__) \ -+ || defined(__NetBSD__) || defined(__OpenBSD__) - // Specify the info we're looking for -- int mib[4]; -- mib[0] = CTL_KERN; -- mib[1] = KERN_PROC; -- mib[2] = KERN_PROC_PID; -- mib[3] = getpid(); -+ int mib[] = { -+ CTL_KERN, -+ KERN_PROC, -+ KERN_PROC_PID, -+ getpid(), -+#if defined(__NetBSD__) || defined(__OpenBSD__) -+ sizeof(KINFO_PROC), -+ 1, -+#endif -+ }; - size_t mibSize = sizeof(mib) / sizeof(int); - -- struct kinfo_proc info; -+ KINFO_PROC info; - size_t infoSize = sizeof(info); - memset(&info, 0, infoSize); - -@@ -162,7 +199,7 @@ nsDebugImpl::GetIsDebuggerAttached(bool* - return NS_OK; - } - -- if (info.kp_proc.p_flag & P_TRACED) { -+ if (info.KP_FLAGS & P_TRACED) { - *aResult = true; - } - #endif diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsUUIDGenerator.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsUUIDGenerator.cpp deleted file mode 100644 index 4501e062496..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsUUIDGenerator.cpp +++ /dev/null @@ -1,69 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_base_nsUUIDGenerator.cpp,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/xpcom/base/nsUUIDGenerator.cpp.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/base/nsUUIDGenerator.cpp -@@ -15,6 +15,10 @@ - - #include "nsUUIDGenerator.h" - -+#ifdef ANDROID -+extern "C" NS_EXPORT void arc4random_buf(void *, size_t); -+#endif -+ - using namespace mozilla; - - NS_IMPL_ISUPPORTS(nsUUIDGenerator, nsIUUIDGenerator) -@@ -34,7 +38,7 @@ nsUUIDGenerator::Init() - // We're a service, so we're guaranteed that Init() is not going - // to be reentered while we're inside Init(). - --#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(ANDROID) -+#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(HAVE_ARC4RANDOM) - /* initialize random number generator using NSPR random noise */ - unsigned int seed; - -@@ -67,7 +71,7 @@ nsUUIDGenerator::Init() - return NS_ERROR_FAILURE; - #endif - --#endif /* non XP_WIN and non XP_MACOSX */ -+#endif /* non XP_WIN and non XP_MACOSX and non ARC4RANDOM */ - - return NS_OK; - } -@@ -114,13 +118,16 @@ nsUUIDGenerator::GenerateUUIDInPlace(nsI - * back to it; instead, we use the value returned when we called - * initstate, since older glibc's have broken setstate() return values - */ --#ifndef ANDROID -+#ifndef HAVE_ARC4RANDOM - setstate(mState); - #endif - -+#ifdef HAVE_ARC4RANDOM_BUF -+ arc4random_buf(id, sizeof(nsID)); -+#else /* HAVE_ARC4RANDOM_BUF */ - size_t bytesLeft = sizeof(nsID); - while (bytesLeft > 0) { --#ifdef ANDROID -+#ifdef HAVE_ARC4RANDOM - long rval = arc4random(); - const size_t mRBytes = 4; - #else -@@ -141,6 +148,7 @@ nsUUIDGenerator::GenerateUUIDInPlace(nsI - - bytesLeft -= toWrite; - } -+#endif /* HAVE_ARC4RANDOM_BUF */ - - /* Put in the version */ - id->m2 &= 0x0fff; -@@ -150,7 +158,7 @@ nsUUIDGenerator::GenerateUUIDInPlace(nsI - id->m3[0] &= 0x3f; - id->m3[0] |= 0x80; - --#ifndef ANDROID -+#ifndef HAVE_ARC4RANDOM - /* Restore the previous RNG state */ - setstate(mSavedState); - #endif diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsUUIDGenerator.h b/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsUUIDGenerator.h deleted file mode 100644 index ad2c2311d32..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_base_nsUUIDGenerator.h +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_base_nsUUIDGenerator.h,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/xpcom/base/nsUUIDGenerator.h.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/base/nsUUIDGenerator.h -@@ -27,7 +27,7 @@ private: - protected: - - mozilla::Mutex mLock; --#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(ANDROID) -+#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(HAVE_ARC4RANDOM) - char mState[128]; - char *mSavedState; - uint8_t mRBytes; diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h b/mail/thunderbird/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h index 1e490620020..16390251d8f 100644 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_build_PoisonIOInterposer.h @@ -1,34 +1,55 @@ -$NetBSD: patch-mozilla_xpcom_build_PoisonIOInterposer.h,v 1.1 2014/07/27 20:05:00 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_build_PoisonIOInterposer.h,v 1.2 2015/07/09 15:17:35 ryoon Exp $ ---- mozilla/xpcom/build/PoisonIOInterposer.h.orig 2014-07-18 00:05:57.000000000 +0000 +--- mozilla/xpcom/build/PoisonIOInterposer.h.orig 2015-06-08 17:49:33.000000000 +0000 +++ mozilla/xpcom/build/PoisonIOInterposer.h -@@ -44,7 +44,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
-@@ -52,7 +52,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
-@@ -70,9 +70,9 @@ 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 */
-
+@@ -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 diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_build_XPCOMInit.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_build_XPCOMInit.cpp new file mode 100644 index 00000000000..2f46ee3fa93 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_build_XPCOMInit.cpp @@ -0,0 +1,28 @@ +$NetBSD: patch-mozilla_xpcom_build_XPCOMInit.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ + +--- mozilla/xpcom/build/XPCOMInit.cpp.orig 2015-06-08 17:49:33.000000000 +0000 ++++ mozilla/xpcom/build/XPCOMInit.cpp +@@ -141,7 +141,9 @@ extern nsresult nsStringInputStreamConst + #include "mozilla/VisualEventTracer.h" + #endif + ++#ifndef MOZ_OGG_NO_MEM_REPORTING + #include "ogg/ogg.h" ++#endif + #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) + #if defined(HAVE_STDINT_H) + // mozilla-config.h defines HAVE_STDINT_H, and then it's defined *again* in +@@ -669,11 +671,13 @@ NS_InitXPCOM2(nsIServiceManager** aResul + // this oddness. + mozilla::SetICUMemoryFunctions(); + ++#ifndef MOZ_OGG_NO_MEM_REPORTING + // Do the same for libogg. + ogg_set_mem_functions(OggReporter::CountingMalloc, + OggReporter::CountingCalloc, + OggReporter::CountingRealloc, + OggReporter::CountingFree); ++#endif + + #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) + // And for VPX. diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_build_nsXPComInit.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_build_nsXPComInit.cpp deleted file mode 100644 index 9a590364cc5..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_build_nsXPComInit.cpp +++ /dev/null @@ -1,28 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_build_nsXPComInit.cpp,v 1.1 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/xpcom/build/nsXPComInit.cpp.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/build/nsXPComInit.cpp -@@ -133,7 +133,9 @@ extern nsresult nsStringInputStreamConst - #include "mozilla/VisualEventTracer.h" - #endif - -+#ifndef MOZ_OGG_NO_MEM_REPORTING - #include "ogg/ogg.h" -+#endif - #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) - #include "vpx_mem/vpx_mem.h" - #endif -@@ -607,11 +609,13 @@ NS_InitXPCOM2(nsIServiceManager* *result - // this oddness. - mozilla::SetICUMemoryFunctions(); - -+#ifndef MOZ_OGG_NO_MEM_REPORTING - // Do the same for libogg. - ogg_set_mem_functions(OggReporter::CountingMalloc, - OggReporter::CountingCalloc, - OggReporter::CountingRealloc, - OggReporter::CountingFree); -+#endif - - #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) - // And for VPX. diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_ds_TimeStamp.h b/mail/thunderbird/patches/patch-mozilla_xpcom_ds_TimeStamp.h deleted file mode 100644 index 56eb516e0b3..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_ds_TimeStamp.h +++ /dev/null @@ -1,18 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_ds_TimeStamp.h,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/xpcom/ds/TimeStamp.h.orig 2013-10-23 22:09:21.000000000 +0000 -+++ mozilla/xpcom/ds/TimeStamp.h -@@ -158,11 +158,11 @@ private: - // NOTE: this MUST be a >= test, because int64_t(double(INT64_MAX)) - // overflows and gives INT64_MIN. - if (aTicks >= double(INT64_MAX)) -- return TimeDuration::FromTicks(INT64_MAX); -+ return TimeDuration::FromTicks(int64_t(INT64_MAX)); - - // This MUST be a <= test. - if (aTicks <= double(INT64_MIN)) -- return TimeDuration::FromTicks(INT64_MIN); -+ return TimeDuration::FromTicks(int64_t(INT64_MIN)); - - return TimeDuration::FromTicks(int64_t(aTicks)); - } diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_glue_standalone_nsXPCOMGlue.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_glue_standalone_nsXPCOMGlue.cpp new file mode 100644 index 00000000000..9766e47fd08 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_glue_standalone_nsXPCOMGlue.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xpcom_glue_standalone_nsXPCOMGlue.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ + +--- mozilla/xpcom/glue/standalone/nsXPCOMGlue.cpp.orig 2015-06-08 17:49:33.000000000 +0000 ++++ mozilla/xpcom/glue/standalone/nsXPCOMGlue.cpp +@@ -30,7 +30,7 @@ static bool do_preload = false; + #endif + + #if defined(SUNOS4) || defined(NEXTSTEP) || \ +- defined(XP_DARWIN) || \ ++ defined(XP_MACOSX) || \ + (defined(OPENBSD) || defined(NETBSD)) && !defined(__ELF__) + #define LEADING_UNDERSCORE "_" + #else diff --git a/mail/thunderbird/patches/patch-mb b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in index 7bca4c4c6cd..83ba18ce7fa 100644 --- a/mail/thunderbird/patches/patch-mb +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in @@ -1,7 +1,7 @@ -$NetBSD: patch-mb,v 1.8 2014/07/27 20:04:59 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_Makefile.in,v 1.1 2015/07/09 15:17:35 ryoon Exp $ ---- mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in +--- mozilla/xpcom/reflect/xptcall/md/unix/Makefile.in.orig 2015-06-08 17:49:34.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/Makefile.in @@ -56,6 +56,39 @@ endif # SPARC ###################################################################### diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build new file mode 100644 index 00000000000..b536989bfd9 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build @@ -0,0 +1,22 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_moz.build,v 1.1 2015/07/09 15:17:35 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/moz.build.orig 2015-06-08 17:49:34.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 += [ + 'xptcinvoke_asm_ppc_rhapsody.s', + ] +@@ -26,7 +26,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 += [ diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp new file mode 100644 index 00000000000..50269689d71 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp @@ -0,0 +1,527 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_arm_netbsd.cpp.orig 2015-06-08 17:49:34.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<vtable_func **>(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<uint32_t&>(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<uint64_t&>(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<uint32_t>(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<vtable_func **>(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 diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__asm__mips.S b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S index 965ca617e39..1501dfb7226 100644 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__asm__mips.S +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S @@ -1,7 +1,7 @@ -$NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__asm__mips.S,v 1.1 2014/07/27 20:05:00 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S,v 1.1 2015/07/09 15:17:35 ryoon Exp $ ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_mips.S.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_mips.S +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_mips.S.orig 2015-06-08 17:49:34.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_mips.S @@ -16,6 +16,47 @@ #include <sys/asm.h> #endif diff --git a/mail/thunderbird/patches/patch-xl b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s index cb55dca889e..74f44a46b20 100644 --- a/mail/thunderbird/patches/patch-xl +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s @@ -1,9 +1,7 @@ -$NetBSD: patch-xl,v 1.7 2014/07/27 20:05:00 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s,v 1.1 2015/07/09 15:17:35 ryoon Exp $ -NetBSD ppc xptcall support code. Originally from pkgsrc/www/mozilla. - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc_netbsd.s.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc_netbsd.s +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_ppc_netbsd.s.orig 2015-06-08 17:49:34.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_ppc_netbsd.s @@ -20,15 +20,15 @@ .section ".text" diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp new file mode 100644 index 00000000000..bf9ef6ef356 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__gcc__x86__unix.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_gcc_x86_unix.cpp.orig 2015-06-08 17:49:34.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++) diff --git a/mail/thunderbird/patches/patch-xe b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp index c567fd29441..122dd28a48a 100644 --- a/mail/thunderbird/patches/patch-xe +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp @@ -1,9 +1,7 @@ -$NetBSD: patch-xe,v 1.6 2012/11/23 07:17:54 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ -NetBSD/m68k xptcall support code. From pkgsrc/www/firefox/patch-ad. - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_netbsd_m68k.cpp.orig 2012-11-19 22:42:44.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_netbsd_m68k.cpp +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_netbsd_m68k.cpp.orig 2015-06-08 17:49:34.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_netbsd_m68k.cpp @@ -100,6 +100,15 @@ extern "C" { } } diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp index 58f3eda1310..025ee61aecd 100644 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd.cpp +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp @@ -1,7 +1,7 @@ -$NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd.cpp,v 1.1 2012/11/23 07:17:54 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc_netbsd.cpp.orig 2012-11-19 22:42:44.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc_netbsd.cpp +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc_netbsd.cpp.orig 2015-06-08 17:49:34.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 @@ -14,7 +14,7 @@ $NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd // 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 -@@ -69,8 +69,10 @@ invoke_copy_to_stack(uint32_t* d, +@@ -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; @@ -25,7 +25,7 @@ $NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd } } else if (!s->IsPtrData() && s->type == nsXPTType::T_FLOAT) { -@@ -79,8 +81,10 @@ invoke_copy_to_stack(uint32_t* d, +@@ -82,8 +84,10 @@ invoke_copy_to_stack(uint32_t* d, else { *((float*) d) = s->val.f; d += 1; @@ -36,7 +36,7 @@ $NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd } } else if (!s->IsPtrData() && (s->type == nsXPTType::T_I64 -@@ -107,6 +111,6 @@ invoke_copy_to_stack(uint32_t* d, +@@ -110,6 +114,6 @@ invoke_copy_to_stack(uint32_t* d, } extern "C" diff --git a/mail/thunderbird/patches/patch-xb b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp index 9a01cf876a4..74f0f2ee060 100644 --- a/mail/thunderbird/patches/patch-xb +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp @@ -1,9 +1,7 @@ -$NetBSD: patch-xb,v 1.5 2012/09/02 06:43:43 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ -NetBSD/sparc64 xptcall support code. From pkgsrc/www/firefox3/files/ - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_sparc64_netbsd.cpp.orig 2012-08-31 13:21:49.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_sparc64_netbsd.cpp +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_sparc64_netbsd.cpp.orig 2015-07-06 19:52:50.000000000 +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 -*- + * diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp new file mode 100644 index 00000000000..3204c0f0e66 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp @@ -0,0 +1,217 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_arm_netbsd.cpp.orig 2015-06-08 17:49:34.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() \ diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__asm__mips.S b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S index 76e6cf7d161..cc251d21244 100644 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__asm__mips.S +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S @@ -1,7 +1,7 @@ -$NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__asm__mips.S,v 1.1 2014/07/27 20:05:00 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S,v 1.1 2015/07/09 15:17:35 ryoon Exp $ ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_mips.S.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_mips.S +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_asm_mips.S.orig 2015-06-08 17:49:34.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_asm_mips.S @@ -14,6 +14,47 @@ #include <sys/asm.h> #endif diff --git a/mail/thunderbird/patches/patch-xc b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s index 756adb7395b..7ee77cea133 100644 --- a/mail/thunderbird/patches/patch-xc +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s @@ -1,9 +1,7 @@ -$NetBSD: patch-xc,v 1.5 2012/09/02 06:43:44 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s,v 1.1 2015/07/09 15:17:35 ryoon Exp $ -NetBSD/sparc64 xptcall support code. From pkgsrc/www/firefox3/files/ - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_sparc64_netbsd.s.orig 2012-08-31 13:21:49.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_sparc64_netbsd.s +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_asm_sparc64_netbsd.s.orig 2015-07-06 19:52:50.000000000 +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 -*- + * diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp new file mode 100644 index 00000000000..efaaabdd763 --- /dev/null +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__gcc__x86__unix.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ + +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_gcc_x86_unix.cpp.orig 2015-06-08 17:49:34.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) + { diff --git a/mail/thunderbird/patches/patch-xf b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp index 500d9a86cb8..e5640629908 100644 --- a/mail/thunderbird/patches/patch-xf +++ b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp @@ -1,9 +1,7 @@ -$NetBSD: patch-xf,v 1.5 2012/09/02 06:43:44 ryoon Exp $ +$NetBSD: patch-mozilla_xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp,v 1.1 2015/07/09 15:17:35 ryoon Exp $ -NetBSD/m68k xptcall support code. From pkgsrc/www/firefox/patch-ae. - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_netbsd_m68k.cpp.orig 2012-08-25 00:31:36.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_netbsd_m68k.cpp +--- mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_netbsd_m68k.cpp.orig 2015-06-08 17:49:34.000000000 +0000 ++++ mozilla/xpcom/reflect/xptcall/md/unix/xptcstubs_netbsd_m68k.cpp @@ -91,17 +91,27 @@ extern "C" { } } diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_moz.build b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_moz.build deleted file mode 100644 index a424e9905f6..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_moz.build +++ /dev/null @@ -1,30 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_moz.build,v 1.2 2014/07/27 20:05:00 ryoon Exp $ - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/moz.build.orig 2014-07-18 00:05:57.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/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 += [ - 'xptcinvoke_asm_ppc_rhapsody.s', - ] -@@ -19,14 +19,14 @@ if CONFIG['OS_ARCH'] == 'Darwin': - if '86' in CONFIG['OS_TEST'] and CONFIG['OS_TEST'] != 'x86_64': - DEFINES['MOZ_NEED_LEADING_UNDERSCORE'] = True - --if CONFIG['OS_ARCH'] in ('NetBSD', 'OpenBSD', 'GNU'): -+if CONFIG['OS_ARCH'] in ('OpenBSD', 'GNU'): - if CONFIG['CPU_ARCH'] == 'x86': - SOURCES += [ - 'xptcinvoke_gcc_x86_unix.cpp', - 'xptcstubs_gcc_x86_unix.cpp' - ] - --if CONFIG['OS_ARCH'] in ('Linux', 'FreeBSD') or \ -+if CONFIG['OS_ARCH'] in ('Linux', 'FreeBSD', 'NetBSD', 'DragonFly') or \ - CONFIG['OS_ARCH'].startswith('GNU_'): - if CONFIG['OS_TEST'] == 'x86_64': - SOURCES += [ diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp deleted file mode 100644 index 624960dbae1..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_gcc_x86_unix.cpp.orig 2013-10-23 22:09:22.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/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++) diff --git a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp b/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp deleted file mode 100644 index 8f6f1e13184..00000000000 --- a/mail/thunderbird/patches/patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp,v 1.1 2013/11/12 20:50:51 ryoon Exp $ - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_gcc_x86_unix.cpp.orig 2013-10-23 22:09:22.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/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) - { diff --git a/mail/thunderbird/patches/patch-rc b/mail/thunderbird/patches/patch-rc index f9e9fa106c6..d82cacc8acf 100644 --- a/mail/thunderbird/patches/patch-rc +++ b/mail/thunderbird/patches/patch-rc @@ -1,13 +1,15 @@ -$NetBSD: patch-rc,v 1.6 2012/09/02 06:43:43 ryoon Exp $ +$NetBSD: patch-rc,v 1.7 2015/07/09 15:17:35 ryoon Exp $ ---- mozilla/browser/branding/unofficial/locales/en-US/brand.dtd.orig 2012-08-25 00:30:57.000000000 +0000 +--- mozilla/browser/branding/unofficial/locales/en-US/brand.dtd.orig 2015-06-08 17:49:18.000000000 +0000 +++ mozilla/browser/branding/unofficial/locales/en-US/brand.dtd -@@ -2,7 +2,7 @@ +@@ -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/. --> +-<!ENTITY brandShorterName "Mozilla Developer Preview"> -<!ENTITY brandShortName "Mozilla Developer Preview"> -<!ENTITY brandFullName "Mozilla Developer Preview"> ++<!ENTITY brandShorterName "Browser"> +<!ENTITY brandShortName "Browser"> +<!ENTITY brandFullName "Browser"> <!ENTITY vendorShortName "mozilla.org"> diff --git a/mail/thunderbird/patches/patch-xg b/mail/thunderbird/patches/patch-xg deleted file mode 100644 index ba863e251f7..00000000000 --- a/mail/thunderbird/patches/patch-xg +++ /dev/null @@ -1,33 +0,0 @@ -$NetBSD: patch-xg,v 1.5 2012/09/02 06:43:44 ryoon Exp $ - -NetBSD/arm xptcall support code. From pkgsrc/www/firefox/patch-bm. - ---- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp.orig 2012-08-25 00:31:35.000000000 +0000 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp -@@ -86,18 +86,23 @@ PrepareAndDispatch(nsXPTCStubBase* self, - * so they are contiguous with values passed on the stack, and then calls - * PrepareAndDispatch() to do the dirty work. - */ -+#ifndef __ELF__ -+#define SYMBOLPREFIX "_" -+#else -+#define SYMBOLPREFIX -+#endif - - #define STUB_ENTRY(n) \ - __asm__( \ -- ".global _Stub"#n"__14nsXPTCStubBase\n\t" \ --"_Stub"#n"__14nsXPTCStubBase:\n\t" \ -+ ".global "SYMBOLPREFIX"Stub"#n"__14nsXPTCStubBase\n\t" \ -+SYMBOLPREFIX"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" \ -+ "bl "SYMBOLPREFIX"PrepareAndDispatch__FP14nsXPTCStubBaseUiPUi \n\t" \ - "ldmea fp, {fp, sp, lr} \n\t" \ - "add sp, sp, #12 \n\t" \ - "mov pc, lr \n\t" \ diff --git a/mail/thunderbird/patches/patch-zb b/mail/thunderbird/patches/patch-zb deleted file mode 100644 index 82752ba4261..00000000000 --- a/mail/thunderbird/patches/patch-zb +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-zb,v 1.8 2014/07/27 20:05:00 ryoon Exp $ - ---- mail/app/Makefile.in.orig 2014-07-18 00:04:05.000000000 +0000 -+++ mail/app/Makefile.in -@@ -57,6 +57,10 @@ LOCAL_INCLUDES += \ - DEFINES += -DXPCOM_GLUE - STL_FLAGS= - -+ifeq ($(OS_ARCH),NetBSD) -+LIBS += -lossaudio -+endif -+ - LIBS += \ - $(XPCOM_STANDALONE_GLUE_LDOPTS) \ - $(NULL) diff --git a/mail/thunderbird/patches/patch-zc b/mail/thunderbird/patches/patch-zc index 2a90534f6b9..05dc8680c92 100644 --- a/mail/thunderbird/patches/patch-zc +++ b/mail/thunderbird/patches/patch-zc @@ -1,10 +1,10 @@ -$NetBSD: patch-zc,v 1.5 2012/10/12 18:28:59 ryoon Exp $ +$NetBSD: patch-zc,v 1.6 2015/07/09 15:17:35 ryoon Exp $ ---- mail/app/nsMailApp.cpp.orig 2012-10-02 17:01:07.000000000 +0000 +--- mail/app/nsMailApp.cpp.orig 2015-06-08 17:40:39.000000000 +0000 +++ mail/app/nsMailApp.cpp -@@ -12,6 +12,26 @@ - #include <sys/time.h> +@@ -15,6 +15,26 @@ #include <sys/resource.h> + #include <unistd.h> #endif +/* + * On netbsd-4, ulimit -n is 64 by default; too few for us. @@ -29,11 +29,11 @@ $NetBSD: patch-zc,v 1.5 2012/10/12 18:28:59 ryoon Exp $ #ifdef XP_MACOSX #include "MacQuirks.h" -@@ -115,6 +135,7 @@ static int do_main(const char *exePath, - - int main(int argc, char* argv[]) +@@ -218,6 +238,7 @@ FileExists(const char *path) + static nsresult + InitXPCOMGlue(const char *argv0, nsIFile **xreDirectory) { + netbsd_fixrlimit(); char exePath[MAXPATHLEN]; - #ifdef XP_MACOSX + nsresult rv = mozilla::BinaryPath::Get(argv0, exePath); |