1 |
%global _privatelibs libalsapid[.]so.* |
2 |
%global __provides_exclude ^(%{_privatelibs})$ |
3 |
%global __requires_exclude ^(%{_privatelibs})$ |
4 |
|
5 |
%define rel 4 |
6 |
|
7 |
Name: ladish |
8 |
Summary: LADI Audio session handler |
9 |
Version: 2 |
10 |
Release: %mkrel -c git20140911 %{rel} |
11 |
License: GPLv2+ |
12 |
Group: Sound/Utilities |
13 |
URL: https://ladish.org/ |
14 |
#from https://github.com/LADI/ladish commit 5fe205f |
15 |
Source0: %{name}-%version-git5fe205f.tar.xz |
16 |
# Removed: |
17 |
####### From https://launchpad.net/~kxstudio-debian/+archive/ubuntu/apps/+sourcepub/11202179/+listing-archive-extra |
18 |
###### Source0: ladish_2~git20140911.orig.tar.gz |
19 |
# clean up desktop files |
20 |
Patch0: ladish-1-desktop.patch |
21 |
Patch1: handle-aarch64.patch |
22 |
# Patches from https://launchpad.net/~kxstudio-debian/+archive/ubuntu/apps/+packages |
23 |
Patch2: 3001-fix-dbus-method.patch |
24 |
Patch3: 3002-fix-build1.patch |
25 |
Patch4: 3002-fix-build2.patch |
26 |
Patch5: 4001-cadence-jacksettings.patch |
27 |
Patch6: ladish_control_py3.patch |
28 |
Patch7: ladish_control_py3_shebang.patch |
29 |
Patch8: py3mga-fix.patch |
30 |
Patch9: py3mga-fix-2.patch |
31 |
BuildRequires: desktop-file-utils |
32 |
BuildRequires: boost-devel |
33 |
BuildRequires: intltool |
34 |
BuildRequires: python3-yaml |
35 |
BuildRequires: pkgconfig(alsa) |
36 |
BuildRequires: pkgconfig(dbus-1) |
37 |
BuildRequires: pkgconfig(dbus-glib-1) |
38 |
BuildRequires: pkgconfig(expat) |
39 |
BuildRequires: pkgconfig(gtk+-2.0) |
40 |
BuildRequires: pkgconfig(gtkmm-2.4) |
41 |
BuildRequires: pkgconfig(jack) |
42 |
BuildRequires: pkgconfig(libgnomecanvasmm-2.6) |
43 |
# BuildRequires: pkgconfig(pygtk-2.0) |
44 |
BuildRequires: pkgconfig(uuid) |
45 |
BuildRequires: waf |
46 |
# Requires: pygtk2.0 |
47 |
Requires: dbus |
48 |
|
49 |
%description |
50 |
Session management system for JACK applications on GNU/Linux. Its aim |
51 |
is to have many different audio programs running at once, to save their |
52 |
setup, close them down and then easily reload the setup at some other |
53 |
time. ladish doesn't deal with any kind of audio or MIDI data itself; |
54 |
it just runs programs, deals with saving/loading (arbitrary) data and |
55 |
connects JACK ports together. |
56 |
Ladish has a GUI frontend called gladish, based on lpatchage (LADI Patchage) |
57 |
and the ladish_control command line app for headless operation. |
58 |
|
59 |
%files -f %{name}.lang |
60 |
%doc README AUTHORS COPYING NEWS |
61 |
%{_bindir}/ladishd |
62 |
%{_bindir}/jmcore |
63 |
%{_bindir}/ladiconfd |
64 |
%{_bindir}/ladish_control |
65 |
%{_libdir}/%{name}/ |
66 |
%{_datadir}/%{name}/ |
67 |
%{_datadir}/dbus-1/services/org.%{name}.service |
68 |
%{_datadir}/dbus-1/services/org.%{name}.conf.service |
69 |
%{_datadir}/dbus-1/services/org.%{name}.jmcore.service |
70 |
|
71 |
#-------------------------------------------------------------------- |
72 |
|
73 |
%package -n gladish |
74 |
Summary: GTK ladish front end |
75 |
Requires: %{name} = %{version}-%{release} |
76 |
|
77 |
%description -n gladish |
78 |
gladish is a GUI frontend for LADISH, |
79 |
a session management system for JACK applications. |
80 |
|
81 |
%files -n gladish |
82 |
%{_datadir}/applications/gladish.desktop |
83 |
# %%{_bindir}/gladish |
84 |
%{_datadir}/icons/hicolor/*/apps/gladish.png |
85 |
|
86 |
#-------------------------------------------------------------------- |
87 |
|
88 |
%prep |
89 |
##setup -q -n ladish |
90 |
%setup -q |
91 |
#patch -P 9 -p1 -b .foo |
92 |
# exit 0 |
93 |
# patch8 -p1 -b .orig |
94 |
# exit 0 |
95 |
%autopatch -p1 |
96 |
# remove bundled libs |
97 |
sed -i -e "s|'-fvisibility=hidden')|\['-fvisibility=hidden'\]+'%{optflags} -fno-tree-pta'.split(' '))|"\ |
98 |
-e "s|\['PREFIX'\]), 'lib')|\['PREFIX'\]), '%{_libdir}')|" wscript |
99 |
# gcc7 throws warnings on glibmm-2.4 headers. The -Werror turns these into errors. |
100 |
# This can be removed if/when there is an update on the glibmm-2.4 package: |
101 |
sed -i "/add_cflag(conf, '-Werror')/d" wscript |
102 |
# move preloaded lib out of LD path |
103 |
sed -i -e "s|libalsapid.so|%{_libdir}\/ladish\/libalsapid.so|" daemon/loader.c |
104 |
|
105 |
%build |
106 |
export CXXFLAGS="%{optflags} -std=c++0x" |
107 |
# export PYTHONPATH="${PYTHONPATH}:/usr/share/waf3/waflib" |
108 |
waf configure --prefix=%{_prefix} -v |
109 |
LIBDIR=%{_libdir} CFLAGS="%{optflags} -fno-tree-pta" CXXFLAGS="%{optflags} -std=c++0x -fno-tree-pta" waf -v |
110 |
|
111 |
%install |
112 |
waf install --destdir=%{buildroot} |
113 |
# move lib out of LDPATH |
114 |
mkdir %{buildroot}/%{_libdir}/%{name} |
115 |
mv %{buildroot}%{_libdir}/libalsapid.so %{buildroot}/%{_libdir}/%{name}/ |
116 |
|
117 |
%find_lang %{name} |