From 4aa8bd9d4319ee60c3eb6dc6afb212d18bca49c7 Mon Sep 17 00:00:00 2001 From: Ingolf Wagner Date: Fri, 30 Dec 2016 00:02:56 +0100 Subject: [PATCH] media-sound/supercollider: add package Closes: https://github.com/gentoo/gentoo/pull/3280 --- media-sound/supercollider/Manifest | 1 + media-sound/supercollider/metadata.xml | 29 ++++++ .../supercollider/supercollider-3.8.0.ebuild | 95 +++++++++++++++++++ 3 files changed, 125 insertions(+) create mode 100644 media-sound/supercollider/Manifest create mode 100644 media-sound/supercollider/metadata.xml create mode 100644 media-sound/supercollider/supercollider-3.8.0.ebuild 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 @@ + + + + + gentoo@ingolf-wagner.de + Primary maintainer + + + proxy-maint@gentoo.org + Proxy Maintainers + + + 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. + + + supercollider/supercollider + + + Enable the SCVIM user interface + Enable the SCEL user interface + Enable the SCED user interface + Build GPL-3 licensed code (recommended) + Build with internal server + Build sclang with Wii Remote support + + 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 +} -- 2.26.2