packaging: bumped version, updated changelog.
[profile/ivi/speech-recognition.git] / packaging / speech-recognition.spec
1 %{!?_with_debug:%{!?_without_debug:%define _with_debug 1}}
2 %{!?_with_sphinx:%{!?_without_sphinx:%define _with_sphinx 1}}
3 %{!?_with_festival:%{!?_without_festival:%define _with_festival 1}}
4 %{!?_with_wrt:%{!?_without_wrt:%define _with_wrt 1}}
5 %{!?_with_dbus:%{!?_without_dbus:%define _without_dbus 1}}
6
7 Summary: Speech recognition service for Tizen
8 Name: speech-recognition
9 Version: 0.0.15
10 Release: 0
11 License: BSD-3-Clause
12 Group: Base/Utilities
13 URL: https://github.com/otcshare/speech-recognition
14 Source0: %{name}-%{version}.tar.gz
15
16 BuildRequires: pkgconfig(libpulse)
17
18 BuildRequires: pkgconfig(murphy-common)
19 BuildRequires: pkgconfig(murphy-pulse)
20 BuildRequires: pkgconfig(murphy-glib)
21
22 BuildRequires: pkgconfig(libudev)
23 BuildRequires: pkgconfig(json)
24 %if %{?_with_sphinx:1}%{!?_with_sphinx:0}
25 BuildRequires: pkgconfig(pocketsphinx)
26 BuildRequires: pkgconfig(sphinxbase)
27 %endif
28 %if %{?_with_festival:1}%{!?_with_festival:0}
29 BuildRequires: festival-devel
30 Requires: festival
31 %endif
32 %if %{?_with_dbus:1}%{!?_with_dbus:0}
33 BuildRequires: pkgconfig(dbus-1)
34 %endif
35 Requires: pulseaudio
36 %if %{?_with_sphinx:1}%{!?_with_sphinx:0}
37 Requires: sphinxbase
38 Requires: pocketsphinx
39 %endif
40 BuildRequires: pkgconfig(libsystemd-daemon)
41 BuildRequires: pkgconfig(glib-2.0)
42
43 %description
44 SRS/Winthorpe speech recognition system service.
45
46 %package devel
47 Summary: The header files and libraries needed for SRS/Winthorpe clients
48 Group: Development/Libraries
49 Requires: %{name} = %{version}
50
51 %description devel
52 This package contains header files and libraries necessary for development.
53
54 %package tests
55 Summary: Various test binaries for SRS/Winthorpe
56 Group: Development/Debug
57 Requires: %{name} = %{version}
58
59 %description tests
60 This package contains various test binaries for SRS/Winthorpe.
61
62 %prep
63 %setup -q -n %{name}-%{version}
64
65 %build
66 %if %{?_with_debug:1}%{!?_with_debug:0}
67 export CFLAGS="-O0 -g3"
68 export CXXFLAGS="-O0 -g3"
69 V="V=1"
70 %endif
71 export CXXFLAGS=$CXXFLAGS" -DTIZEN=1"
72
73 CONFIG_OPTIONS=""
74
75 %if %{?_with_sphinx:1}%{!?_with_sphinx:0}
76 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-sphinx"
77 %else
78 CONFIG_OPTIONS="$CONFIG_OPTIONS --disable-sphinx"
79 %endif
80
81 %if %{?_with_festival:1}%{!?_with_festival:0}
82 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-festival"
83 %else
84 CONFIG_OPTIONS="$CONFIG_OPTIONS --disable-festival"
85 %endif
86
87 %if %{?_with_wrt:1}%{!?_with_wrt:0}
88 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-wrt-client"
89 %else
90 CONFIG_OPTIONS="$CONFIG_OPTIONS --disable-wrt-client"
91 %endif
92
93 %if %{?_with_dbus:1}%{!?_with_dbus:0}
94 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-gpl --enable-dbus"
95 %else
96 CONFIG_OPTIONS="$CONFIG_OPTIONS --disable-dbus"
97 %endif
98
99 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-w3c-speech"
100 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-systemd"
101
102 ./bootstrap && \
103     %configure $CONFIG_OPTIONS && \
104     make
105
106 %install
107 rm -fr $RPM_BUILD_ROOT
108
109 %make_install
110
111 # Install dictionaries, configuration and service files.
112 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir} \
113     $RPM_BUILD_ROOT%{_sysconfdir}/speech-recognition \
114     $RPM_BUILD_ROOT%{_sysconfdir}/speech-recognition/w3c-grammars \
115     $RPM_BUILD_ROOT%{_unitdir_user} \
116     $RPM_BUILD_ROOT%{_datadir}/speech-recognition/dictionaries/demo \
117     $RPM_BUILD_ROOT%{_libdir}/srs/scripts \
118     $RPM_BUILD_ROOT%{_datadir}/dbus-1/services
119
120 cat packaging/speech-recognition.conf.in | \
121     sed "s#@DATADIR@#%{_datadir}#g" \
122         > packaging/speech-recognition.conf
123 cat packaging/speech-recognition.service.in | \
124     sed "s#@LIBDIR@#%{_libdir}#g" \
125         > packaging/speech-recognition.service
126 cat packaging/org.tizen.srs.service.in | \
127     sed "s#@LIBDIR@#%{_libdir}#g" \
128         > packaging/org.tizen.srs.service
129
130 /usr/bin/install -m 644 packaging/speech-recognition.conf \
131     $RPM_BUILD_ROOT%{_sysconfdir}/speech-recognition
132
133 /usr/bin/install -m 644 packaging/speech-recognition.service \
134     $RPM_BUILD_ROOT%{_unitdir_user}
135
136 /usr/bin/install -m 644 packaging/speech-recognition.socket \
137     $RPM_BUILD_ROOT%{_unitdir_user}
138 /usr/bin/install -m 644 \
139     -t $RPM_BUILD_ROOT%{_datadir}/speech-recognition/dictionaries/demo \
140     dictionaries/demo/demo.*
141 /usr/bin/install -m 755 packaging/start-speech-service.sh \
142      $RPM_BUILD_ROOT%{_libdir}/srs/scripts
143
144 /usr/bin/install -m 755 packaging/org.tizen.srs.service \
145      $RPM_BUILD_ROOT%{_datadir}/dbus-1/services
146
147 mkdir -p $RPM_BUILD_ROOT%{_datadir}/speech-recognition/dictionaries/w3c-speech
148
149 %install_service ../user/default.target.wants speech-recognition.socket
150
151 %clean
152 rm -rf $RPM_BUILD_ROOT
153
154 %post
155 ldconfig
156 %systemd_post speech-recognition.service
157
158 %preun
159 %systemd_preun speech-recognition.service
160
161 %postun
162 ldconfig
163 %systemd_postun speech-recognition.service
164
165 %files
166 %defattr(-,root,root,-)
167 %{_sbindir}/srs-daemon
168 %{_libdir}/srs
169 %{_libdir}/libsrs*.so.*
170 # crosswalk speech extension.
171 %{_libdir}/tizen-extensions-crosswalk/*
172 %config %{_sysconfdir}/speech-recognition/speech-recognition.conf
173 %dir %{_sysconfdir}/speech-recognition/w3c-grammars
174 %{_datadir}/speech-recognition/dictionaries
175 %dir %{_datadir}/speech-recognition/dictionaries/w3c-speech
176 %{_unitdir_user}/speech-recognition.service
177 %{_unitdir_user}/speech-recognition.socket
178 %{_unitdir_user}/default.target.wants/speech-recognition.socket
179
180 %{_datadir}/dbus-1/services/org.tizen.srs.service
181
182 %files devel
183 %defattr(-,root,root,-)
184 %{_includedir}/srs
185 %{_libdir}/libsrs*.so
186 %{_libdir}/pkgconfig/srs*.pc
187
188 %files tests
189 %defattr(-,root,root,-)
190 %{_bindir}/srs-native-client
191 %{_bindir}/srs-w3c-client
192 %if %{?_with_dbus:1}%{!?_with_dbus:0}
193 %{_bindir}/srs-client
194 %endif