From 775080bad047315ea4b1fe1ede87580d85a64040 Mon Sep 17 00:00:00 2001 From: dakkar Date: Sat, 13 Jan 2018 13:06:25 +0000 Subject: let's keep using old webkit for claws --- mail-client/claws-mail/Manifest | 2 + mail-client/claws-mail/claws-mail-3.16.0-r1.ebuild | 206 ++++++++++++++++ net-libs/webkit-gtk/Manifest | 2 + net-libs/webkit-gtk/webkit-gtk-2.4.11-r200.ebuild | 262 +++++++++++++++++++++ 4 files changed, 472 insertions(+) create mode 100644 mail-client/claws-mail/Manifest create mode 100644 mail-client/claws-mail/claws-mail-3.16.0-r1.ebuild create mode 100644 net-libs/webkit-gtk/Manifest create mode 100644 net-libs/webkit-gtk/webkit-gtk-2.4.11-r200.ebuild diff --git a/mail-client/claws-mail/Manifest b/mail-client/claws-mail/Manifest new file mode 100644 index 0000000..22b67d7 --- /dev/null +++ b/mail-client/claws-mail/Manifest @@ -0,0 +1,2 @@ +DIST claws-mail-3.16.0.tar.xz 5913948 SHA256 c212133d3d962129d8c7995c1c7d973faef2a8914481c0c74578217bf4c897ab SHA512 5c96e21b4c5117b67ccfe4178c68e2f1b1449f882d6ecf22041e41f08fd607c6ce7afe6c7fdbd039da7ffc5673d366551b15d3e4b7de8d758fc1554a8eadc55e WHIRLPOOL 875ed7f49010a6926c1026a7d9c902ffd509641576e2785b0e93bb920cb2e80ee1208429f2a76a1d9eeff0047b2887c61ba71693bac050e2c14cec15827f41f7 +EBUILD claws-mail-3.16.0-r1.ebuild 5777 SHA256 7421ce18c14ebb377d1cf10d3bc42476e12143a9f55527eea46a128bb4282ea4 SHA512 3504ded01e631cdef10a39713bd929ee3fb158b30ace4d0e26113d8d73dda681a3d8a2ca168f43dd52864503decf6a8d1813422192dee955e236e80d07dc8af2 WHIRLPOOL 0114221c838333728c3a7d5927e5ef4f0601edfe6ee2ac0e21dba373c06535c79e1ee93045354601a0b97a68321b31e9cc7beb34e2f5785c1d92a3a61d4e6f74 diff --git a/mail-client/claws-mail/claws-mail-3.16.0-r1.ebuild b/mail-client/claws-mail/claws-mail-3.16.0-r1.ebuild new file mode 100644 index 0000000..1524035 --- /dev/null +++ b/mail-client/claws-mail/claws-mail-3.16.0-r1.ebuild @@ -0,0 +1,206 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 ) +inherit autotools gnome2-utils python-single-r1 xdg-utils + +DESCRIPTION="An email client (and news reader) based on GTK+" +HOMEPAGE="http://www.claws-mail.org/" + +SRC_URI="http://www.claws-mail.org/download.php?file=releases/${P}.tar.xz" + +SLOT="0" +LICENSE="GPL-3" +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~x86" + +IUSE="archive bogofilter calendar clamav dbus debug doc gdata +gnutls gtk3 +imap ipv6 ldap +libcanberra +libindicate +libnotify networkmanager nls nntp +notification pda pdf perl +pgp python rss session sieve smime spamassassin spam-report spell startup-notification svg valgrind webkit xface" +REQUIRED_USE="libcanberra? ( notification ) + libindicate? ( notification ) + libnotify? ( notification ) + networkmanager? ( dbus ) + python? ( ${PYTHON_REQUIRED_USE} ) + smime? ( pgp )" + +COMMONDEPEND=" + net-mail/ytnef + archive? ( + app-arch/libarchive + >=net-misc/curl-7.9.7 + ) + bogofilter? ( mail-filter/bogofilter ) + calendar? ( + >=dev-libs/libical-2.0.0 + >=net-misc/curl-7.9.7 + ) + dbus? ( >=dev-libs/dbus-glib-0.60 ) + gdata? ( >=dev-libs/libgdata-0.17.2 ) + gnutls? ( >=net-libs/gnutls-3.0 ) + gtk3? ( x11-libs/gtk+:3 ) + !gtk3? ( >=x11-libs/gtk+-2.20:2 ) + imap? ( >=net-libs/libetpan-0.57 ) + ldap? ( >=net-nds/openldap-2.0.7 ) + nls? ( >=sys-devel/gettext-0.18 ) + nntp? ( >=net-libs/libetpan-0.57 ) + notification? ( + dev-libs/glib:2 + libcanberra? ( media-libs/libcanberra[gtk] ) + libindicate? ( dev-libs/libindicate:3[gtk] ) + libnotify? ( x11-libs/libnotify ) + ) + pda? ( >=app-pda/jpilot-0.99 ) + pdf? ( app-text/poppler[cairo] ) + pgp? ( >=app-crypt/gpgme-1.0.0 ) + session? ( + x11-libs/libICE + x11-libs/libSM + ) + smime? ( >=app-crypt/gpgme-1.0.0 ) + spam-report? ( >=net-misc/curl-7.9.7 ) + spell? ( >=app-text/enchant-1.0.0 ) + startup-notification? ( x11-libs/startup-notification ) + svg? ( >=gnome-base/librsvg-2.40.5 ) + valgrind? ( dev-util/valgrind ) + webkit? ( >=net-libs/webkit-gtk-1.1.14:2 ) +" + +DEPEND="${COMMONDEPEND} + app-arch/xz-utils + virtual/pkgconfig + xface? ( >=media-libs/compface-1.4 )" + +RDEPEND="${COMMONDEPEND} + app-misc/mime-types + x11-misc/shared-mime-info + clamav? ( app-antivirus/clamav ) + networkmanager? ( net-misc/networkmanager ) + pdf? ( app-text/ghostscript-gpl ) + perl? ( dev-lang/perl:= ) + python? ( + ${PYTHON_DEPS} + >=dev-python/pygtk-2.10.3 + ) + rss? ( + dev-libs/libxml2 + net-misc/curl + )" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + eautoreconf +} + +src_configure() { + # Don't use libsoup-gnome (bug #565924) + export HAVE_LIBSOUP_GNOME=no + + local myeconfargs=( + --disable-bsfilter-plugin + --disable-generic-umpc + --enable-acpi_notifier-plugin + --enable-address_keeper-plugin + --enable-alternate-addressbook + --enable-att_remover-plugin + --enable-attachwarner-plugin + --enable-fetchinfo-plugin + --enable-mailmbox-plugin + --enable-newmail-plugin + --enable-tnef_parse-plugin + --with-password-encryption=$(usex gnutls gnutls old) + $(use_enable archive archive-plugin) + $(use_enable bogofilter bogofilter-plugin) + $(use_enable calendar vcalendar-plugin) + $(use_enable clamav clamd-plugin) + $(use_enable dbus) + $(use_enable debug crash-dialog) + $(use_enable doc manual) + $(use_enable gdata gdata-plugin) + $(use_enable gnutls) + $(use_enable gtk3) + $(use_enable ipv6) + $(use_enable ldap) + $(use_enable networkmanager) + $(use_enable nls) + $(use_enable notification notification-plugin) + $(use_enable pda jpilot) + $(use_enable pdf pdf_viewer-plugin) + $(use_enable perl perl-plugin) + $(use_enable pgp pgpcore-plugin) + $(use_enable pgp pgpinline-plugin) + $(use_enable pgp pgpmime-plugin) + $(use_enable python python-plugin) + $(use_enable rss rssyl-plugin) + $(use_enable session libsm) + $(use_enable sieve managesieve-plugin) + $(use_enable smime smime-plugin) + $(use_enable spam-report spam_report-plugin) + $(use_enable spamassassin spamassassin-plugin) + $(use_enable spell enchant) + $(use_enable startup-notification) + $(use_enable svg) + $(use_enable valgrind valgrind) + $(use_enable webkit fancy-plugin) + $(use_enable xface compface) + ) + + # libetpan is needed if user wants nntp or imap functionality + if use imap || use nntp ; then + myeconfargs+=( --enable-libetpan ) + else + myeconfargs+=( --disable-libetpan ) + fi + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +src_install() { + local DOCS=( AUTHORS ChangeLog* INSTALL* NEWS README* TODO* ) + default + + # Makefile install claws-mail.png in /usr/share/icons/hicolor/48x48/apps + # => also install it in /usr/share/pixmaps for other desktop envs + # => also install higher resolution icons in /usr/share/icons/hicolor/... + insinto /usr/share/pixmaps + doins ${PN}.png + local size + for size in 64 128 ; do + newicon -s ${size} ${PN}-${size}x${size}.png ${PN}.png + done + + docinto tools + dodoc tools/README* + + domenu ${PN}.desktop + + einfo "Installing extra tools" + cd "${S}"/tools + exeinto /usr/$(get_libdir)/${PN}/tools + doexe *.pl *.py *.conf *.sh + doexe tb2claws-mail update-po uudec uuooffice + + # kill useless files + rm -f "${ED%/}"/usr/lib*/claws-mail/plugins/*.{a,la} +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + ewarn "When upgrading from version 3.9.0 or below some changes have happened:" + ewarn "- There are no individual plugins in mail-client/claws-mail-* anymore, but they are integrated mostly controlled through USE flags" + ewarn "- Plugins with no special dependencies are just built and can be loaded through the interface" + ewarn "- The gtkhtml2, dillo and trayicon plugins have been dropped entirely" + gnome2_icon_cache_update + xdg_desktop_database_update +} + +pkg_postrm() { + gnome2_icon_cache_update + xdg_desktop_database_update +} diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest new file mode 100644 index 0000000..3e4d5b6 --- /dev/null +++ b/net-libs/webkit-gtk/Manifest @@ -0,0 +1,2 @@ +DIST webkitgtk-2.4.11.tar.xz 9869100 SHA256 588aea051bfbacced27fdfe0335a957dca839ebe36aa548df39c7bbafdb65bf7 SHA512 2e2cf01a52b8593765a0a3c2d7f0ad306121660019eb402226bd2826c7d4666dab4e91ca6ccbd29abe0ad3993549f256ed1ab88de22e9c8516d5f40a4edd6bfb WHIRLPOOL de86c4abfb22aacbf62163d0398158931c9cf6ab628547d3b30e613f0505d67c85c3200f7db96500e7c2b35f640cdaa7f501346fc13f492c9439dff4056849a3 +EBUILD webkit-gtk-2.4.11-r200.ebuild 8373 SHA256 fd9192efa1b99815a456576fb1c2546747b7d4ebe07bbba2a79df26db0aee254 SHA512 7b96440750ed9f5e6402aed773cfe1e40e419364d7d526922247e58c9cb7ead97960f9866d90cc990abce8e183d06bd66191d09991d137b7b9ba86faee4f4dca WHIRLPOOL 49a2b920b0fdc7b0bc4846279060ab842494ca04a6748617b54d3ee7ec6622225c6405097c797402bf208b495802588fb1e08ef659ce3393c762821b1745bbaa diff --git a/net-libs/webkit-gtk/webkit-gtk-2.4.11-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.4.11-r200.ebuild new file mode 100644 index 0000000..1c3cf3c --- /dev/null +++ b/net-libs/webkit-gtk/webkit-gtk-2.4.11-r200.ebuild @@ -0,0 +1,262 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" +PYTHON_COMPAT=( python2_7 ) +USE_RUBY="ruby20 ruby21 ruby22 ruby23" + +inherit autotools check-reqs flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs versionator virtualx + +MY_P="webkitgtk-${PV}" +DESCRIPTION="Open source web browser engine" +HOMEPAGE="http://www.webkitgtk.org/" +SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz" + +LICENSE="LGPL-2+ BSD" +SLOT="2" # no usable subslot +KEYWORDS="~alpha amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos" + +IUSE="aqua coverage debug +egl +geoloc gles2 gnome-keyring +gstreamer +introspection +jit +opengl spell +webgl +X" +# bugs 372493, 416331 +REQUIRED_USE=" + geoloc? ( introspection ) + gles2? ( egl ) + introspection? ( gstreamer ) + webgl? ( ^^ ( gles2 opengl ) ) + !webgl? ( ?? ( gles2 opengl ) ) + || ( aqua X ) +" + +# use sqlite, svg by default +RDEPEND=" + dev-db/sqlite:3= + >=dev-libs/glib-2.36:2 + >=dev-libs/icu-3.8.1-r1:= + >=dev-libs/libxml2-2.6:2 + >=dev-libs/libxslt-1.1.7 + >=media-libs/fontconfig-2.5:1.0 + >=media-libs/freetype-2.4.2:2 + >=media-libs/harfbuzz-0.9.7:=[icu(+)] + >=media-libs/libpng-1.4:0= + media-libs/libwebp:= + >=net-libs/libsoup-2.42:2.4[introspection?] + virtual/jpeg:0= + >=x11-libs/cairo-1.10:=[X] + >=x11-libs/gtk+-2.24.10:2[aqua?,introspection?] + x11-libs/libXrender + x11-libs/libXt + >=x11-libs/pango-1.30.0 + + egl? ( media-libs/mesa[egl] ) + geoloc? ( >=app-misc/geoclue-2.1.5:2.0 ) + gles2? ( media-libs/mesa[gles2] ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( + >=media-libs/gstreamer-1.2:1.0 + >=media-libs/gst-plugins-base-1.2:1.0 ) + introspection? ( >=dev-libs/gobject-introspection-1.32.0:= ) + opengl? ( virtual/opengl ) + spell? ( >=app-text/enchant-0.22:= ) + webgl? ( + x11-libs/cairo[opengl] + x11-libs/libXcomposite + x11-libs/libXdamage ) +" + +# paxctl needed for bug #407085 +# Need real bison, not yacc +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + ${RUBY_DEPS} + >=dev-lang/perl-5.10 + >=dev-libs/atk-2.8.0 + >=dev-util/gtk-doc-am-1.10 + >=dev-util/gperf-3.0.1 + >=sys-devel/bison-2.4.3 + >=sys-devel/flex-2.5.34 + || ( >=sys-devel/gcc-4.7 >=sys-devel/clang-3.3 ) + sys-devel/gettext + >=sys-devel/make-3.82-r4 + virtual/pkgconfig + + geoloc? ( dev-util/gdbus-codegen ) + introspection? ( jit? ( sys-apps/paxctl ) ) + test? ( + dev-lang/python:2.7 + dev-python/pygobject:3[python_targets_python2_7] + x11-themes/hicolor-icon-theme + jit? ( sys-apps/paxctl ) ) +" + +S="${WORKDIR}/${MY_P}" + +CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307 + +pkg_pretend() { + if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then + einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS" + check-reqs_pkg_pretend + fi + + if [[ ${MERGE_TYPE} != "binary" ]] && ! test-flag-CXX -std=c++11; then + die "You need at least GCC 4.7.x or Clang >= 3.3 for C++11-specific compiler flags" + fi +} + +pkg_setup() { + # Check whether any of the debugging flags is enabled + if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then + if is-flagq "-ggdb" && [[ ${WEBKIT_GTK_GGDB} != "yes" ]]; then + replace-flags -ggdb -g + ewarn "Replacing \"-ggdb\" with \"-g\" in your CFLAGS." + ewarn "Building ${PN} with \"-ggdb\" produces binaries which are too" + ewarn "large for current binutils releases (bug #432784) and has very" + ewarn "high temporary build space and memory requirements." + ewarn "If you really want to build ${PN} with \"-ggdb\", add" + ewarn "WEBKIT_GTK_GGDB=yes" + ewarn "to your make.conf file." + fi + einfo "You need to have at least 18GB of temporary build space available" + einfo "to build ${PN} with debugging CFLAGS. Note that it might still" + einfo "not be enough, as the total space requirements depend on the flags" + einfo "(-ggdb vs -g1) and enabled features." + check-reqs_pkg_setup + fi + + [[ ${MERGE_TYPE} = "binary" ]] || python-any-r1_pkg_setup +} + +src_prepare() { + # intermediate MacPorts hack while upstream bug is not fixed properly + # https://bugs.webkit.org/show_bug.cgi?id=28727 + use aqua && eapply "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch + + # Leave optimization level to user CFLAGS + # FORTIFY_SOURCE is enabled by default in Gentoo + sed -e 's/-O[012]//g' \ + -e 's/-D_FORTIFY_SOURCE=2//g' \ + -i Source/autotools/SetupCompilerFlags.m4 || die + + # bug #459978, upstream bug #113397 + eapply "${FILESDIR}"/${PN}-1.11.90-gtk-docize-fix.patch + + # Debian patches to fix support for some arches + # https://bugs.webkit.org/show_bug.cgi?id=129540 + eapply "${FILESDIR}"/${PN}-2.2.5-{hppa,ia64}-platform.patch + # https://bugs.webkit.org/show_bug.cgi?id=129542 + eapply "${FILESDIR}"/${PN}-2.4.1-ia64-malloc.patch + + # Fix build with recent libjpeg, bug #481688 + # https://bugs.webkit.org/show_bug.cgi?id=122412 + eapply "${FILESDIR}"/${PN}-2.4.4-jpeg-9a.patch + + # Fix building with --disable-webgl, bug #500966 + # https://bugs.webkit.org/show_bug.cgi?id=131267 + eapply "${FILESDIR}"/${PN}-2.4.7-disable-webgl.patch + + # https://bugs.webkit.org/show_bug.cgi?id=156510 + eapply "${FILESDIR}"/${PN}-2.4.11-video-web-audio.patch + + # https://bugs.webkit.org/show_bug.cgi?id=159124#c1 + eapply "${FILESDIR}"/${PN}-2.4.9-gcc-6.patch + + AT_M4DIR=Source/autotools eautoreconf + + gnome2_src_prepare +} + +src_configure() { + # Respect CC, otherwise fails on prefix #395875 + tc-export CC + + # Arches without JIT support also need this to really disable it in all places + use jit || append-cppflags -DENABLE_JIT=0 -DENABLE_YARR_JIT=0 -DENABLE_ASSEMBLER=0 + + # It does not compile on alpha without this in LDFLAGS + # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761 + use alpha && append-ldflags "-Wl,--no-relax" + + # Sigbuses on SPARC with mcpu and co., bug #??? + use sparc && filter-flags "-mvis" + + # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634 + use ppc64 && append-flags "-mminimal-toc" + + # Try to use less memory, bug #469942 (see Fedora .spec for reference) + # --no-keep-memory doesn't work on ia64, bug #502492 + if ! use ia64; then + append-ldflags "-Wl,--no-keep-memory" + fi + if ! $(tc-getLD) --version | grep -q "GNU gold"; then + append-ldflags "-Wl,--reduce-memory-overheads" + fi + + local ruby_interpreter="" + + if has_version "virtual/rubygems[ruby_targets_ruby23]"; then + ruby_interpreter="RUBY=$(type -P ruby23)" + elif has_version "virtual/rubygems[ruby_targets_ruby22]"; then + ruby_interpreter="RUBY=$(type -P ruby22)" + elif has_version "virtual/rubygems[ruby_targets_ruby21]"; then + ruby_interpreter="RUBY=$(type -P ruby21)" + else + ruby_interpreter="RUBY=$(type -P ruby20)" + fi + + # TODO: Check Web Audio support + # should somehow let user select between them? + # + # * dependency-tracking is required so parallel builds won't fail + gnome2_src_configure \ + $(use_enable aqua quartz-target) \ + $(use_enable coverage) \ + $(use_enable debug) \ + $(use_enable egl) \ + $(use_enable geoloc geolocation) \ + $(use_enable gles2) \ + $(use_enable gnome-keyring credential_storage) \ + $(use_enable gstreamer video) \ + $(use_enable gstreamer web-audio) \ + $(use_enable introspection) \ + $(use_enable jit) \ + $(use_enable opengl glx) \ + $(use_enable spell spellcheck) \ + $(use_enable webgl) \ + $(use_enable webgl accelerated-compositing) \ + $(use_enable X x11-target) \ + --with-gtk=2.0 \ + --disable-webkit2 \ + --enable-dependency-tracking \ + --disable-gtk-doc \ + ${ruby_interpreter} +} + +src_test() { + # Tests expect an out-of-source build in WebKitBuild + ln -s . WebKitBuild || die "ln failed" + + # Prevents test failures on PaX systems + use jit && pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test* + + # Tests need virtualx, bug #294691, bug #310695 + # Parallel tests sometimes fail + virtx emake -j1 check +} + +src_install() { + DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install + + # https://bugs.webkit.org/show_bug.cgi?id=129242 + MAKEOPTS="${MAKEOPTS} -j1" gnome2_src_install + + newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk + newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore + newdoc Source/WebCore/ChangeLog ChangeLog.WebCore + + # Prevents crashes on PaX systems + use jit && pax-mark m "${ED}usr/bin/jsc-1" + + # File collisions with slot 3 + # bug #402699, https://bugs.webkit.org/show_bug.cgi?id=78134 + rm -rf "${ED}usr/share/gtk-doc" || die +} -- cgit v1.2.3