diff options
author | Alexis Ballier <aballier@gentoo.org> | 2017-01-31 22:16:17 +0100 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2017-01-31 22:16:17 +0100 |
commit | 372231920a28a3ad271faa6577656ed74bd836be (patch) | |
tree | 6ade837574b58cb490442aa1c4a734cadc19a046 /net-p2p/mldonkey | |
parent | media-libs/phonon-qt7: Fix metadata indentation (diff) | |
download | gentoo-372231920a28a3ad271faa6577656ed74bd836be.tar.gz gentoo-372231920a28a3ad271faa6577656ed74bd836be.tar.bz2 gentoo-372231920a28a3ad271faa6577656ed74bd836be.zip |
net-p2p/mldonkey: bump to 3.1.6
Package-Manager: Portage-2.3.3, Repoman-2.3.1
Diffstat (limited to 'net-p2p/mldonkey')
-rw-r--r-- | net-p2p/mldonkey/Manifest | 1 | ||||
-rw-r--r-- | net-p2p/mldonkey/mldonkey-3.1.6.ebuild | 173 |
2 files changed, 174 insertions, 0 deletions
diff --git a/net-p2p/mldonkey/Manifest b/net-p2p/mldonkey/Manifest index 04c00e0f62fe..e1806792026d 100644 --- a/net-p2p/mldonkey/Manifest +++ b/net-p2p/mldonkey/Manifest @@ -1 +1,2 @@ DIST mldonkey-3.1.5.tar.bz2 2847382 SHA256 74f9d4bcc72356aa28d0812767ef5b9daa03efc5d1ddabf56447dc04969911cb SHA512 96e75acf91d7ecc41490f898e06d284da27404c7e567f173936d8113885a3b4b6bc93341358f92a30d3f699eef681d97ce56414a37bb02a535ad2da4d4ad13a3 WHIRLPOOL b9e15809a49cc12e69a6d1188441e9d5603ec76cb7bfe2b2e0bfce3c50abb31296904c842f487076b227f577046ccbd3ceb7cd1a601d3faa6928b1bfde8c780f +DIST mldonkey-3.1.6.tar.bz2 2886916 SHA256 1b36b57c05a83c2e363c085bf8e80630884c6c92ecdeffc1ad5e1c39a98e043d SHA512 d0c7256c7c43934bc132183cfe0c8d85c61a874e295b86ba989f43fd4d9f3672bdf18439a9fefce52c30a6a8df08a5a464dcc21d4bf199d1b502fa344683081a WHIRLPOOL 1d5b6118dbe25fc3aad2cf9d57808cfc4c5466b4bb6b5c590c4541fdd400de0cf7ac55616f224eee763d88e08b03af26d873d9b6bf679808f7b5ade285f4d6d2 diff --git a/net-p2p/mldonkey/mldonkey-3.1.6.ebuild b/net-p2p/mldonkey/mldonkey-3.1.6.ebuild new file mode 100644 index 000000000000..1e90565587f4 --- /dev/null +++ b/net-p2p/mldonkey/mldonkey-3.1.6.ebuild @@ -0,0 +1,173 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="6" +WANT_AUTOCONF=2.5 + +inherit versionator flag-o-matic eutils autotools toolchain-funcs user + +IUSE="bittorrent doc fasttrack gd gnutella gtk guionly magic +ocamlopt" + +DESCRIPTION="A multi-network P2P application written in Ocaml, with its own Gtk GUI, web and telnet interface" +HOMEPAGE="http://mldonkey.sourceforge.net/" +SRC_URI="https://github.com/ygrek/mldonkey/releases/download/release-$(replace_all_version_separators '-')/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~sparc ~x86 ~x86-fbsd" + +RDEPEND="dev-lang/perl + dev-ml/camlp4:= + guionly? ( >=gnome-base/librsvg-2.4.0 + >=dev-ml/lablgtk-2.6 ) + gtk? ( >=gnome-base/librsvg-2.4.0 + >=dev-ml/lablgtk-2.6[svg] ) + gd? ( >=media-libs/gd-2.0.28[truetype] ) + magic? ( sys-apps/file )" + +DEPEND="${RDEPEND} + >=dev-lang/ocaml-3.10.2[ocamlopt?]" + +MLUSER="p2p" + +pkg_setup() { + if use gtk; then + echo "" + einfo "If the compile with gui fails, and you have updated Ocaml" + einfo "recently, you may have forgotten that you need to run" + einfo "/usr/portage/dev-lang/ocaml/files/ocaml-rebuild.sh" + einfo "to learn which ebuilds you need to recompile" + einfo "each time you update Ocaml to a different version" + einfo "see the Ocaml ebuild for details" + echo "" + fi + + # dev-lang/ocaml creates its own objects but calls gcc for linking, which will + # results in relocations if gcc wants to create a PIE executable + if gcc-specs-pie ; then + append-ldflags -nopie + ewarn "Ocaml generates its own native asm, you're using a PIE compiler" + ewarn "We have appended -nopie to ocaml build options" + ewarn "because linking an executable with pie while the objects are not pic will not work" + fi +} + +src_prepare() { + cd "${S}"/config + eautoconf + cd "${S}" + use ocamlopt || sed -i -e "s/ocamlopt/idontwantocamlopt/g" "${S}/config/configure" || die "failed to disable ocamlopt" + + default +} + +src_configure() { + # the dirs are not (yet) used, but it doesn't hurt to specify them anyway + + # onlygui Disable all nets support, build only chosen GUI + + if use gtk || use guionly; then + myconf="--enable-gui=newgui2" + else + myconf="--disable-gui" + fi + + if use guionly; then + myconf="${myconf} --disable-multinet --disable-donkey" + fi + + cd "${S}" + + local my_extra_libs + if use gd; then + my_extra_libs="-lpng" + fi + + econf LIBS="${my_extra_libs}"\ + --sysconfdir=/etc/mldonkey \ + --sharedstatedir=/var/mldonkey \ + --localstatedir=/var/mldonkey \ + --enable-checks \ + --disable-batch \ + $(use_enable bittorrent) \ + $(use_enable fasttrack) \ + $(use_enable gnutella) \ + $(use_enable gnutella gnutella2) \ + $(use_enable gd) \ + $(use_enable magic) \ + ${myconf} +} + +src_compile() { + export OCAMLRUNPARAM="l=256M" + emake + + if ! use guionly; then + emake utils + fi; +} + +src_install() { + local myext="" + use ocamlopt || myext=".byte" + use ocamlopt || export STRIP_MASK="*/bin/*" + if ! use guionly; then + for i in mlnet mld_hash get_range copysources subconv; do + newbin $i$myext $i + done + use bittorrent && newbin make_torrent$myext make_torrent + + newconfd "${FILESDIR}/mldonkey.confd-2.8" mldonkey + fperms 600 /etc/conf.d/mldonkey + newinitd "${FILESDIR}/mldonkey.initd" mldonkey + fi + + if use gtk; then + for i in mlgui mlguistarter; do + newbin $i$myext $i + done + make_desktop_entry mlgui "MLDonkey GUI" mldonkey "Network;P2P" + newicon "${S}"/packages/rpm/mldonkey-icon-48.png ${PN}.png + fi + + if use doc ; then + cd "${S}"/distrib + dodoc ChangeLog *.txt + + insinto /usr/share/doc/${PF}/scripts + doins kill_mldonkey mldonkey_command mldonkey_previewer make_buginfo + + cd "${S}"/docs + dodoc *.txt *.tex *.pdf + dohtml *.html + + cd "${S}"/docs/developers + dodoc *.txt *.tex + + cd "${S}"/docs/images + insinto /usr/share/doc/${PF}/html/images + doins * + fi +} + +pkg_preinst() { + if ! use guionly; then + enewuser ${MLUSER} -1 -1 /home/p2p users + fi +} + +pkg_postinst() { + if ! use guionly; then + echo + einfo "If you want to start MLDonkey as a system service, use" + einfo "the /etc/init.d/mldonkey script. To control bandwidth, use" + einfo "the 'slow' and 'fast' arguments. Be sure to have a look at" + einfo "/etc/conf.d/mldonkey also." + echo + else + echo + einfo "Simply run mlgui to start the chosen MLDonkey gui." + einfo "It puts its config files into ~/.mldonkey" + fi +} |