blob: 5fcde05f27a14c9a9d59ce1f73823483fc0f07e9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
|
# Created by: trevor
# $FreeBSD$
PORTNAME= csound
DISTVERSION= 6.12.2-83
DISTVERSIONSUFFIX= -gdf2edd269
CATEGORIES= audio lang
MAINTAINER= yuri@FreeBSD.org
COMMENT= Sound synthesizer
LICENSE= LGPL21+
LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= boost-libs>0:devel/boost-libs \
swig3.0:devel/swig30 \
gmm++>0:math/gmm++
LIB_DEPENDS= libsamplerate.so:audio/libsamplerate \
libsndfile.so:audio/libsndfile
USES= alias bison cmake:outsource compiler:c++11-lib eigen:3 localbase ncurses python:2.7
USE_GITHUB= yes
USE_LDCONFIG= yes
CMAKE_ARGS= -DBUILD_CSOUNDVST:BOOL=OFF \
-DBUILD_PD_CLASS:BOOL=OFF \
-DPYTHON_MODULE_INSTALL_DIR:PATH="${PYTHONPREFIX_SITELIBDIR}" \
-DOPSYS:STRING="${OPSYS}"
CMAKE_OFF= USE_ALSA BUILD_JAVA_INTERFACE BUILD_TESTS
SSP_UNSAFE= yes
BINARY_ALIAS= swig=swig3.0
LDFLAGS+= -lexecinfo
SUB_FILES= pkg-message
OPTIONS_DEFINE= CURL FLTK HDF5 NLS OPENMP PORTAUDIO PULSEAUDIO
OPTIONS_GROUP= PLUGINS
OPTIONS_GROUP_PLUGINS= BUCHLA CHUA DSSI EXCITER FAUST FLUIDSYNTH IMAGE JACK LUA LINALG OSC P5GLOVE PADSYNTH PLATEREV PVSGENDY SCANSYN SELECT SERIAL STACK STK WIIMOTE # Opcodes/CMakeLists.txt, Opcodes/stk/CMakeLists.txt
OPTIONS_DEFAULT= FLTK OPENMP
OPTIONS_DEFAULT+= BUCHLA CHUA DSSI EXCITER FAUST IMAGE JACK LINALG OSC P5GLOVE PADSYNTH PLATEREV SCANSYN SELECT SERIAL STACK STK # for PLUGINS
OPTIONS_SUB= yes
BUCHLA_DESC= Build the Buchla filter opcode
BUCHLA_CMAKE_BOOL= BUILD_BUCHLA_OPCODES
CHUA_DESC= Build the chua opcodes
CHUA_CMAKE_BOOL= BUILD_CHUA_OPCODES
CURL_CMAKE_BOOL= USE_CURL # see https://github.com/csound/csound/issues/1067
CURL_LIB_DEPENDS= libcurl.so:ftp/curl
DSSI_DESC= Build DSSI opcodes
DSSI_BUILD_DEPENDS= dssi>0:audio/dssi
DSSI_LIB_DEPENDS= libdssialsacompat.so:audio/libdssialsacompat
DSSI_RUN_DEPENDS= dssi>0:audio/dssi
DSSI_CMAKE_BOOL= BUILD_DSSI_OPCODES
DSSI_CFLAGS= -isystem ${LOCALBASE}/include/dssi
EXCITER_DESC= Build the exciter opcode
EXCITER_CMAKE_BOOL= BUILD_EXCITER_OPCODES
FLTK_DESC= Build FLTK plugin and GUI
FLTK_USE= XORG=ice,sm,x11,xext
FLTK_LIB_DEPENDS= libfltk.so:x11-toolkits/fltk
FLTK_CMAKE_ON= -DBUILD_WINSOUND:BOOL=ON
FLTK_CMAKE_OFF= -DBUILD_CSOUND_AC:BOOL=OFF \
-DBUILD_VIRTUAL_KEYBOARD:BOOL=OFF \
-DUSE_FLTK:BOOL=OFF
FAUST_DESC= Build the Faust opcodes
FAUST_USES= ssl
FAUST_LLVM_VERSION= 60
FAUST_BUILD_DEPENDS= faust>0:audio/faust
FAUST_RUN_DEPENDS= faust>0:audio/faust \
llvm${FAUST_LLVM_VERSION}>0:devel/llvm${FAUST_LLVM_VERSION}
FAUST_CMAKE_BOOL= BUILD_FAUST_OPCODES
FAUST_CMAKE_ON= -DFAUST_LLVM_VERSION:STRING=${FAUST_LLVM_VERSION}
FLUIDSYNTH_DESC= Building FluidSynth opcodes
FLUIDSYNTH_LIB_DEPENDS= libfluidsynth.so:audio/fluidsynth
FLUIDSYNTH_CMAKE_BOOL= BUILD_FLUID_OPCODES
FLUIDSYNTH_BROKEN= FluidSynth 2.x is broken upstream: https://github.com/csound/csound/issues/1078#issuecomment-441459803
HDF5_DESC= Build HDF5 read/write opcodes
HDF5_LIB_DEPENDS= libhdf5.so:science/hdf5 \
libsz.so:science/szip
HDF5_CMAKE_BOOL= BUILD_HDF5_OPCODES
JACK_DESC= Build the JACK related opcodes
JACK_LIB_DEPENDS= libjack.so:audio/jack
JACK_CMAKE_BOOL= BUILD_JACK_OPCODES USE_JACK
LINALG_DESC= Build the linear algebra opcodes
LINALG_CMAKE_BOOL= BUILD_LINEAR_ALGEBRA_OPCODES
LINALG_CXXFLAGS= -DGMM_VERSION=x # workaround based on https://github.com/csound/csound/issues/1069#issuecomment-439648756
LUA_DESC= Build Lua Interface and opcodes
LUA_LIB_DEPENDS= libluajit-5.1.so:lang/luajit
LUA_CMAKE_OFF= -DBUILD_CSOUND_AC_LUA_INTERFACE:BOOL=OFF \
-DBUILD_LUA_INTERFACE:BOOL=OFF \
-DBUILD_LUA_OPCODES:BOOL=OFF
NLS_USES= gettext
NLS_CMAKE_OFF= -DGETTEXT_MSGFMT_EXECUTABLE:FILEPATH="" \
-DGETTEXT_MSGMERGE_EXECUTABLE:FILEPATH="" \
-DLIBINTL_LIBRARY:FILEPATH="" \
-DUSE_GETTEXT:BOOL=OFF
OPENMP_CMAKE_BOOL= USE_OPEN_MP
OSC_DESC= Build OSC opcodes
OSC_LIB_DEPENDS= liblo.so:audio/liblo
OSC_CMAKE_BOOL= BUILD_OSC_OPCODES
PADSYNTH_DESC= Build the Padsynth opcode
PADSYNTH_CMAKE_BOOL= BUILD_PADSYNTH_OPCODES
IMAGE_DESC= Build Image opcodes
IMAGE_LIB_DEPENDS= libpng.so:graphics/png
IMAGE_CMAKE_BOOL= BUILD_IMAGE_OPCODES
P5GLOVE_DESC= Build PortAudio I/O module
P5GLOVE_CMAKE_BOOL= BUILD_P5GLOVE_OPCODES
PORTAUDIO_DESC= Build PortAudio I/O module
PORTAUDIO_LIB_DEPENDS= libportaudio.so:audio/portaudio
PORTAUDIO_CMAKE_BOOL= USE_PORTAUDIO
PULSEAUDIO_DESC= Build PulseAudio I/O module
PULSEAUDIO_LIB_DEPENDS= libpulse-simple.so:audio/pulseaudio
PULSEAUDIO_CMAKE_BOOL= USE_PULSEAUDIO
PLATEREV_DESC= Build the platerev opcode
PLATEREV_CMAKE_BOOL= BUILD_PLATEREV_OPCODES
PVSGENDY_DESC= Build the pvsgendy opcode
PVSGENDY_CMAKE_BOOL= BUILD_PVSGENDY_OPCODE
SCANSYN_DESC= Build the select opcodes
SCANSYN_CMAKE_BOOL= BUILD_SCANSYN_OPCODES
SELECT_DESC= Build the select opcode
SELECT_CMAKE_BOOL= BUILD_SELECT_OPCODE
SERIAL_DESC= Build the serial opcode
SERIAL_CMAKE_BOOL= BUILD_SERIAL_OPCODES
STACK_DESC= Build the stack opcodes
STACK_CMAKE_BOOL= BUILD_STACK_OPCODES
STK_DESC= Build the stk opcodes
STK_CMAKE_BOOL= BUILD_STK_OPCODES
STK_LIB_DEPENDS= libstk-4.6.0.so:audio/stk
WIIMOTE_DESC= Build the Wiimote opcodes
WIIMOTE_CMAKE_BOOL= BUILD_WIIMOTE_OPCODES
WIIMOTE_BROKEN= Need to port wiiuse: https://github.com/rpavlik/wiiuse
post-patch:
@${REINPLACE_CMD} -e \
's|/usr/local|${LOCALBASE}|' \
${WRKSRC}/InOut/CMakeLists.txt
@${REINPLACE_CMD} -e \
's|/usr/include/Python2.7|${PYTHON_INCLUDEDIR}| ; \
s|/usr/local|${LOCALBASE}| ; \
/linuxjoystick/s|^|#| ; \
s| dl)|)|' \
${WRKSRC}/Opcodes/CMakeLists.txt
@${REINPLACE_CMD} -e \
'/CMAKE_SYSTEM_NAME/s|"Linux"|"${OPSYS}"|' \
${WRKSRC}/Frontends/CMakeLists.txt
@${REINPLACE_CMD} -e \
's| mixer)| csmixer)|' \
${WRKSRC}/util/CMakeLists.txt
.for i in Engine/auxfd.c H/prototyp.h OOps/diskin2.c OOps/dumpf.c \
Opcodes/partials.c Top/csound.c
@${REINPLACE_CMD} -e \
's|\([[:blank:]]fd\)\(close\)|\1__\2|' ${WRKSRC}/${i}
.endfor
post-install:
@${LN} -sf libcsnd6.so.6.0 ${STAGEDIR}${PREFIX}/lib/libcsnd6.so.6
@${LN} -sf libcsound64.so.6.0 ${STAGEDIR}${PREFIX}/lib/libcsound64.so.6
post-install-FLTK-on:
@${LN} -sf libCsoundAC.so.6.0 ${STAGEDIR}${PREFIX}/lib/libCsoundAC.so.6
.include <bsd.port.mk>
|