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