diff options
author | Samuli Suominen <ssuominen@gentoo.org> | 2012-04-08 17:52:15 +0000 |
---|---|---|
committer | Samuli Suominen <ssuominen@gentoo.org> | 2012-04-08 17:52:15 +0000 |
commit | 37c3e2fee1453f07ca2345385ff62ffd5a1cf653 (patch) | |
tree | 5632acfe33879cc989846dc92dfd584d4e24cb77 /net-p2p | |
parent | Stable for HPPA (bug #410931). (diff) | |
download | gentoo-2-37c3e2fee1453f07ca2345385ff62ffd5a1cf653.tar.gz gentoo-2-37c3e2fee1453f07ca2345385ff62ffd5a1cf653.tar.bz2 gentoo-2-37c3e2fee1453f07ca2345385ff62ffd5a1cf653.zip |
Fix segmentation fault when opening a torrent file on systems that don't define G_USER_DIRECTORY_DOWNLOAD wrt #408067 by Elijah El Lazkani
(Portage version: 2.2.0_alpha99/cvs/Linux x86_64)
Diffstat (limited to 'net-p2p')
-rw-r--r-- | net-p2p/transmission/ChangeLog | 9 | ||||
-rw-r--r-- | net-p2p/transmission/files/transmission-2.50-segfault.patch | 19 | ||||
-rw-r--r-- | net-p2p/transmission/transmission-2.50-r2.ebuild | 198 |
3 files changed, 225 insertions, 1 deletions
diff --git a/net-p2p/transmission/ChangeLog b/net-p2p/transmission/ChangeLog index 03f779e4e5bb..d74ecdfde689 100644 --- a/net-p2p/transmission/ChangeLog +++ b/net-p2p/transmission/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-p2p/transmission # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/ChangeLog,v 1.186 2012/03/21 06:21:26 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/ChangeLog,v 1.187 2012/04/08 17:52:15 ssuominen Exp $ + +*transmission-2.50-r2 (08 Apr 2012) + + 08 Apr 2012; Samuli Suominen <ssuominen@gentoo.org> + +transmission-2.50-r2.ebuild, +files/transmission-2.50-segfault.patch: + Fix segmentation fault when opening a torrent file on systems that don't + define G_USER_DIRECTORY_DOWNLOAD wrt #408067 by Elijah El Lazkani 21 Mar 2012; Samuli Suominen <ssuominen@gentoo.org> -transmission-2.22.ebuild, -transmission-2.42-r1.ebuild, diff --git a/net-p2p/transmission/files/transmission-2.50-segfault.patch b/net-p2p/transmission/files/transmission-2.50-segfault.patch new file mode 100644 index 000000000000..90d4ff2f0246 --- /dev/null +++ b/net-p2p/transmission/files/transmission-2.50-segfault.patch @@ -0,0 +1,19 @@ +http://bugs.gentoo.org/408067 +http://trac.transmissionbt.com/ticket/4573 + +--- gtk/conf.c ++++ gtk/conf.c +@@ -68,4 +68,5 @@ + { + const char * str; ++ const char * special_dl_dir = g_get_user_special_dir( G_USER_DIRECTORY_DOWNLOAD ); + + cf_check_older_configs( ); +@@ -107,6 +108,5 @@ + tr_bencDictAddInt( d, PREF_KEY_MAIN_WINDOW_Y, 50 ); + +- str = g_get_user_special_dir( G_USER_DIRECTORY_DOWNLOAD ); +- tr_bencDictAddStr( d, TR_PREFS_KEY_DOWNLOAD_DIR, str ); ++ tr_bencDictAddStr( d, TR_PREFS_KEY_DOWNLOAD_DIR, special_dl_dir ? special_dl_dir : str ); + + tr_bencDictAddStr( d, PREF_KEY_SORT_MODE, "sort-by-name" ); diff --git a/net-p2p/transmission/transmission-2.50-r2.ebuild b/net-p2p/transmission/transmission-2.50-r2.ebuild new file mode 100644 index 000000000000..5aed60f37a11 --- /dev/null +++ b/net-p2p/transmission/transmission-2.50-r2.ebuild @@ -0,0 +1,198 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/transmission-2.50-r2.ebuild,v 1.1 2012/04/08 17:52:15 ssuominen Exp $ + +EAPI=4 +LANGS="en es kk lt pt_BR ru" + +unset _live_inherits + +if [[ ${PV} == *9999* ]]; then + ESVN_REPO_URI="svn://svn.transmissionbt.com/Transmission/trunk" + _live_inherits=subversion +else + SRC_URI="http://download.transmissionbt.com/${PN}/files/${P}.tar.xz" + KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd" +fi + +inherit autotools eutils fdo-mime gnome2-utils qt4-r2 ${_live_inherits} + +DESCRIPTION="A Fast, Easy and Free BitTorrent client" +HOMEPAGE="http://www.transmissionbt.com/" + +LICENSE="GPL-2 MIT" +SLOT="0" +IUSE="ayatana gtk lightweight qt4 xfs" + +RDEPEND=" + >=dev-libs/libevent-2.0.10 + dev-libs/openssl:0 + net-libs/libnatpmp + >=net-libs/miniupnpc-1.6 + >=net-misc/curl-7.16.3[ssl] + sys-libs/zlib + gtk? ( + >=dev-libs/dbus-glib-0.98 + >=dev-libs/glib-2.28 + >=x11-libs/gtk+-3.2:3 + ayatana? ( dev-libs/libappindicator:3 ) + ) + qt4? ( + x11-libs/qt-core:4 + x11-libs/qt-gui:4[dbus] + )" + +DEPEND="${RDEPEND} + dev-util/intltool + dev-util/pkgconfig + sys-devel/gettext + virtual/os-headers + xfs? ( sys-fs/xfsprogs )" + +REQUIRED_USE="ayatana? ( gtk )" + +DOCS="AUTHORS NEWS qt/README.txt" + +pkg_setup() { + enewgroup ${PN} + enewuser ${PN} -1 -1 -1 ${PN} +} + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + subversion_src_unpack + else + default + fi +} + +src_prepare() { + if [[ ${PV} == *9999* ]]; then + subversion_src_prepare + ./update-version-h.sh + fi + + epatch "${FILESDIR}"/${PN}-2.50-build-with-natpmp1.patch #376647 + epatch "${FILESDIR}"/${PN}-2.50-punt_broken_CXX_check.patch #407137 + epatch "${FILESDIR}"/${PN}-2.50-segfault.patch #408067 + + sed -i -e '/CFLAGS/s:-ggdb3::' configure.ac + use ayatana || sed -i -e '/^LIBAPPINDICATOR_MINIMUM/s:=.*:=9999:' configure.ac + + # http://trac.transmissionbt.com/ticket/4324 + sed -i -e 's|noinst\(_PROGRAMS = $(TESTS)\)|check\1|' lib${PN}/Makefile.am || die + + eautoreconf + intltoolize --copy --force --automake || die + + if use qt4; then + cat <<-EOF > "${T}"/${PN}-magnet.protocol + [Protocol] + exec=${PN}-qt '%u' + protocol=magnet + Icon=${PN} + input=none + output=none + helper=true + listing= + reading=false + writing=false + makedir=false + deleting=false + EOF + fi +} + +src_configure() { + export ac_cv_header_xfs_xfs_h=$(usex xfs) + + econf \ + --enable-external-natpmp \ + $(use_enable lightweight) \ + $(use_with gtk) + + if use qt4; then + pushd qt >/dev/null + eqmake4 qtr.pro + popd >/dev/null + fi +} + +src_compile() { + default + + if use qt4; then + pushd qt >/dev/null + emake + + local l + for l in ${LANGS}; do + if use linguas_${l}; then + lrelease translations/${PN}_${l}.ts + fi + done + popd >/dev/null + fi +} + +src_install() { + default + + rm -f "${ED}"/usr/share/${PN}/web/LICENSE + + newinitd "${FILESDIR}"/${PN}-daemon.initd.8 ${PN}-daemon + newconfd "${FILESDIR}"/${PN}-daemon.confd.3 ${PN}-daemon + + keepdir /var/{${PN}/{config,downloads},log/${PN}} + fowners -R ${PN}:${PN} /var/{${PN}/{,config,downloads},log/${PN}} + + if use qt4; then + pushd qt >/dev/null + emake INSTALL_ROOT="${D}"/usr install + + domenu ${PN}-qt.desktop + + local res + for res in 16 22 24 32 48; do + insinto /usr/share/icons/hicolor/${res}x${res}/apps + newins icons/hicolor_apps_${res}x${res}_${PN}.png ${PN}-qt.png + done + + insinto /usr/share/kde4/services + doins "${T}"/${PN}-magnet.protocol + + insinto /usr/share/qt4/translations + local l + for l in ${LANGS}; do + if use linguas_${l}; then + doins translations/${PN}_${l}.qm + fi + done + popd >/dev/null + fi +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + fdo-mime_desktop_database_update + gnome2_icon_cache_update + + elog "If you use ${PN}-daemon, please, set 'rpc-username' and" + elog "'rpc-password' (in plain text, ${PN}-daemon will hash it on" + elog "start) in settings.json file located at /var/${PN}/config or" + elog "any other appropriate config directory." + elog + elog "Since µTP is enabled by default, ${PN} needs large kernel buffers for" + elog "the UDP socket. You can append following lines into /etc/sysctl.conf:" + elog " net.core.rmem_max = 4194304" + elog " net.core.wmem_max = 1048576" + elog "and run sysctl -p" +} + +pkg_postrm() { + fdo-mime_desktop_database_update + gnome2_icon_cache_update +} |