commit: 83c9c132c36b97730860ce17f6d436eb1e0167b2 Author: Ian Stakenvicius <axs <AT> gentoo <DOT> org> AuthorDate: Tue Jul 17 02:28:27 2018 +0000 Commit: Ian Stakenvicius <axs <AT> gentoo <DOT> org> CommitDate: Tue Jul 17 02:29:25 2018 +0000 URL: https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=83c9c132
thunderbird: add ebuild for 60.0b10 for testing eclass/mozcoreconf-v6.eclass | 4 +- mail-client/thunderbird/Manifest | 3 + .../thunderbird/thunderbird-60.0_beta10.ebuild | 360 +++++++++++++++++++++ 3 files changed, 365 insertions(+), 2 deletions(-) diff --git a/eclass/mozcoreconf-v6.eclass b/eclass/mozcoreconf-v6.eclass index 2f1b0e3..46d9cd3 100644 --- a/eclass/mozcoreconf-v6.eclass +++ b/eclass/mozcoreconf-v6.eclass @@ -146,11 +146,11 @@ mozconfig_init() { seamonkey) # Must create the initial mozconfig to enable application : >.mozconfig || die "initial mozconfig creation failed" - mozconfig_annotate "" --enable-application=suite ;; + mozconfig_annotate "" --enable-application=comm/suite ;; *thunderbird) # Must create the initial mozconfig to enable application : >.mozconfig || die "initial mozconfig creation failed" - mozconfig_annotate "" --enable-application=mail ;; + mozconfig_annotate "" --enable-application=comm/mail ;; esac #################################### diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index ca72d55..e550085 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -1,5 +1,7 @@ DIST firefox-52.5-patches-02.tar.xz 15084 BLAKE2B 538dd61dbb7b290add4782b323a62f9ab4dbc57326a9a085710d207752118c504eb030a8741c1eed2e281c8d18e5453210b1905d71439250caa588137bbc37d0 SHA512 b80f9acaf49226cd5c2864714826c5b0e7e918e94c31ec81521b90c47edbb88ea85faa34fc22791efefbcd3867ddc413c563de58ca0f8ce21e10a3858899efce +DIST firefox-60.0-patches-02.tar.xz 111088 BLAKE2B 9564d55b243c5e759a83b6d48076d3de9060c7bd99498df3ced477077b5ce2e2582452979872f0707ee681633d04a9761e2887282d69cced7e20bf39efc38c2c SHA512 919ffdb0624f1fa68a7e457f5270833e69c8f29e1764a46edfc345056c4e8ada1e85e53de3766fd9a0b2afc1a959c15762e27f43e29f5945176f9ade362407ac DIST gdata-provider-3.3.tar.xz 85628 BLAKE2B 2ccde620b181a2d8678f50d7107373886f3b2e7d1d1e8861c4e42602cedb02108d28e0bf5e5cd9e31474356b70cb99baa7870e20436bc72e25cd8a8fc1353d14 SHA512 ae0c0e6fd42d6e7088256ca8a4be5b0bac84b2f331b51afdc982354caef60b6ba631d4f76bfba7523000b49235c8f8c63704d90acf24b34b14696b709be9342b +DIST lightning-5.4.8.tar.xz 1891528 BLAKE2B 8b15d2058171d09b8fc1e992b48d36f024ae9405803c0626060bbdb75318a6ce652cc1b527cc2a30041c81f2ea215c63950912a8783d55e4042c2fcc270bfccf SHA512 9c36ad58ef77f9e7a1e34c07db0357d4db75a44c837068016e1413e31cc762f2cc1b4cf1edf8a78124077053db6ddddec68c17ba42da91c2a05dc87616f742dc DIST lightning-5.4.9.tar.xz 1891752 BLAKE2B 90b777814db2962ff669430cea5a29ba1612a842fbb0edaca597539e6e2d728a9d90114ec6196fe0d4758a4738a15bc0c985a345e1062cb125617eb84ecf79e1 SHA512 8e54865d50118154c3918d5dec5dade4fb026c24bc697ad2e360db9741509cbdbb71ba9477508a9b209be6c8a8190fb0b5e03d2e8fedcc2cae18f5c9e5a3a496 DIST thunderbird-52.9.0-ar.xpi 604235 BLAKE2B 976fa2de5d2d132dd1aa835292c3991a1faaddd542a0eb9f72a75ae200c68edaccc921d5263a6c69324af8b189ada47f016863d1df147b3e54951fb7d3f1ad12 SHA512 50b9e878463ffdaae09fbe1e5567200892f20c3c593e9c53ac7524f58c688711e58b2cd8a668a5ae82e3cf96f0c178f5ff111d2f56f049bf3c771b881715a67c DIST thunderbird-52.9.0-ast.xpi 541173 BLAKE2B 3aa4e92287ba968f22d10c9fab41fc790042705544ddb998a43d91ac0912f9b028de63fe18cd982c40183aaddc628a4c547428db96c99df7e11e20223f573469 SHA512 70d8168751acf69915f3c6643feb23fce813a313243a392bd3979db24c4f8641b56f92a9f5861aa4224549ff621fadaf4b0f1ad924cf68b9daf6687d15d886c8 @@ -58,3 +60,4 @@ DIST thunderbird-52.9.0-vi.xpi 637164 BLAKE2B 3b1e661c3d7b628d201b73de0edd19e3bc DIST thunderbird-52.9.0-zh-CN.xpi 593612 BLAKE2B bfeba596b07feafccf24da7fe945fdafe24d596818f601e189eca1d8dae4e98b6f57a4b3535d313fa0fc1629bc58a84ff688d824e3afd451c1fc4530b6a3be4d SHA512 2edc8f16f4dce60c5ab8f29758f380885dec06360d6c39f18aceeff2647da71c6c53f5bb3e4b718acfa17ad1692b87df7320cd2966c3de64b0091879337cd0fd DIST thunderbird-52.9.0-zh-TW.xpi 595729 BLAKE2B 33702ec38ee830913c9b27dd102c38d7f6b7ce5f0b68cab14a71941f6a86dbb9dc785c5324dfd04acc8f5fab3562c439f3efab95eee8401c061efa8f38d4a2dd SHA512 a8b9cf32945efb8ed958ac53ab11e327f8dba8af29ef7c18af66d4cc9c7d86bfbab3e44e61d14a5eb40b82d63c9ea3a875672bc96c0baf08d841df7b7e3dfba0 DIST thunderbird-52.9.0.source.tar.xz 230441012 BLAKE2B d39dc94f4e46af1b651e2b4139738a2bfc11a76506847bbf5b2340c96a300d7ec9534c38faf6f2fc6a574c186334dc92ff9057d92c560a8d1e4620138e64721e SHA512 2142ba7cc04f48a9ffa17ad8f3a0d761f90416c9e6a7066be662a09b19846f13f0fb9669356ccbbf576744a83143cd659c28ce034679c4d6377004f428932dc1 +DIST thunderbird-60.0b10.source.tar.xz 284004512 BLAKE2B 3051b72252cd0c3cd6801ac9b75e129245ae02a60b9f79b403d76f7215a5009b3db9cac4116672f71cffc1809aa894497f6d9ed3792039cdaba8b463e4692394 SHA512 2b2f8e4de2ea584a6f0e4d5cc2ba213287de5dc43f0e28ddbb9567744759d8797f1dd5ca4030a46d768923bbc111d2d1ba9dd8ea526666bc6bb2334dc3f73478 diff --git a/mail-client/thunderbird/thunderbird-60.0_beta10.ebuild b/mail-client/thunderbird/thunderbird-60.0_beta10.ebuild new file mode 100644 index 0000000..46e2f0e --- /dev/null +++ b/mail-client/thunderbird/thunderbird-60.0_beta10.ebuild @@ -0,0 +1,360 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +WANT_AUTOCONF="2.1" +MOZ_ESR="" +MOZ_LIGHTNING_VER="5.4.8" +MOZ_LIGHTNING_GDATA_VER="3.3" + +# This list can be updated using scripts/get_langs.sh from the mozilla overlay +MOZ_LANGS=(ar ast be bg bn-BD br ca cs cy da de el en en-GB en-US es-AR +es-ES et eu fi fr fy-NL ga-IE gd gl he hr hsb hu hy-AM id is it ja ko lt +nb-NO nl nn-NO pa-IN pl pt-BR pt-PT rm ro ru si sk sl sq sr sv-SE ta-LK tr +uk vi zh-CN zh-TW ) + +# Convert the ebuild version to the upstream mozilla version, used by mozlinguas +MOZ_PV="${PV/_beta/b}" + +# Patches +PATCHFF="firefox-60.0-patches-02" + +MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases" + +# ESR releases have slightly version numbers +if [[ ${MOZ_ESR} == 1 ]]; then + MOZ_PV="${MOZ_PV}esr" +fi +MOZ_P="${PN}-${MOZ_PV}" + +#MOZCONFIG_OPTIONAL_GTK2ONLY=1 +MOZCONFIG_OPTIONAL_WIFI=1 +#MOZ_GENERATE_LANGPACKS=1 + +inherit check-reqs flag-o-matic toolchain-funcs gnome2-utils mozconfig-v6.60 pax-utils xdg-utils autotools mozlinguas-v2 + +DESCRIPTION="Thunderbird Mail Client" +HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" + +KEYWORDS="~alpha amd64 ~arm ~ppc ~ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux" +SLOT="0" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +#IUSE="bindist crypt hardened ldap lightning +minimal mozdom rust selinux" +IUSE="bindist crypt hardened lightning +minimal mozdom rust selinux" +RESTRICT="!bindist? ( bindist )" + +PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/${PATCHFF}.tar.xz ) +SRC_URI="${SRC_URI} + ${MOZ_HTTP_URI}/${MOZ_PV}/source/${MOZ_P}.source.tar.xz + https://dev.gentoo.org/~axs/distfiles/lightning-${MOZ_LIGHTNING_VER}.tar.xz + lightning? ( https://dev.gentoo.org/~axs/distfiles/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.tar.xz ) + ${PATCH_URIS[@]}" + +ASM_DEPEND=">=dev-lang/yasm-1.1" + +CDEPEND=" + >=dev-libs/nss-3.28.3 + >=dev-libs/nspr-4.13.1 + " + +DEPEND="rust? ( dev-lang/rust ) + amd64? ( ${ASM_DEPEND} + virtual/opengl ) + x86? ( ${ASM_DEPEND} + virtual/opengl )" + +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-thunderbird ) + crypt? ( >=x11-plugins/enigmail-1.9.8.3-r1 ) +" + +S="${WORKDIR}/${MOZ_P%b[0-9]*}" + +BUILD_OBJ_DIR="${S}/tbird" + +pkg_setup() { + moz_pkgsetup + + #export MOZILLA_DIR="${S}/mozilla" + + if ! use bindist ; then + elog "You are enabling official branding. You may not redistribute this build" + elog "to any users on your network or the internet. Doing so puts yourself into" + elog "a legal problem with Mozilla Foundation" + elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" + elog + fi + + addpredict /proc/self/oom_score_adj +} + +pkg_pretend() { + # Ensure we have enough disk space to compile + CHECKREQS_DISK_BUILD="4G" + check-reqs_pkg_setup +} + +src_unpack() { + unpack ${A} + + # Unpack language packs + mozlinguas_src_unpack + + # this version of lightning is a .tar.xz, no xpi needed + #xpi_unpack lightning-${MOZ_LIGHTNING_VER}.xpi + + # this version of gdata-provider is a .tar.xz , no xpi needed + #use lightning && xpi_unpack gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.xpi +} + +src_prepare() { + # Apply our patchset from firefox to thunderbird as well + rm -f "${WORKDIR}"/firefox/2007_fix_nvidia_latest.patch || die + eapply "${WORKDIR}/firefox" + + # Ensure that are plugins dir is enabled as default + sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ + "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!" + sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ + "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!" + + # Don't error out when there's no files to be removed: + sed 's@\(xargs rm\)$@\1 -f@' \ + -i "${S}"/toolkit/mozapps/installer/packager.mk || die + + # Don't exit with error when some libs are missing which we have in + # system. + sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ + -i "${S}"/comm/mail/installer/Makefile.in || die + + # Shell scripts sometimes contain DOS line endings; bug 391889 +# grep -rlZ --include="*.sh" $'\r$' . | +# while read -r -d $'\0' file ; do +# einfo edos2unix "${file}" +# edos2unix "${file}" +# done + + # Apply our Thunderbird patchset + pushd "${S}"/comm &>/dev/null || doe + eapply "${FILESDIR}"/1000_fix_gentoo_preferences.patch + + # simulate old directory structure just in case it helps eapply_user + ln -s .. mozilla || die + # Allow user to apply any additional patches without modifing ebuild + eapply_user + # remove the symlink + rm -f mozilla + + popd &>/dev/null || die + + # Confirm the version of lightning being grabbed for langpacks is the same + # as that used in thunderbird + local THIS_MOZ_LIGHTNING_VER=$(python "${S}"/calendar/lightning/build/makeversion.py ${PV}) + if [[ ${MOZ_LIGHTNING_VER} != ${THIS_MOZ_LIGHTNING_VER} ]]; then + eqawarn "The version of lightning used for localization differs from the version" + eqawarn "in thunderbird. Please update MOZ_LIGHTNING_VER in the ebuild from ${MOZ_LIGHTNING_VER}" + eqawarn "to ${THIS_MOZ_LIGHTNING_VER}" + fi + + eautoreconf old-configure.in + # Ensure we run eautoreconf in spidermonkey to regenerate configure + cd "${S}"/js/src || die + eautoconf old-configure.in +} + +src_configure() { + MEXTENSIONS="default" + + #################################### + # + # mozconfig, CFLAGS and CXXFLAGS setup + # + #################################### + + mozconfig_init + mozconfig_config + + # It doesn't compile on alpha without this LDFLAGS + use alpha && append-ldflags "-Wl,--no-relax" + + # Add full relro support for hardened + use hardened && append-ldflags "-Wl,-z,relro,-z,now" + + mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" + mozconfig_annotate '' --enable-calendar + + # Other tb-specific settings + mozconfig_annotate '' --with-user-appdir=.thunderbird + + # Disabling ldap support causes build failures with 60.0b10 + #mozconfig_use_enable ldap + mozconfig_annotate '' --enable-ldap + if use hardened; then + append-ldflags "-Wl,-z,relro,-z,now" + mozconfig_use_enable hardened hardening + fi + + mozlinguas_mozconfig + + # Bug #72667 + if use mozdom; then + MEXTENSIONS="${MEXTENSIONS},inspector" + fi + + # Use an objdir to keep things organized. + echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig + echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig + + # Default mozilla_five_home no longer valid option + sed '/with-default-mozilla-five-home=/d' -i "${S}"/.mozconfig + + # Finalize and report settings + mozconfig_final + + #################################### + # + # Configure and build + # + #################################### + + # Disable no-print-directory + MAKEOPTS=${MAKEOPTS/--no-print-directory/} + + if [[ $(gcc-major-version) -lt 4 ]]; then + append-cxxflags -fno-stack-protector + fi + + # workaround for funky/broken upstream configure... + SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \ + ./mach configure || die +} + +src_compile() { + MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \ + ./mach build --verbose || die +} + +src_install() { + declare emid + cd "${BUILD_OBJ_DIR}" || die + + # Pax mark xpcshell for hardened support, only used for startupcache creation. + pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell + + # Copy our preference before omnijar is created. + cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js-1 \ + "${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \ + || die + + mozconfig_install_prefs \ + "${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" + + # dev-db/sqlite does not have FTS3_TOKENIZER support. + # gloda needs it to function, and bad crashes happen when its enabled and doesn't work + if in_iuse system-sqlite && use system-sqlite ; then + echo "sticky_pref(\"mailnews.database.global.indexer.enabled\", false);" \ + >>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die + fi + +# MOZ_MAKE_FLAGS="${MAKEOPTS}" \ +# emake DESTDIR="${D}" install + cd "${S}" || die + MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \ + DESTDIR="${D}" ./mach install + + # Install language packs + mozlinguas_src_install + + local size sizes icon_path icon + if ! use bindist; then + icon_path="${S}/comm/mail/branding/thunderbird" + icon="${PN}-icon" + + domenu "${FILESDIR}"/icon/${PN}.desktop + else + icon_path="${S}/comm/mail/branding/nightly" + icon="${PN}-icon-unbranded" + + newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \ + ${PN}.desktop + + sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \ + "${ED}"/usr/share/applications/${PN}.desktop + fi + + # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs + newicon "${icon_path}"/default48.png "${icon}".png + # Install icons for menu entry + sizes="16 22 24 32 48 256" + for size in ${sizes}; do + newicon -s ${size} "${icon_path}/default${size}.png" "${icon}.png" + done + + local emid + # stage extra locales for lightning and install over existing + mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/xpi-stage/lightning \ + "${WORKDIR}"/lightning-${MOZ_LIGHTNING_VER} lightning calendar + + emid='{e2fda1a4-762b-4020-b5ad-a41df1933103}' + mkdir -p "${T}/${emid}" || die + cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/xpi-stage/lightning/* || die + insinto ${MOZILLA_FIVE_HOME}/distribution/extensions + doins -r "${T}/${emid}" + + if use lightning; then + # move lightning out of distribution/extensions and into extensions for app-global install + mv "${ED}"/${MOZILLA_FIVE_HOME}/{distribution,}/extensions/${emid} || die + + # stage extra locales for gdata-provider and install app-global + mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider \ + "${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER} + emid='{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}' + mkdir -p "${T}/${emid}" || die + cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider/* || die + insinto ${MOZILLA_FIVE_HOME}/extensions + doins -r "${T}/${emid}" + fi + + # Required in order to use plugins and even run thunderbird on hardened. + pax-mark pm "${ED}"${MOZILLA_FIVE_HOME}/{thunderbird,thunderbird-bin,plugin-container} + +# if use minimal; then +# rm -r "${ED}"/usr/include "${ED}"${MOZILLA_FIVE_HOME}/{idl,include,lib,sdk} || \ +# die "Failed to remove sdk and headers" +# fi +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + xdg_desktop_database_update + gnome2_icon_cache_update + + if use crypt; then + elog + elog "USE=crypt will be dropped from thunderbird with version 52.6.0 as" + elog "x11-plugins/enigmail-1.9.8.3-r1 and above is now a fully standalone" + elog "package. For continued enigmail support in thunderbird please add" + elog "x11-plugins/enigmail to your @world set." + fi + + elog + elog "If you experience problems with plugins please issue the" + elog "following command : rm \${HOME}/.thunderbird/*/extensions.sqlite ," + elog "then restart thunderbird" + + if ! use lightning; then + elog + elog "If calendar fails to show up in extensions please open config editor" + elog "and set extensions.lastAppVersion to 38.0.0 to force a reload. If this" + elog "fails to show the calendar extension after restarting with above change" + elog "please file a bug report." + fi +} + +pkg_postrm() { + xdg_desktop_database_update + gnome2_icon_cache_update +}