summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorAlexe-Cristia Moldovan <contact@crism.ro>2015-07-02 13:52:13 +0300
committerAlexe-Cristia Moldovan <contact@crism.ro>2015-07-02 13:52:13 +0300
commit5029ecadba3e5ee5ec1eac9820997a282410b9e9 (patch)
tree7937de5c32bb01d14b8e75b0c7d0c9feca2b0964 /eclass
parentfdb1f0f5d81b63e37023e1365a7d645f0c8ea7c6 (diff)
add eclass deadbeef
Diffstat (limited to 'eclass')
-rw-r--r--eclass/deadbeef-plugins.eclass44
1 files changed, 44 insertions, 0 deletions
diff --git a/eclass/deadbeef-plugins.eclass b/eclass/deadbeef-plugins.eclass
new file mode 100644
index 00000000..68c77ccf
--- /dev/null
+++ b/eclass/deadbeef-plugins.eclass
@@ -0,0 +1,44 @@
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: deadbeef-plugins.eclass
+# @MAINTAINER:
+# Roman Kuzmitsky <damex.pp@gmail.com>
+# @BLURB: Eclass for automating deadbeef player plugins installation.
+# @DESCRIPTION:
+# This eclass makes trivial deadbeef plugin ebuilds possible.
+# Many things that would normally be done manually is automated.
+
+if [[ "${EAPI}" -lt 5 ]] ; then
+ die "EAPI="${EAPI}" is not supported"
+fi
+
+inherit eutils
+
+: ${SLOT:=0}
+
+RDEPEND+=" media-sound/deadbeef:0"
+DEPEND+=" media-sound/deadbeef:0"
+
+RESTRICT+=" mirror"
+
+if [[ "${DEADBEEF_GUI}" == "yes" ]] ; then
+ IUSE+=" +gtk2 gtk3"
+ REQUIRED_USE="|| ( gtk2 gtk3 )"
+ GUI_DEPEND="gtk2? ( media-sound/deadbeef:0[gtk2] )
+ gtk3? ( media-sound/deadbeef:0[gtk3] )"
+ RDEPEND+=" ${GUI_DEPEND}"
+ DEPEND+=" ${GUI_DEPEND}"
+fi
+
+EXPORT_FUNCTIONS "src_install"
+
+# @FUNCTION: deadbeef-plugins_src_install
+# @DESCRIPTION:
+# Looking for a *.so deadbeef plugins and installs found plugins to corresponding deadbeef directory.
+deadbeef-plugins_src_install() {
+ local plugins=`find "${WORKDIR}" -name "*.so" -type f`
+ for plugin in ${plugins} ; do
+ insinto "/usr/$(get_libdir)/deadbeef"
+ doins "${plugin}"
+ done
+}