1
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
2
%{!?python_version: %global python_version %(%{__python} -c "import sys; print '%s.%s' % sys.version_info[:2]")}
4
# Csound is really dumb about 64-bit
5
%ifarch x86_64 ia64 ppc64 sparc64 s390x
7
%define install64bit --word64
11
%define install64bit %{nil}
15
Summary: A sound synthesis language and library
19
URL: http://csound.sourceforge.net/
21
Group: Applications/Multimedia
23
BuildRequires: swig scons libsndfile-devel libpng-devel libjpeg-devel
24
BuildRequires: python python-devel
25
BuildRequires: flex bison
26
BuildRequires: alsa-lib-devel jack-audio-connection-kit-devel pulseaudio-libs-devel
27
BuildRequires: fluidsynth-devel liblo-devel dssi-devel lua-devel
28
BuildRequires: fltk-devel fltk-fluid
29
BuildRequires: java-devel >= 1.4.0
30
BuildRequires: jpackage-utils >= 1.5
31
BuildRequires: java-gcj-compat-devel
32
BuildRequires: tk-devel tcl-devel
33
BuildRequires: tetex tetex-latex libxslt
34
BuildRequires: libvorbis-devel libogg-devel
35
BuildRequires: gettext
36
BuildRequires: gcc-c++ boost-devel
38
Source0: http://downloads.sourceforge.net/csound/Csound%{version}.tar.gz
39
Source1: http://downloads.sourceforge.net/csound/Csound5.16-manual-src.tar.gz
40
Source2: http://downloads.sourceforge.net/csound/Csound5.16_manual_html.zip
42
Patch0: csound-5.12.1-fixpython.patch
43
Patch1: csound-5.13.0-no-usr-local.patch
44
Patch2: csound-5.13.0-default-opcodedir.patch
45
Patch3: csound-5.10.1-rtalsa-fix.patch
46
Patch4: csound-5.13.0-tclversion.patch
47
Patch5: csound-5.10.1-64-bit-plugin-path.patch
48
Patch6: csound-5.13.0-fix-conflicts.patch
49
Patch7: csound-5.13.0-fix-locale-install.patch
50
Patch8: csound-5.10.1-enable-oggplay.patch
51
Patch9: csound-5.13.0-default-pulse.patch
52
Patch10: csound-5.13.0-compile-flag.patch
53
Patch11: csound-5.13.0-fixpythonint.patch
54
Patch12: csound-5.13.0-fltk.patch
57
Csound is a sound and music synthesis system, providing facilities for
58
composition and performance over a wide range of platforms. It is not
59
restricted to any style of music, having been used for many years in
60
at least classical, pop, techno, ambient...
63
Summary: Csound development files and libraries
64
Group: Development/Libraries
65
Requires: %{name} = %{version}-%{release}
68
Contains headers and libraries for developing applications that use Csound.
71
Summary: Python Csound development files and libraries
72
Group: Development/Libraries
73
Requires: %{name} = %{version}-%{release}
77
Contains Python language bindings for developing Python applications that
81
Summary: Csound python development files and libraries
82
Group: Development/Libraries
83
Requires: %{name} = %{version}-%{release}
85
%description python-devel
86
Contains libraries for developing against csound-python.
89
Summary: Java Csound support
90
Group: System Environment/Libraries
91
Requires: %{name} = %{version}-%{release}
92
Requires: jpackage-utils >= 1.5
93
Requires: java-1.5.0-gcj
94
Requires(post): jpackage-utils >= 1.5
95
Requires(postun): jpackage-utils >= 1.5
96
Requires(post): java-gcj-compat
97
Requires(postun): java-gcj-compat
98
Requires(post): /sbin/ldconfig
99
Requires(postun): /sbin/ldconfig
102
Contains Java language bindings for developing and running Java
103
applications that use Csound.
106
Summary: API documentation for Java Csound support
110
API documentation for the %{name}-java package.
113
Summary: Tcl/Tk related Csound utilities
114
Group: Applications/Multimedia
115
Requires: %{name} = %{version}-%{release}
119
Contains Tcl/Tk related Csound utilities
122
Summary: A FLTK-based GUI for Csound
123
Group: Applications/Multimedia
124
Requires: %{name} = %{version}-%{release}
125
Requires: fltk xdg-utils
128
Contains a FLTK-based GUI for Csound
131
Summary: FLTK plugins for Csound
132
Group: Applications/Multimedia
133
Requires: %{name} = %{version}-%{release}
137
Contains FLTK plugins for csound
140
Summary: Jack Audio plugins for Csound
141
Group: Applications/Multimedia
142
Requires: %{name} = %{version}-%{release}
143
Requires: jack-audio-connection-kit
146
Contains Jack Audio plugins for Csound
149
Summary: Fluidsyth soundfont plugin for Csound
150
Group: Applications/Multimedia
151
Requires: %{name} = %{version}-%{release}
153
%description fluidsynth
154
Contains Fluidsynth soundfont plugin for Csound.
157
Summary: Disposable Soft Synth Interface (DSSI) plugin for Csound
158
Group: Applications/Multimedia
159
Requires: %{name} = %{version}-%{release}
163
Disposable Soft Synth Interface (DSSI) plugin for Csound
166
Summary: Open Sound Control (OSC) plugin for Csound
167
Group: Applications/Multimedia
168
Requires: %{name} = %{version}-%{release}
171
Open Sound Control (OSC) plugin for Csound
173
%package virtual-keyboard
174
Summary: Virtual MIDI keyboard plugin for Csound
175
Group: Applications/Multimedia
176
Requires: %{name} = %{version}-%{release}
179
%description virtual-keyboard
180
A virtual MIDI keyboard plugin for Csound
183
Summary: Csound manual
185
Requires: %{name} = %{version}-%{release}
189
Canonical Reference Manual for Csound.
193
%setup -q -n Csound%{version}
194
%patch0 -p1 -b .fixpython
195
%patch1 -p1 -b .no-usr-local
196
%patch2 -p1 -b .default-opcodedir
197
%patch3 -p1 -b .rtalsa
198
%patch4 -p1 -b .makebuild
199
%patch5 -p1 -b .64-bit-plugin-path
200
%patch6 -p1 -b .fix-conflicts
201
%patch7 -p1 -b .fix-local-install
202
%patch8 -p1 -b .enable-oggplay
203
%patch9 -p1 -b .default-pulse
204
%patch10 -p1 -b .compile-flag
205
%patch11 -p1 -b .fixpythonint
206
%patch12 -p1 -b .fltk
209
(cd manual; unzip -q %{SOURCE2})
213
# Adjust location of the documentation for the GUI bits
214
sed -ie 's#\"firefox /usr/local/share/doc/csound/manual/#\"xdg-open file://%{_docdir}/%{name}-manual-%{version}/#' \
215
frontends/fltk_gui/CsoundGlobalSettings.cpp
217
scons dynamicCsoundLibrary=1 \
234
pythonVersion=%{python_version} \
235
buildPythonOpcodes=1 \
236
buildPythonWrapper=1 \
243
customCCFLAGS="%{optflags}" \
244
customCXXFLAGS="%{optflags}" \
245
Word64=%{build64bit} \
246
useDouble=%{useDouble}
249
(cd interfaces; javadoc *.java)
252
%{__rm} -rf %{buildroot}
253
%{__python} install.py --prefix=%{_prefix} --instdir=%{buildroot} %{install64bit}
254
%{__rm} -f %{buildroot}%{_docdir}/%{name}/COPYING
255
%{__rm} -f %{buildroot}%{_docdir}/%{name}/ChangeLog
256
%{__rm} -f %{buildroot}%{_docdir}/%{name}/INSTALL
257
%{__rm} -f %{buildroot}%{_docdir}/%{name}/readme-csound5.txt
258
%{__rm} -f %{buildroot}%{_bindir}/uninstall-csound5
259
%{__rm} -f %{buildroot}%{_prefix}/csound5-*.md5sums
261
install -dm 755 %{buildroot}%{_javadir}
262
(cd %{buildroot}%{_javadir}; ln -s %{_libdir}/%{name}/java/csnd.jar .)
264
install -dm 644 %{buildroot}%{_javadocdir}/%{name}-java
265
%{__chmod} -R 755 %{buildroot}%{_javadocdir}/%{name}-java
266
(cd interfaces; tar cf - *.html csnd/*.html) | (cd %{buildroot}%{_javadocdir}/%{name}-java; tar xvf -)
268
%{_bindir}/aot-compile-rpm
273
%{__rm} -rf %{buildroot}
275
%post -p /sbin/ldconfig
277
%postun -p /sbin/ldconfig
280
if [ -x %{_bindir}/rebuild-gcj-db ]; then
281
%{_bindir}/rebuild-gcj-db
285
if [ -x %{_bindir}/rebuild-gcj-db ]; then
286
%{_bindir}/rebuild-gcj-db
289
%files -f %{name}5.lang
290
%defattr(-,root,root,-)
291
%doc COPYING ChangeLog readme-csound5.txt
293
%{_bindir}/cs-launcher
299
%{_bindir}/cs-extract
300
%{_bindir}/cs-extractor
301
%{_bindir}/het_export
302
%{_bindir}/het_import
305
%{_bindir}/lpc_export
306
%{_bindir}/lpc_import
314
%{_bindir}/cs-sndinfo
318
%{_libdir}/lib%{name}.so.5.2
319
%dir %{_libdir}/%{name}/plugins
320
%{_libdir}/%{name}/plugins/libambicode1.so
321
%{_libdir}/%{name}/plugins/libampmidid.so
322
%{_libdir}/%{name}/plugins/libbabo.so
323
%{_libdir}/%{name}/plugins/libbarmodel.so
324
%{_libdir}/%{name}/plugins/libcompress.so
325
%{_libdir}/%{name}/plugins/libcontrol.so
326
%{_libdir}/%{name}/plugins/libchua.so
327
%{_libdir}/%{name}/plugins/libcrossfm.so
328
%{_libdir}/%{name}/plugins/libcs_date.so
329
%{_libdir}/%{name}/plugins/libcs_pan2.so
330
%{_libdir}/%{name}/plugins/libcs_pvs_ops.so
331
%{_libdir}/%{name}/plugins/libdoppler.so
332
%{_libdir}/%{name}/plugins/libeqfil.so
333
%{_libdir}/%{name}/plugins/libftest.so
334
%{_libdir}/%{name}/plugins/libgabnew.so
335
%{_libdir}/%{name}/plugins/libgrain4.so
336
%{_libdir}/%{name}/plugins/libharmon.so
337
%{_libdir}/%{name}/plugins/libhrtferX.so
338
%{_libdir}/%{name}/plugins/libhrtfnew.so
339
%{_libdir}/%{name}/plugins/libimage.so
340
%{_libdir}/%{name}/plugins/libjacko.so
341
%{_libdir}/%{name}/plugins/libloscilx.so
342
%{_libdir}/%{name}/plugins/libminmax.so
343
%{_libdir}/%{name}/plugins/libmixer.so
344
%{_libdir}/%{name}/plugins/libmodal4.so
345
%{_libdir}/%{name}/plugins/libmodmatrix.so
346
%{_libdir}/%{name}/plugins/libmutexops.so
347
%{_libdir}/%{name}/plugins/liboggplay.so
348
%{_libdir}/%{name}/plugins/libpartikkel.so
349
%{_libdir}/%{name}/plugins/libphisem.so
350
%{_libdir}/%{name}/plugins/libphysmod.so
351
%{_libdir}/%{name}/plugins/libpitch.so
352
%{_libdir}/%{name}/plugins/libptrack.so
353
%{_libdir}/%{name}/plugins/libpvlock.so
354
%{_libdir}/%{name}/plugins/libpvoc.so
355
%{_libdir}/%{name}/plugins/libpvsbuffer.so
356
%{_libdir}/%{name}/plugins/libpy.so
357
%{_libdir}/%{name}/plugins/librtalsa.so
358
%{_libdir}/%{name}/plugins/librtpulse.so
359
%{_libdir}/%{name}/plugins/libscansyn.so
360
%{_libdir}/%{name}/plugins/libscoreline.so
361
%{_libdir}/%{name}/plugins/libsfont.so
362
%{_libdir}/%{name}/plugins/libshape.so
363
%{_libdir}/%{name}/plugins/libsignalflowgraph.so
364
%{_libdir}/%{name}/plugins/libstackops.so
365
%{_libdir}/%{name}/plugins/libstdopcod.so
366
%{_libdir}/%{name}/plugins/libstdutil.so
367
%{_libdir}/%{name}/plugins/libsystem_call.so
368
%{_libdir}/%{name}/plugins/libtabsum.so
369
%{_libdir}/%{name}/plugins/libudprecv.so
370
%{_libdir}/%{name}/plugins/libudpsend.so
371
%{_libdir}/%{name}/plugins/libugakbari.so
372
%{_libdir}/%{name}/plugins/liburandom.so
373
%{_libdir}/%{name}/plugins/libvaops.so
374
%{_libdir}/%{name}/plugins/libvbap.so
375
%{_libdir}/%{name}/plugins/libvosim.so
378
%defattr(-,root,root,-)
379
%{_includedir}/%{name}/
380
%{_libdir}/lib%{name}.so
381
%{_libdir}/libcsnd.so
384
%defattr(-,root,root,-)
385
%{_libdir}/libcsnd.so.5.2
386
%{python_sitearch}/_csnd*
387
%{python_sitearch}/csnd*
390
%defattr(-,root,root,-)
391
# %{_libdir}/libcsnd.so
394
%defattr(-,root,root,-)
395
%{_libdir}/lib_jcsound.so
396
%{_libdir}/%{name}/java/
398
%attr(-,root,root) %{_libdir}/gcj/%{name}
401
%defattr(-,root,root,-)
403
%doc %{_javadocdir}/%{name}-java
406
%defattr(-,root,root,-)
407
%{_libdir}/%{name}/tcl/
416
%defattr(-,root,root,-)
417
%{_bindir}/csound5gui
420
%defattr(-,root,root,-)
421
%{_libdir}/%{name}/plugins/libwidgets.so
424
%defattr(-,root,root,-)
425
%{_libdir}/%{name}/plugins/librtjack.so
426
%{_libdir}/%{name}/plugins/libjackTransport.so
429
%defattr(-,root,root,-)
430
%{_libdir}/%{name}/plugins/libfluidOpcodes.so
433
%defattr(-,root,root,-)
434
%{_libdir}/%{name}/plugins/libdssi4cs.so
437
%defattr(-,root,root,-)
438
%{_libdir}/%{name}/plugins/libosc.so
440
%files virtual-keyboard
441
%defattr(-,root,root,-)
442
%{_libdir}/%{name}/plugins/libvirtual.so
445
%defattr(-,root,root,-)
446
%doc manual/copying.txt manual/credits.txt manual/readme.txt manual/news.txt
448
%doc manual/examples/*
451
* Tue Jun 14 2011 Peter Robinson <pbrobinson@gmail.com> - 5.13.0-5
452
- Build the old Parser as the new Parser isn't stable even though it default!
454
* Wed Jun 01 2011 Ralf Corsépius <corsepiu@fedoraproject.org> - 5.13.0-4
455
- Reflect fltk include paths having changed.
457
* Fri May 27 2011 Peter Robinson <pbrobinson@gmail.com> - 5.13.0-3
458
- Bump build for new fltk
460
* Fri Apr 29 2011 Dan Horák <dan[at]danny.cz> - 5.13.0-2
461
- mark s390x as 64-bit arch
463
* Wed Apr 6 2011 Peter Robinson <pbrobinson@gmail.com> - 5.13.0-1
466
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.12.1-2
467
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
469
* Sun Dec 26 2010 Peter Robinson <pbrobinson@gmail.com> - 5.12.1-1
472
* Sat Jul 31 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 5.10.1-21
473
- Fix python location
475
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 5.10.1-20
476
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
478
* Tue Jul 20 2010 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-19
481
* Mon Jul 12 2010 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-18
482
- Add license file to -javadocs
484
* Sat Jan 9 2010 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-17
485
- Some further cleanups
487
* Sat Jan 9 2010 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-16
488
- Some further cleanups
490
* Sat Jan 9 2010 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-15
491
- Updated to the new python sysarch spec file reqs
493
* Thu Dec 3 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-14
494
- Updated python patch thanks to dsd.
496
* Tue Oct 20 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-13
497
- Fix use of multiple midi devices, fix segfault (RHBZ 529293)
499
* Sat Sep 5 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-12
500
- Build fixes, set PulseAudio as default
502
* Tue Aug 18 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-11
503
- Further python build fixes
505
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.10.1-10
506
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
508
* Thu Jul 16 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-9
509
- Update included files
511
* Thu Jul 16 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-8
512
- Apply patch to fix libcsnd.so
514
* Thu Jun 18 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-7
517
* Thu May 28 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-6
518
- Obsolete csound-tutorial
520
* Tue May 12 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-4
521
- Once more with feeling :-)
523
* Tue May 12 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-3
524
- Some further spec fixes
526
* Tue May 12 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-2
527
- Some build fixes. Enable pulseaudio support
529
* Mon May 11 2009 Peter Robinson <pbrobinson@gmail.com> - 5.10.1-1
530
- Update to 5.10.1 based massively on dcbw's 5.07 spec from the OLPC-2 cvs branch
531
rebase what looks to be relevant pataches from both branches
532
add a number of other build fixes
534
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.03.0-21
535
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
537
* Sun Dec 28 2008 Dennis Gilmore <dennis@ausil.us> - 5.03.0-20
538
- add sparc64 to list of 64 bit arches
540
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 5.03.0-19
541
- Fix locations for Python 2.6
543
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 5.03.0-18
544
- Rebuild for Python 2.6
546
* Thu May 22 2008 Seth Vidal <skvidal at fedoraproject.org> - 5.03.0-17
549
* Fri Feb 1 2008 Dan Williams <dcbw@redhat.com> - 5.03.0-16
550
- Fix default plugin path on 64-bit platforms (rh #407911)
551
- Fix file conflicts with other packages (rh #210215)
552
- Fix unowned directories (rh #233830)
554
* Thu Jan 10 2008 Caolan McNamara <caolanm@redhat.com> - 5.03.0-15
555
- Resolves: rhbz#428176 make build
557
* Thu Jan 03 2008 Alex Lancaster <alexlan at fedoraproject dot org> - 5.03.0-14
558
- Rebuild for new tcl (8.5)
560
* Mon Apr 2 2007 Thomas Fitzsimmons <fitzsim@redhat.com> - 5.03.0-13
561
- Patch out FLTK widget initialization code made unnecessary by
562
fltk-fluid 1.1.8, snapshot r5555
563
- Update python site-packages version to 2.5
565
* Sat Mar 31 2007 Thomas Fitzsimmons <fitzsim@redhat.com> - 5.03.0-12
566
- Require java-1.5.0-gcj
568
* Tue Feb 20 2007 Dan Williams <dcbw@redhat.com> - 5.03.0-11
569
- Rebuild for Python 2.5 (again)
570
- Fix rtalsa compile error (RH #220856)
572
* Tue Feb 20 2007 Dan Williams <dcbw@redhat.com> - 5.03.0-10
573
- Rebuild for Python 2.5
575
* Wed Nov 8 2006 Dan Williams <dcbw@redhat.com> 5.03.0-9
576
- CVS snapshot for fixes to the virtual midi keyboard
578
* Wed Nov 1 2006 Dan Williams <dcbw@redhat.com> 5.03.0-8
579
- CVS snapshot to pick up virtual Midi keyboard
580
- Make the default for OPCODEDIR be where the plugins are actually installed
582
* Sat Oct 28 2006 Dan Williams <dcbw@redhat.com> 5.03.0-7
583
- Rebuild to drop old source tarball
585
* Fri Oct 27 2006 Dan Williams <dcbw@redhat.com> 5.03.0-6
586
- Update to a cvs snapshot for the remote plugin and a few other fixes
587
- Split csound FLTK plugin out from -gui package since it's unrelated to the GUI bits
588
- Put the virtual MIDI keyboard into its own package
590
* Wed Oct 25 2006 Dan Williams <dcbw@redhat.com> 5.03.0-5
591
- Fix the remote plugin's local IP address read code, add more error checking
593
* Mon Oct 23 2006 Dan Williams <dcbw@redhat.com> 5.03.0-4
594
- Drop csound-5.03.0-uninitialized.patch, upstream
595
- Drop csound-5.03.0-printf-redef.patch, upstream
596
- CVS snapshot to grab some updated opcodes and fixes
597
- Make disabling -gstabs an option for better upstream palatability
598
- Disable atsa; it breaks the build for some unknown reason
600
* Fri Sep 8 2006 Dan Williams <dcbw@redhat.com> 5.03.0-3
601
- csound-5.03.0-no-gstabs.patch added; produce dwarf2 like everyone else
603
* Fri Aug 24 2006 Dan Williams <dcbw@redhat.com> 5.03.0-2
604
- Kill printf redefinition
605
- Remove zero-length ifthen.csd
606
- Remove explicit liblo dep in csound-osc
607
- Add fluidsynth plugin
609
* Fri Aug 24 2006 Dan Williams <dcbw@redhat.com> 5.03.0-1
610
- Package for Fedora Extras