]> git.pld-linux.org Git - packages/Carla.git/blob - Carla.spec
- up to 2.4.1
[packages/Carla.git] / Carla.spec
1 #
2 # Conditional build:
3 %bcond_with     zynaddsubfx             # build with built-in ZynAddSubFx synth
4 %bcond_without  qt4                     # Qt4 plugin wrapper
5
6 # current revision of source/native-plugins/external git submodule
7 %define plugins_rev   385f1fd
8
9 Summary:        Audio plugin host
10 Name:           Carla
11 Version:        2.4.1
12 Release:        1
13 License:        GPL v2+
14 Group:          Applications
15 Source0:        https://github.com/falkTX/Carla/archive/v%{version}/%{name}-%{version}.tar.gz
16 # Source0-md5:  c7d9daae2ca3d7d2b58aaeb63dc385fe
17 Source1:        https://github.com/falkTX/Carla-Plugins/archive/%{plugins_rev}/%{name}-Plugins-%{plugins_rev}.tar.gz
18 # Source1-md5:  776e4052a6cc33d85b4cb082665b5e2c
19 Patch1:         soundfonts_path.patch
20 URL:            http://kxstudio.linuxaudio.org/Applications:Carla
21 BuildRequires:  Mesa-libGL-devel
22 BuildRequires:  Qt5Core-devel
23 BuildRequires:  Qt5Gui-devel
24 %if %{with qt4}
25 BuildRequires:  QtCore-devel
26 BuildRequires:  QtGui-devel
27 %endif
28 BuildRequires:  alsa-lib-devel
29 BuildRequires:  fftw3-devel
30 BuildRequires:  fltk-devel
31 BuildRequires:  fluidsynth-devel >= 2.0.0
32 BuildRequires:  gtk+2-devel
33 BuildRequires:  gtk+3-devel
34 BuildRequires:  liblo-devel
35 BuildRequires:  libprojectM-devel
36 BuildRequires:  mxml-devel
37 BuildRequires:  pulseaudio-devel
38 BuildRequires:  python-PyQt5-devel-tools >= 5.8.2-2
39 BuildRequires:  python-PyQt5-uic
40 BuildRequires:  python3
41 BuildRequires:  python3-PyQt5
42 BuildRequires:  python3-PyQt5-uic
43 BuildRequires:  rpm-pythonprov
44 BuildRequires:  zlib-devel
45 Requires:       python3-PyQt5
46 Requires:       python3-numpy
47 Suggests:       python3-rdflib
48 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49
50 %define _noautoprovfiles        %{_libdir}/(lv2|vst|carla/jack/libjack.so)
51
52 %description
53 Carla is a fully-featured audio plugin host, with support for many
54 audio drivers and plugin formats.
55
56 %package devel
57 Summary:        Header files for %{name} library
58 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki %{name}
59 Group:          Development/Libraries
60 Requires:       %{name} = %{version}-%{release}
61
62 %description devel
63 Header files for %{name} library.
64
65 %description devel -l pl.UTF-8
66 Pliki nagłówkowe biblioteki %{name}.
67
68 %prep
69 %setup -q -a 1
70
71 rmdir source/native-plugins/external
72 mv Carla-Plugins-%{plugins_rev}* source/native-plugins/external
73
74 %patch1 -p1
75
76 %build
77 # to make sure all needed features are available
78 %{__make} -j1 features \
79         EXTERNAL_PLUGINS=true \
80         SKIP_STRIPPING=true \
81 %if %{without zynaddsubfx}
82         SKIP_ZYN_SYNTH=true \
83         HAVE_ZYN_DEPS=false \
84 %endif
85         CC="%{__cc}" \
86         CXX="%{__cxx}" \
87         CFLAGS="%{rpmcflags}" \
88         CXXFLAGS="%{rpmcxxflags}" \
89         LDFLAGS="%{rpmldflags}" \
90         PREFIX=%{_prefix} \
91         PYUIC4=%{_bindir}/pyuic4-3 \
92         PYUIC5=%{_bindir}/pyuic5-3 \
93         PYUIC=%{_bindir}/pyuic5-3 \
94         LIBDIR=%{_libdir}
95
96 %{__make} -j1 all \
97         --trace \
98         EXTERNAL_PLUGINS=true \
99         SKIP_STRIPPING=true \
100 %if %{without zynaddsubfx}
101         SKIP_ZYN_SYNTH=true \
102         HAVE_ZYN_DEPS=false \
103 %endif
104         CC="%{__cc}" \
105         CXX="%{__cxx}" \
106         CFLAGS="%{rpmcflags}" \
107         CXXFLAGS="%{rpmcxxflags}" \
108         LDFLAGS="%{rpmldflags}" \
109         PREFIX=%{_prefix} \
110         PYUIC4=%{_bindir}/pyuic4-3 \
111         PYUIC5=%{_bindir}/pyuic5-3 \
112         PYUIC=%{_bindir}/pyuic5-3 \
113         LIBDIR=%{_libdir}
114
115 %install
116 rm -rf $RPM_BUILD_ROOT
117
118 %{__make} install \
119 %if %{without zynaddsubfx}
120         SKIP_ZYN_SYNTH=true \
121         HAVE_ZYN_DEPS=false \
122 %endif
123         PREFIX=%{_prefix} \
124         LIBDIR=%{_libdir} \
125         PYPKGDIR=%{py3_sitescriptdir} \
126         DESTDIR=$RPM_BUILD_ROOT
127
128 %{__sed} -i -e '1s,^#!.*python3\?,#!%{__python3},' \
129         $RPM_BUILD_ROOT%{_datadir}/carla/resources/*-* \
130         $RPM_BUILD_ROOT%{_bindir}/*
131
132 %py3_comp $RPM_BUILD_ROOT%{_datadir}/carla
133
134 # so debuginfo is properly extracted
135 chmod a+x $RPM_BUILD_ROOT%{_libdir}/carla/{,*/}*.so
136
137 ln -s ../__pycache__ $RPM_BUILD_ROOT%{_datadir}/carla/resources/__pycache__
138
139 %clean
140 rm -rf $RPM_BUILD_ROOT
141
142 %files
143 %defattr(644,root,root,755)
144 %doc README.md
145 %attr(755,root,root) %{_bindir}/*
146 %dir %{_libdir}/carla
147 %dir %{_libdir}/carla/styles
148 %{_libdir}/carla/styles/carlastyle.json
149 %attr(755,root,root) %{_libdir}/carla/styles/carlastyle.so
150 %attr(755,root,root) %{_libdir}/carla/carla-*
151 %attr(755,root,root) %{_libdir}/carla/libcarla*.so
152 %dir %{_libdir}/carla/jack
153 %attr(755,root,root) %{_libdir}/carla/jack/libjack.so.0
154 %dir %{_libdir}/lv2/carla.lv2
155 %{_libdir}/lv2/carla.lv2/*.ttl
156 %attr(755,root,root) %{_libdir}/lv2/carla.lv2/*.so
157 %attr(755,root,root) %{_libdir}/lv2/carla.lv2/carla-bridge-lv2-*
158 %attr(755,root,root) %{_libdir}/lv2/carla.lv2/carla-bridge-native
159 %attr(755,root,root) %{_libdir}/lv2/carla.lv2/carla-discovery-native
160 %{_libdir}/lv2/carla.lv2/jack
161 %{_libdir}/lv2/carla.lv2/resources
162 %{_libdir}/lv2/carla.lv2/styles
163 %dir %{_libdir}/vst
164 %dir %{_libdir}/vst/carla.vst
165 %attr(755,root,root) %{_libdir}/vst/carla.vst/*.so
166 %attr(755,root,root) %{_libdir}/vst/carla.vst/carla-bridge-lv2-*
167 %attr(755,root,root) %{_libdir}/vst/carla.vst/carla-bridge-native
168 %attr(755,root,root) %{_libdir}/vst/carla.vst/carla-discovery-native
169 %{_libdir}/vst/carla.vst/jack
170 %{_libdir}/vst/carla.vst/resources
171 %{_libdir}/vst/carla.vst/styles
172 %{_desktopdir}/carla.desktop
173 %{_desktopdir}/carla-control.desktop
174 %{_desktopdir}/carla-jack-multi.desktop
175 %{_desktopdir}/carla-jack-single.desktop
176 %{_desktopdir}/carla-patchbay.desktop
177 %{_desktopdir}/carla-rack.desktop
178 %dir %{_datadir}/carla
179 %dir %{_datadir}/carla/modgui
180 %{_datadir}/carla/modgui/*.py
181 %{_datadir}/carla/modgui/__pycache__
182 %dir %{_datadir}/carla/patchcanvas
183 %{_datadir}/carla/patchcanvas/*.py
184 %{_datadir}/carla/patchcanvas/__pycache__
185 %dir %{_datadir}/carla/resources
186 %{_datadir}/carla/resources/modgui
187 %{_datadir}/carla/resources/patchcanvas
188 %{_datadir}/carla/resources/widgets
189 %{?with_zynaddsubfx:%{_datadir}/carla/resources/zynaddsubfx}
190 %{_datadir}/carla/resources/*.py
191 %{_datadir}/carla/resources/__pycache__
192 %attr(755,root,root) %{_datadir}/carla/carla-control
193 %attr(755,root,root) %{_datadir}/carla/carla-jack-multi
194 %attr(755,root,root) %{_datadir}/carla/carla-jack-single
195 %attr(755,root,root) %{_datadir}/carla/resources/bigmeter-ui
196 %attr(755,root,root) %{_datadir}/carla/resources/carla-plugin
197 %attr(755,root,root) %{_datadir}/carla/resources/carla-plugin-patchbay
198 %attr(755,root,root) %{_datadir}/carla/resources/midipattern-ui
199 %attr(755,root,root) %{_datadir}/carla/resources/notes-ui
200 %attr(755,root,root) %{_datadir}/carla/resources/xycontroller-ui
201 %{?with_zynaddsubfx:%attr(755,root,root) %{_datadir}/carla/resources/zynaddsubfx-ui}
202 %{_datadir}/carla/widgets
203 %{_datadir}/carla/*.py
204 %{_datadir}/carla/__pycache__
205 %{_datadir}/carla/carla
206 %{_datadir}/carla/carla-patchbay
207 %{_datadir}/carla/carla-rack
208 %{_iconsdir}/hicolor/*/apps/*
209 %{_datadir}/mime/packages/carla.xml
210
211 %files devel
212 %defattr(644,root,root,755)
213 %{_includedir}/carla
214 %{_pkgconfigdir}/carla-host-plugin.pc
215 %{_pkgconfigdir}/carla-native-plugin.pc
216 %{_pkgconfigdir}/carla-standalone.pc
217 %{_pkgconfigdir}/carla-utils.pc
This page took 0.05574 seconds and 3 git commands to generate.