diff options
Diffstat (limited to 'media-sound/supercollider')
-rw-r--r-- | media-sound/supercollider/Manifest | 1 | ||||
-rw-r--r-- | media-sound/supercollider/metadata.xml | 29 | ||||
-rw-r--r-- | media-sound/supercollider/supercollider-3.8.0.ebuild | 95 |
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 +} |