commit:     8c59488046d56db4e1a1cfbd86b979f91ac78e9e
Author:     Austin English <wizardedit <AT> gentoo <DOT> org>
AuthorDate: Tue May  3 17:09:56 2016 +0000
Commit:     Austin English <wizardedit <AT> gentoo <DOT> org>
CommitDate: Tue May  3 17:21:38 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c594880

net-p2p/mldonkey: use #!/sbin/openrc-run instead of #!/sbin/runscript

Gentoo-Bug: https://bugs.gentoo.org/573846

Package-Manager: portage-2.2.26

 net-p2p/mldonkey/files/mldonkey.initd     |   2 +-
 net-p2p/mldonkey/mldonkey-3.1.5-r1.ebuild | 175 ++++++++++++++++++++++++++++++
 2 files changed, 176 insertions(+), 1 deletion(-)

diff --git a/net-p2p/mldonkey/files/mldonkey.initd 
b/net-p2p/mldonkey/files/mldonkey.initd
index 7a007de..12dd599 100644
--- a/net-p2p/mldonkey/files/mldonkey.initd
+++ b/net-p2p/mldonkey/files/mldonkey.initd
@@ -1,4 +1,4 @@
-#!/sbin/runscript
+#!/sbin/openrc-run
 
 extra_started_commands="reload slow fast info"
 

diff --git a/net-p2p/mldonkey/mldonkey-3.1.5-r1.ebuild 
b/net-p2p/mldonkey/mldonkey-3.1.5-r1.ebuild
new file mode 100644
index 0000000..7a35089
--- /dev/null
+++ b/net-p2p/mldonkey/mldonkey-3.1.5-r1.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+WANT_AUTOCONF=2.5
+
+inherit 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="mirror://sourceforge/${PN}/${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"
+       eapply "${FILESDIR}/ocaml4.patch"
+       has_version '>=dev-lang/ocaml-4.03' && eapply 
"${FILESDIR}/ocaml-4.03.patch"
+
+       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
+}

Reply via email to