summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/supercollider')
-rw-r--r--media-sound/supercollider/Manifest1
-rw-r--r--media-sound/supercollider/metadata.xml29
-rw-r--r--media-sound/supercollider/supercollider-3.8.0.ebuild95
3 files changed, 125 insertions, 0 deletions
diff --git a/media-sound/supercollider/Manifest b/media-sound/supercollider/Manifest
new file mode 100644
index 000000000000..b66c1c719261
--- /dev/null
+++ b/media-sound/supercollider/Manifest
@@ -0,0 +1 @@
+DIST SuperCollider-3.8.0-Source-linux.tar.bz2 8866545 SHA256 a6ea1fab694f2247baf5598e1d9dffc0738a238b8607b2e8fe4c872e58176b14 SHA512 305898067cb323682ca3dc65b3f093658192dbad228632d928f2fbd4a635c651f49e2e4f32c338997aafd48a22b739cd80de4296f747c3f1810ddede0aff283a WHIRLPOOL c3516d03bb299274327fa3d5120524ecf20002df34286ae8db29057c8846a3baad5bad7985cc00cb3a70049d017ab7d4cfc935849fdd393dcaccadc5c580cadc
diff --git a/media-sound/supercollider/metadata.xml b/media-sound/supercollider/metadata.xml
new file mode 100644
index 000000000000..402e823eeec0
--- /dev/null
+++ b/media-sound/supercollider/metadata.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@ingolf-wagner.de</email>
+ <description>Primary maintainer</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <longdescription>
+ SuperCollider is a platform for audio synthesis and algorithmic
+ composition, used by musicians, artists, and researchers
+ working with sound. It is free and open source software
+ available for Windows, Mac OS X, and Linux.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">supercollider/supercollider</remote-id>
+ </upstream>
+ <use>
+ <flag name="vim">Enable the SCVIM user interface</flag>
+ <flag name="emacs">Enable the SCEL user interface</flag>
+ <flag name="gedit">Enable the SCED user interface</flag>
+ <flag name="gpl3">Build GPL-3 licensed code (recommended)</flag>
+ <flag name="server">Build with internal server</flag>
+ <flag name="wiimote">Build sclang with Wii Remote support</flag>
+ </use>
+</pkgmetadata>
diff --git a/media-sound/supercollider/supercollider-3.8.0.ebuild b/media-sound/supercollider/supercollider-3.8.0.ebuild
new file mode 100644
index 000000000000..172e0129d89a
--- /dev/null
+++ b/media-sound/supercollider/supercollider-3.8.0.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils readme.gentoo-r1
+
+DESCRIPTION="An environment and a programming language for real time audio synthesis."
+HOMEPAGE="https://supercollider.github.io/"
+SRC_URI="https://github.com/supercollider/supercollider/releases/download/Version-${PV}/SuperCollider-${PV}-Source-linux.tar.bz2"
+
+LICENSE="GPL-2 gpl3? ( GPL-3 )"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="avahi cpu_flags_x86_sse cpu_flags_x86_sse2 debug emacs +fftw gedit +gpl3 jack +portaudio qt5 server +sndfile static-libs vim wiimote"
+REQUIRED_USE="^^ ( jack portaudio )"
+RESTRICT="mirror"
+
+# Both alsa and readline will be automatically checked in cmake but
+# there are no options for these. Thus the functionality cannot be
+# controlled through USE flags. Therefore hard-enabled.
+RDEPEND="
+ media-libs/alsa-lib
+ sys-libs/readline:0=
+ x11-libs/libXt
+ avahi? ( net-dns/avahi )
+ fftw? ( sci-libs/fftw:3.0= )
+ jack? ( media-sound/jack-audio-connection-kit )
+ portaudio? ( media-libs/portaudio )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtpositioning:5
+ dev-qt/qtsensors:5
+ dev-qt/qtwebkit:5
+ )
+ sndfile? ( media-libs/libsndfile )
+ wiimote? ( app-misc/cwiid )"
+DEPEND="${RDEPEND}
+ dev-libs/icu
+ virtual/pkgconfig
+ emacs? ( virtual/emacs )
+ gedit? ( app-editors/gedit )
+ vim? ( app-editors/vim )"
+
+S="${WORKDIR}/SuperCollider-Source"
+
+src_configure() {
+ local mycmakeargs=(
+ AUDIOAPI=$(usex jack jack portaudio)
+ -DINSTALL_HELP=ON
+ -DNATIVE=ON
+ -DSYSTEM_BOOST=OFF
+ -DSYSTEM_YAMLCPP=OFF
+ -DNO_AVAHI=$(usex !avahi)
+ -DFFT_GREEN=$(usex !fftw)
+ -DNO_GPL3=$(usex !gpl3)
+ -DNO_LIBSNDFILE=$(usex !sndfile)
+ -DSC_QT=$(usex qt5)
+ -DSCLANG_SERVER=$(usex server)
+ -DLIBSCSYNTH=$(usex !static-libs)
+ -DSSE=$(usex cpu_flags_x86_sse)
+ -DSSE2=$(usex cpu_flags_x86_sse2)
+ -DSC_IDE=$(usex qt5)
+ -DSC_ED=$(usex gedit)
+ -DSC_VIM=$(usex vim)
+ -DSC_EL=$(usex emacs)
+ -DSC_WII=$(usex wiimote)
+ )
+
+ use debug && mycmakeargs+=(
+ -DSC_MEMORY_DEBUGGING=ON
+ -DSN_MEMORY_DEBUGGING=ON
+ -DGC_SANITYCHECK=ON
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ use vim && newdoc editors/scvim/README.md README.vim
+ use emacs && newdoc editors/scel/README.md README.emacs
+ use gedit && newdoc editors/sced/README.md README.gedit
+}
+
+pkg_postinst() {
+ einfo
+ einfo "Notice: SuperCollider is not very intuitive to get up and running."
+ einfo "The best course of action to make sure that the installation was"
+ einfo "successful and get you started with using SuperCollider is to take"
+ einfo "a look through ${EROOT%/}/usr/share/doc/${PF}/README.md.bz2"
+ einfo
+}