diff options
author | Sam James <sam@gentoo.org> | 2024-07-16 08:41:28 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-07-16 08:43:34 +0100 |
commit | 133931458f869a1b0e5282262d4526c096e561ec (patch) | |
tree | e169a45d2616f150f0ec9d3e3a81dcfc0580ab8b /media-sound | |
parent | app-i18n/librime: fix build w/ boost-1.85 (diff) | |
download | gentoo-133931458f869a1b0e5282262d4526c096e561ec.tar.gz gentoo-133931458f869a1b0e5282262d4526c096e561ec.tar.bz2 gentoo-133931458f869a1b0e5282262d4526c096e561ec.zip |
media-sound/supercollider: fix build w/ boost-1.85
Thanks-to: Ron Widler <ron@einfach.org>
Closes: https://bugs.gentoo.org/932793
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-sound')
-rw-r--r-- | media-sound/supercollider/Manifest | 1 | ||||
-rw-r--r-- | media-sound/supercollider/supercollider-3.13.0-r1.ebuild | 146 |
2 files changed, 147 insertions, 0 deletions
diff --git a/media-sound/supercollider/Manifest b/media-sound/supercollider/Manifest index 4436653080aa..4d43e11d351e 100644 --- a/media-sound/supercollider/Manifest +++ b/media-sound/supercollider/Manifest @@ -1 +1,2 @@ DIST SuperCollider-3.13.0-Source.tar.bz2 18685091 BLAKE2B a5e57a17f93e40848b2044ee0791179f857d144eabb7f4d74580b2eebd49a31d6ec671a0526236c5b906aadeb455e5a7ad18cacb79ed214076d6bceca39ea2ae SHA512 a60a128f7646f077f91adae666fa4014529aa9df78cf0dfe5d68c9bd6447f008af7da2970b8736f3f29d0adbaf67bce680a8201fcbe7e1aba29c3499a57f89cd +DIST supercollider-3.13.0-boost-1.85.patch.xz 11500 BLAKE2B 51a5210927df9199790ea64bbcdfe68aa233fb5777b57576295e2be7f7abd48baa9091e4139eef9ae23cbbc22613961ebd2ab60f26f0e02a8a62d68baa712af6 SHA512 dacd6fa4686a11ad06f2257155ee434173e343279170a3173a8173563309337f9a58075125acfaa53620e2a0a8fb445b5698f295ce53ac9f188e1502cebcb14f diff --git a/media-sound/supercollider/supercollider-3.13.0-r1.ebuild b/media-sound/supercollider/supercollider-3.13.0-r1.ebuild new file mode 100644 index 000000000000..9849a2115bba --- /dev/null +++ b/media-sound/supercollider/supercollider-3.13.0-r1.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic xdg + +DESCRIPTION="Environment and 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.tar.bz2" +SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-3.13.0-boost-1.85.patch.xz" +S="${WORKDIR}/SuperCollider-${PV}-Source" + +LICENSE="GPL-2 gpl3? ( GPL-3 )" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="ableton-link cpu_flags_x86_sse cpu_flags_x86_sse2 debug emacs +fftw gedit +gpl3 jack qt5 server +sndfile static-libs vim webengine X +zeroconf" + +REQUIRED_USE=" + qt5? ( X ) + webengine? ( qt5 ) +" + +BDEPEND=" + virtual/pkgconfig + qt5? ( dev-qt/linguist-tools:5 ) +" +RDEPEND=" + dev-cpp/yaml-cpp:= + dev-libs/boost:= + media-libs/alsa-lib + sys-libs/readline:0= + virtual/libudev:= + fftw? ( sci-libs/fftw:3.0= ) + jack? ( virtual/jack ) + !jack? ( media-libs/portaudio ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtprintsupport:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + ) + sndfile? ( media-libs/libsndfile ) + webengine? ( + dev-qt/qtwebchannel:5 + dev-qt/qtwebengine:5[widgets] + dev-qt/qtwebsockets:5 + ) + X? ( + x11-libs/libX11 + x11-libs/libXt + ) + zeroconf? ( net-dns/avahi ) +" +DEPEND="${RDEPEND} + dev-libs/icu + emacs? ( >=app-editors/emacs-23.1:* ) + gedit? ( app-editors/gedit ) + qt5? ( dev-qt/qtconcurrent:5 ) + vim? ( app-editors/vim ) +" + +PATCHES=( + "${FILESDIR}/${P}-boost-1.84.patch" # bug 921595 + "${FILESDIR}/${P}-gcc-13.patch" # bug 905127 + "${FILESDIR}/${P}-no-ccache.patch" # bug 922095 + "${WORKDIR}/${PN}-3.13.0-boost-1.85.patch" # bug 932793 +) + +src_configure() { + # -Werror=strict-aliasing + # https://bugs.gentoo.org/927071 + # https://github.com/supercollider/supercollider/issues/6245 + append-flags -fno-strict-aliasing + filter-lto + + local mycmakeargs=( + -DSC_CLANG_USES_LIBSTDCPP=ON + -DINSTALL_HELP=ON + -DSYSTEM_BOOST=ON + -DSYSTEM_YAMLCPP=ON + -DUSE_CCACHE=OFF + -DSC_ABLETON_LINK=$(usex ableton-link) + -DSSE=$(usex cpu_flags_x86_sse) + -DSSE2=$(usex cpu_flags_x86_sse2) + -DSC_EL=$(usex emacs) + -DFFT_GREEN=$(usex !fftw) + -DSC_ED=$(usex gedit) + -DNO_GPL3=$(usex !gpl3) + -DAUDIOAPI=$(usex jack jack portaudio) + -DSC_IDE=$(usex qt5) + -DSC_QT=$(usex qt5) + -DSCLANG_SERVER=$(usex server) + -DSUPERNOVA=$(usex server) + -DNO_LIBSNDFILE=$(usex !sndfile) + -DLIBSCSYNTH=$(usex !static-libs) + -DSC_VIM=$(usex vim) + -DNO_X11=$(usex !X) + -DNO_AVAHI=$(usex !zeroconf) + ) + + use qt5 && mycmakeargs+=( + -DSC_USE_QTWEBENGINE=$(usex webengine) + ) + + use debug && mycmakeargs+=( + -DSC_MEMORY_DEBUGGING=ON + -DSN_MEMORY_DEBUGGING=ON + -DGC_SANITYCHECK=ON + ) + + append-flags $(usex debug '' -DNDEBUG) + + cmake_src_configure +} + +src_install() { + cmake_src_install + + use emacs && newdoc editors/sc-el/README.md README.emacs + use gedit && newdoc editors/sced/README.md README.gedit + use vim && newdoc editors/scvim/README.md README.vim +} + +src_test() { + export QT_QPA_PLATFORM=offscreen + cmake_src_test +} + +pkg_preinst() { + xdg_pkg_preinst +} + +pkg_postinst() { + 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" + xdg_pkg_postinst +} + +pkg_postrm() { + xdg_pkg_postrm +} |