diff options
Diffstat (limited to 'www-client')
-rw-r--r-- | www-client/epiphany/Manifest | 4 | ||||
-rw-r--r-- | www-client/epiphany/epiphany-3.5.1.ebuild | 97 | ||||
-rw-r--r-- | www-client/epiphany/files/epiphany-3.3.90-paxctl-introspection.patch | 24 | ||||
-rwxr-xr-x | www-client/epiphany/files/paxctl.sh | 24 |
4 files changed, 149 insertions, 0 deletions
diff --git a/www-client/epiphany/Manifest b/www-client/epiphany/Manifest new file mode 100644 index 0000000..53c5abc --- /dev/null +++ b/www-client/epiphany/Manifest @@ -0,0 +1,4 @@ +AUX epiphany-3.3.90-paxctl-introspection.patch 835 RMD160 6b0e132afe80028e0ca66ace51bafe71fe2344c7 SHA1 bad74a12b1f4636bc38f77109e36389899a8ff39 SHA256 c7670baab442a5475e33a614d2f71fb4601398a1fc1bc898e6b9359d35d3d6b3 +AUX paxctl.sh 787 RMD160 1944c6ad29d556674a2aab18115d06c2e4842216 SHA1 45475a30566efbe674eeed341dc8e2932b3c732e SHA256 f55473f2b044d25598195b6676175bad9531d4374fff65505d7c717d90d0897e +DIST epiphany-3.5.1.tar.xz 2581752 RMD160 e17466dd4482c2e3f013b317267432690dbba1b1 SHA1 795e722859bfacb6bb26b85607e7224a741a07d7 SHA256 abf9b615c83062e992dbdce61896a907f09cd8c71b29d0eee89781a2c936d5a2 +EBUILD epiphany-3.5.1.ebuild 2627 RMD160 361879b139005d53705e1e736ca8eaf986375553 SHA1 674cbaae433fb84f8f82e5037cfa570c5d34abe2 SHA256 7d4d853560fd1a5955f1ed74a534687ae029ad06ffa4719cfcab0cbd6e512e6d diff --git a/www-client/epiphany/epiphany-3.5.1.ebuild b/www-client/epiphany/epiphany-3.5.1.ebuild new file mode 100644 index 0000000..5277c3c --- /dev/null +++ b/www-client/epiphany/epiphany-3.5.1.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany/epiphany-3.4.2.ebuild,v 1.2 2012/05/19 21:58:10 tetromino Exp $ + +EAPI="4" +GCONF_DEBUG="yes" + +inherit autotools eutils gnome2 pax-utils versionator virtualx +if [[ ${PV} = 9999 ]]; then + inherit gnome2-live +fi + +DESCRIPTION="GNOME webbrowser based on Webkit" +HOMEPAGE="http://projects.gnome.org/epiphany/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="avahi doc +introspection +jit +nss test" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" + +# XXX: Should we add seed support? Seed seems to be unmaintained now. +RDEPEND=" + >=dev-libs/glib-2.31.2:2 + >=x11-libs/gtk+-3.3.14:3[introspection?] + >=dev-libs/libxml2-2.6.12:2 + >=dev-libs/libxslt-1.1.7 + >=app-text/iso-codes-0.35 + >=net-libs/webkit-gtk-1.7.92:3[introspection?] + >=net-libs/libsoup-gnome-2.37.1:2.4 + >=gnome-base/gnome-keyring-2.26.0 + >=gnome-base/gsettings-desktop-schemas-0.0.1 + >=x11-libs/libnotify-0.5.1 + + dev-db/sqlite:3 + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + + x11-themes/gnome-icon-theme + x11-themes/gnome-icon-theme-symbolic + + avahi? ( >=net-dns/avahi-0.6.22 ) + introspection? ( >=dev-libs/gobject-introspection-0.9.5 ) + !jit? ( net-libs/webkit-gtk[-jit] ) + nss? ( dev-libs/nss )" +# paxctl needed for bug #407085 +DEPEND="${RDEPEND} + app-text/gnome-doc-utils + >=dev-util/intltool-0.40 + sys-devel/gettext + virtual/pkgconfig + jit? ( sys-apps/paxctl ) + doc? ( >=dev-util/gtk-doc-1 )" + +pkg_setup() { + DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS README TODO" + G2CONF="${G2CONF} + --enable-shared + --disable-schemas-compile + --disable-scrollkeeper + --disable-static + --with-distributor-name=Gentoo + $(use_enable avahi zeroconf) + $(use_enable introspection) + $(use_enable nss) + $(use_enable test tests)" +} + +src_prepare() { + # Build-time segfaults under PaX with USE=introspection when building + # against webkit-gtk[introspection,jit] + if use introspection && use jit; then + epatch "${FILESDIR}/${PN}-3.3.90-paxctl-introspection.patch" + cp "${FILESDIR}/paxctl.sh" "${S}/" || die + eautoreconf + fi + gnome2_src_prepare +} + +src_compile() { + # needed to avoid "Command line `dbus-launch ...' exited with non-zero exit status 1" + unset DISPLAY + gnome2_src_compile +} + +src_test() { + # FIXME: this should be handled at eclass level + "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/data" || die + + use jit && pax-mark m $(list-paxables tests/test*) #415801 + GSETTINGS_SCHEMA_DIR="${S}/data" Xemake check +} + +src_install() { + gnome2_src_install + use jit && pax-mark m "${ED}usr/bin/epiphany" +} diff --git a/www-client/epiphany/files/epiphany-3.3.90-paxctl-introspection.patch b/www-client/epiphany/files/epiphany-3.3.90-paxctl-introspection.patch new file mode 100644 index 0000000..f9e0616 --- /dev/null +++ b/www-client/epiphany/files/epiphany-3.3.90-paxctl-introspection.patch @@ -0,0 +1,24 @@ +From 1eee9260eba23a7fc17df49c5a0e24a99f88482a Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev <tetromino@gentoo.org> +Date: Sun, 4 Mar 2012 21:55:20 -0500 +Subject: [PATCH] Add PaX marking to allow building introspection under PaX + +--- + src/Makefile.am | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/src/Makefile.am b/src/Makefile.am +index d6bf77f..ce52591 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -277,6 +277,7 @@ EPHY_GIR_C_FILES = \ + + Epiphany-$(EPIPHANY_API_VERSION).gir: $(INTROSPECTION_SCANNER) $(EPHY_GIR_H_FILES) \ + $(EPHY_GIR_C_FILES) epiphany ++ bash $(top_srcdir)/paxctl.sh -m ./epiphany + $(AM_V_GEN) PKG_CONFIG_PATH=$(top_builddir)/data:$$PKG_CONFIG_PATH \ + $(INTROSPECTION_SCANNER) -v --warn-all \ + --identifier-prefix=Ephy \ +-- +1.7.8.5 + diff --git a/www-client/epiphany/files/paxctl.sh b/www-client/epiphany/files/paxctl.sh new file mode 100755 index 0000000..bb1b6e0 --- /dev/null +++ b/www-client/epiphany/files/paxctl.sh @@ -0,0 +1,24 @@ +#!/bin/bash +# PaX marking code stolen from pax-utils.eclass + +flags=${1//-}; shift + +if type -p paxctl > /dev/null; then + echo "PT PaX marking -${flags} $@" + for f in "$@"; do + # First, try modifying the existing PAX_FLAGS header + paxctl -q${flags} "${f}" && continue + # Second, try stealing the (unused under PaX) PT_GNU_STACK header + paxctl -qc${flags} "${f}" && continue + # Third, try pulling the base down a page, to create space and + # insert a PT_GNU_STACK header (works on ET_EXEC) + paxctl -qC${flags} "${f}" && continue + done +elif type -p scanelf > /dev/null; then + # Try scanelf, the Gentoo swiss-army knife ELF utility + # Currently this sets PT if it can, no option to control what it does. + echo "Fallback PaX marking -${flags} $@" + scanelf -Xxz ${flags} "$@" +fi + +exit 0 |