From b0a83745ac703f299862c155286f6408d8bd312b Mon Sep 17 00:00:00 2001 From: Daniel Mierswa Date: Sun, 14 Jun 2009 12:53:57 +0200 Subject: [PATCH] sync with latest thunderbird in ::mozilla --- exlibs/mozilla.exlib | 7 +- ...igmail-0.95.7-visibility_workaround.patch} | 0 ...bird-2.0.0.19-nsAppRunner_empty_elif.patch | 15 +++ .../thunderbird-2.0.0.19.exheres-0 | 99 +++++++++---------- 4 files changed, 70 insertions(+), 51 deletions(-) rename packages/mail-client/thunderbird/files/{enigmail_visibility_workaround.patch => enigmail-0.95.7-visibility_workaround.patch} (100%) create mode 100644 packages/mail-client/thunderbird/files/thunderbird-2.0.0.19-nsAppRunner_empty_elif.patch diff --git a/exlibs/mozilla.exlib b/exlibs/mozilla.exlib index 45ef38a..5750daf 100644 --- a/exlibs/mozilla.exlib +++ b/exlibs/mozilla.exlib @@ -3,7 +3,12 @@ require multilib -export_exlib_phases src_prepare +export_exlib_phases src_unpack src_prepare + +mozilla_src_unpack() { + default + mkdir -p "${WORK}" || die "creating ${WORK} failed" +} mozilla_src_prepare() { default diff --git a/packages/mail-client/thunderbird/files/enigmail_visibility_workaround.patch b/packages/mail-client/thunderbird/files/enigmail-0.95.7-visibility_workaround.patch similarity index 100% rename from packages/mail-client/thunderbird/files/enigmail_visibility_workaround.patch rename to packages/mail-client/thunderbird/files/enigmail-0.95.7-visibility_workaround.patch diff --git a/packages/mail-client/thunderbird/files/thunderbird-2.0.0.19-nsAppRunner_empty_elif.patch b/packages/mail-client/thunderbird/files/thunderbird-2.0.0.19-nsAppRunner_empty_elif.patch new file mode 100644 index 0000000..5a0ebd4 --- /dev/null +++ b/packages/mail-client/thunderbird/files/thunderbird-2.0.0.19-nsAppRunner_empty_elif.patch @@ -0,0 +1,15 @@ +Upstream: Unknown +Source: Daniel Mierswa +Reason: GCC errors out since #elif is empty + +--- ./toolkit/xre/nsAppRunner.cpp.orig 2009-06-10 05:02:45.000000000 +0200 ++++ ./toolkit/xre/nsAppRunner.cpp 2009-06-10 05:02:50.000000000 +0200 +@@ -1370,7 +1370,7 @@ + if (NS_FAILED(rv)) + return rv; + +-#elif ++#else + #error Oops, you need platform-specific code here + #endif + diff --git a/packages/mail-client/thunderbird/thunderbird-2.0.0.19.exheres-0 b/packages/mail-client/thunderbird/thunderbird-2.0.0.19.exheres-0 index 8d3e55b..865ce4d 100644 --- a/packages/mail-client/thunderbird/thunderbird-2.0.0.19.exheres-0 +++ b/packages/mail-client/thunderbird/thunderbird-2.0.0.19.exheres-0 @@ -4,25 +4,21 @@ # this is a copy of Bernd Steinhausers exheres in mozilla.git # with added enigmail support -require mozilla +require mozilla multilib -ENIGMAIL_VERSION="0.95.7" -ENIGMAIL_TARBALL="enigmail-${ENIGMAIL_VERSION}.tar.gz" +ENIGMAIL_PV=0.95.7 SUMMARY="Mozilla's standalone mail client" DESCRIPTION=" " -HOMEPAGE="" -DOWNLOADS=" - ftp://ftp.mozilla.org/pub/${PN}/releases/${PV}/source/${PNV}-source.tar.bz2 - enigmail? ( - http://www.mozilla-enigmail.org/download/source/${ENIGMAIL_TARBALL} - ) -" +HOMEPAGE="http://www.mozilla.com/en-US/products/thunderbird/" +DOWNLOADS="ftp://ftp.mozilla.org/pub/${PN}/releases/${PV}/source/${PNV}-source.tar.bz2 +enigmail? ( http://www.mozilla-enigmail.org/download/source/enigmail-${ENIGMAIL_PV}.tar.gz )" +UPSTREAM_RELEASE_NOTES="${HOMEPAGE}/${PV}/releasenotes/" -LICENCES="MPL" +LICENCES="MPL-1.1" SLOT="0" -PLATFORMS="~amd64" +PLATFORMS="~amd64 ~x86" MYOPTIONS="bindist enigmail ldap svg xinerama" # libXIE? @@ -31,17 +27,16 @@ MYOPTIONS="bindist enigmail ldap svg xinerama" # AC_CHECK_HEADER(X11/extensions/XIElib.h) # media-libs/libpng -# dev-libs/nss DEPENDENCIES=" build: - app-arch/unzip dev-util/pkg-config x11-proto/xextproto xinerama? ( x11-proto/xineramaproto ) build+run: dev-libs/libIDL dev-libs/nspr + dev-libs/nss media-libs/freetype media-libs/jpeg x11-libs/pango @@ -55,85 +50,89 @@ DEPENDENCIES=" xinerama? ( x11-libs/libXinerama ) " -WORK="${WORKBASE}"/mozilla +WORK="${WORKBASE}"/build/mail ECONF_SOURCE="${WORKBASE}"/mozilla export MOZILLA_OFFICIAL=1 export BUILD_OFFICIAL=1 +enigmail_src_prepare() { + mv "${WORKBASE}/enigmail" "${WORKBASE}/mozilla/mailnews/extensions/enigmail/" || die "moving failed" + cd "${WORKBASE}/mozilla/mailnews/extensions/enigmail/" || die "cd failed" + expatch -p6 "${FILES}/enigmail-${ENIGMAIL_PV}-visibility_workaround.patch" +} + +enigmail_src_configure() { + cd "${WORKBASE}/mozilla/mailnews/extensions/enigmail/" || die "cd failed" + ./makemake -r -o "${WORK}" || die "makemake -r failed" +} + +enigmail_src_compile() { + emake -C mailnews/extensions/enigmail/ +} + +enigmail_src_install() { + # taken from enigmail-0.95.7-r2.ebuild + local em_id=$(sed -n '//!d; s/.*\({.*}\).*/\1/; p; q' "${WORKBASE}/mozilla/mailnews/extensions/enigmail/package/install.rdf") + + emake -C mailnews/extensions/enigmail/ xpi + unzip -d "${IMAGE}/usr/$(get_libdir)/${PN}/extensions/${em_id}" "${WORK}/dist/bin"/*xpi || die "unzip failed" +} + src_prepare() { mozilla_src_prepare - sed \ - -e "/^mozappdir/ c mozappdir = /usr/$(get_libdir)/${PN}" \ - -i "${WORKBASE}"/mozilla/config/autoconf.mk.in \ - || die "mozappdir sed failed." + sed -e "/^mozappdir/ c mozappdir = /usr/$(get_libdir)/${PN}" \ + -i "${WORKBASE}"/mozilla/config/autoconf.mk.in || die "mozappdir sed failed." - if option enigmail ; then - mv "${WORKBASE}/enigmail" mailnews/extensions \ - || die "mv enigmail failed" - cd mailnews/extensions/enigmail \ - || die "cd enigmail failed" - expatch -p6 "${FILES}/enigmail_visibility_workaround.patch" - fi + cd "${ECONF_SOURCE}" || die "cd ${ECONF_SOURCE} failed" + expatch "${FILES}/${PNV}-nsAppRunner_empty_elif.patch" + + option enigmail && enigmail_src_prepare } src_configure() { - mkdir -p "${WORK}" - cd "${WORK}" - export MOZ_OBJDIR=@TOPSRCDIR@/../build - export MOZ_CO_PROJECT=browser - export MOZ_BUILD_PROJECTS=browser + export MOZ_CO_PROJECT=mail + export MOZ_BUILD_PROJECTS=mail econf \ --enable-application=mail \ --enable-crypto \ --enable-freetype \ - --enable-optimize \ --enable-system-cairo \ --disable-mochitest \ --disable-gnomeui \ --disable-gnomevfs \ --disable-javaxpcom \ + --disable-optimize \ --disable-strip \ --disable-xprint \ --with-system-nspr \ + --with-system-nss \ --with-system-jpeg \ --with-system-png \ --with-system-zlib \ --with-libIDL \ --with-x \ - --without-system-nss \ $(option_enable ldap) \ $(option_enable ldap ldap-experimental) \ $(option_enable !bindist official-branding) \ $(option_enable svg) \ --with-default-mozilla-five-home=/usr/$(get_libdir)/${PN} \ --with-distribution-id=org.exherbo + + option enigmail && enigmail_src_configure } src_compile() { default - if option enigmail ; then - cd mailnews/extensions/enigmail \ - || die "cd enigmail failed" - ./makemake -r \ - || die "./makemake -r failed" - emake \ - || die "emake in enigmail failed" - fi + + option enigmail && enigmail_src_compile } src_install() { default - if option enigmail ; then - local enigmail_path="mailnews/extensions/enigmail" - local install_rdf="${enigmail_path}/package/install.rdf" - # taken from enigmail-0.95.7-r2.ebuild - local em_id=$(sed -n '//!d; s/.*\({.*}\).*/\1/; p; q' ${install_rdf}) - local extension_path="/usr/$(get_libdir)/${PN}/extensions/${em_id}" - emake -C "${enigmail_path}" xpi - unzip -d "${IMAGE}/${extension_path}" "${WORK}/dist/bin"/*xpi - fi + option enigmail && enigmail_src_install } +