Created attachment 168856 [details] .shar for audio/supercollider SuperCollider is a programming language for real time audio synthesis and algorithmic composition. The language interpreter runs in a cross platform IDE and communicates via Open Sound Control with one or more synthesis servers. The SuperCollider synthesis server runs in a separate process or even on a separate machine so it is ideal for realtime networked music. WWW: http://supercollider.github.io/
poudriere log: http://pub.tbrodel.me/FreeBSD/supercollider-3.7.0.log
Hi Tobias, are you still interested in maintaining this port? It has been some time and some things have changed in the ports tree and there is a new Supercollider release, so this could use an update. I also have some comments on your submission, but more on that later.
(In reply to Tobias Kortkamp from comment #2) Hi Tobias, Yes I definitely am, it'd be great to see SuperCollider in the ports tree. As you can see it's nearly a year since I uploaded this port, I'd like to have a run at updating it to re-familiarise myself with it, which might take some time. Any feedback you have in the meantime would be much appreciated. Cheers, t/
(In reply to Tobias Brodel from comment #3) See inline comments for some feedback. If you can, please test the port with Portlint, and Poudriere or Synth. If that is not possible, portlint -AC will give you valuable feedback as well. As will setting DEVELOPER=1 in /etc/make.conf and running `make stage-qa` and `make check-plist`. You're free to submit an SVN or Git diff instead of a .shar if you want to. Index: supercollider/Makefile =================================================================== --- supercollider/Makefile (nonexistent) +++ supercollider/Makefile (working copy) @@ -0,0 +1,6 @@ +# $FreeBSD$ + +PORTNAME= supercollider +PORTVERSION= 3.7.0 +CATEGORIES= audio +MASTER_SITES= http://pub.tbrodel.me/FreeBSD/ports/distfiles/ Please fetch from the offical site and not your own mirror. It's ok to add yours but add an offical mirror first. I don't think USE_GITHUB is applicable here. Supercollider seems to release tarballs with some bundled dependencies. I believe https://github.com/supercollider/supercollider/releases has -Source.tar.bz2 tarballs that can be used. + +MAINTAINER= brittlehaus@gmail.com +COMMENT= Programming language for real time audio synthesis + +LICENSE= GPLv2+ Please add LICENSE_FILE +ALL_DEPENDS= libXt>0:${PORTSDIR}/x11-toolkits/libXt \ + qt5-sensors>0:${PORTSDIR}/comms/qt5-sensors \ + qt5-location>0:${PORTSDIR}/devel/qt5-location \ + libsndfile>0:${PORTSDIR}/audio/libsndfile \ + jackit>0:${PORTSDIR}/audio/jack +RUN_DEPENDS= ${ALL_DEPENDS} +BUILD_DEPENDS= ${ALL_DEPENDS} All of these are shared library dependencies if I'm not mistaken, so use LIB_DEPENDS here with library names e.g. libsndfile.so. `make stage-qa` will list any LIB_DEPENDS you've forgotten. + +CXXFLAGS+= "-I${LOCALBASE}/include" If this is really necessary add to USES=localbase instead. + +WRKSRC= ${WRKDIR}/SuperCollider + +LIBDEPENDS= libjack.so:${PORTSDIR}/audio/jack \ + libsndfile.so:${PORTSDIR}/audio/libsndfile Typo. It's LIB_DEPENDS. + +USES= cmake:outsource iconv pkgconfig shared-mime-info +USE_QT5= buildtools_build gui linguisttools qmake_build webkit sql Add location,sensors to USE_QT5 instead of adding a LIB_DEPENDS or {RUN,BUILD}_DEPENDS like you did above. + +CMAKE_ENV= PKG_CONFIG_PATH=${LOCALBASE}/libdata/pkgconfig + +CMAKE_ARGS= -DCMAKE_PREFIX_PATH=${LOCALBASE}/include/qt5 \ + -DLIBUSB_1_INCLUDE_DIR=/usr/include \ + -DLIBUSB_1_LIBRARY=/usr/lib/libusb.so \ + +.include <bsd.port.mk>
Created attachment 180859 [details] .shar for audio/supercollider
(In reply to Tobias Kortkamp from comment #4) Thanks for your feedback, I've just updated the .shar and you can find poudriere logs at http://ftp.tbrodel.org/pub/FreeBSD/supercollider-3.8.0.log I believe I've implemented all the fixes you requested. Last year when I first put this port together the vendor's source archives lacked the requisite submodules so I had to roll my own using a git clone. Much happier to use upstream's URL. Thanks again for your interest in this port. t/
(In reply to Tobias Brodel from comment #6) Thank you Tobias. I've submitted it for mentor review and hopefully I can commit this soon. https://reviews.freebsd.org/D10043
A commit references this bug: Author: tobik Date: Mon Mar 20 16:25:26 UTC 2017 New revision: 436552 URL: https://svnweb.freebsd.org/changeset/ports/436552 Log: New port: audio/supercollider SuperCollider is a programming language for real time audio synthesis and algorithmic composition. The language interpreter runs in a cross platform IDE and communicates via Open Sound Control with one or more synthesis servers. The SuperCollider synthesis server runs in a separate process or even on a separate machine so it is ideal for realtime networked music. SuperCollider was developed by James McCartney and originally released in 1996. He released it under the terms of the GNU General Public License in 2002 when he joined the Apple Core Audio team. It is now maintained and developed by an active and enthusiastic community. It is used by musicians, scientists, and artists working with sound. WWW: http://supercollider.github.io/ PR: 208443 Submitted by: Tobias Brodel <brittlehaus@gmail.com> Approved by: mat (mentor) Differential Revision: https://reviews.freebsd.org/D10043 Changes: head/audio/Makefile head/audio/supercollider/ head/audio/supercollider/Makefile head/audio/supercollider/distinfo head/audio/supercollider/files/ head/audio/supercollider/files/patch-QtCollider_QObjectProxy.cpp head/audio/supercollider/files/patch-QtCollider_primitives_prim__QObject.cpp head/audio/supercollider/files/patch-common_SC__Lock.h head/audio/supercollider/files/patch-lang_LangPrimSource_OSCData.cpp head/audio/supercollider/files/patch-lang_LangPrimSource_PyrPrimitive.cpp head/audio/supercollider/files/patch-lang_LangPrimSource_PyrSched.cpp head/audio/supercollider/files/patch-lang_LangPrimSource_PyrSerialPrim.cpp head/audio/supercollider/files/patch-lang_LangPrimSource_PyrUnixPrim.cpp head/audio/supercollider/files/patch-lang_LangPrimSource_SC__ComPort.cpp head/audio/supercollider/files/patch-lang_LangSource_PyrObject.cpp head/audio/supercollider/files/patch-lang_LangSource_SC__TerminalClient.cpp head/audio/supercollider/files/patch-lang_LangSource_SC__TerminalClient.h head/audio/supercollider/files/patch-server_plugins_DiskIO__UGens.cpp head/audio/supercollider/files/patch-server_plugins_UIUGens.cpp head/audio/supercollider/files/patch-server_scsynth_SC__ComPort.cpp head/audio/supercollider/files/patch-server_scsynth_SC__CoreAudio.cpp head/audio/supercollider/files/patch-server_scsynth_SC__CoreAudio.h head/audio/supercollider/pkg-descr head/audio/supercollider/pkg-plist