Add gcov package generation feature
[platform/core/uifw/tts.git] / packaging / tts.spec
1 Name:       tts
2 Summary:    Text To Speech client library and daemon
3 Version:    0.2.44
4 Release:    1
5 Group:      Graphics & UI Framework/Voice Framework
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1001: %{name}.manifest
9 Source1002: %{name}-devel.manifest
10 Requires(post): /sbin/ldconfig
11 Requires(post): /usr/bin/buxton2ctl
12 Requires(postun): /sbin/ldconfig
13 Requires:  gawk
14 BuildRequires:  pkgconfig(aul)
15 BuildRequires:  pkgconfig(capi-appfw-app-manager)
16 BuildRequires:  pkgconfig(buxton2)
17 BuildRequires:  pkgconfig(capi-base-common)
18 BuildRequires:  pkgconfig(capi-media-audio-io)
19 BuildRequires:  pkgconfig(capi-system-info)
20 BuildRequires:  pkgconfig(dbus-1)
21 BuildRequires:  pkgconfig(dlog)
22 BuildRequires:  pkgconfig(ecore)
23 BuildRequires:  pkgconfig(glib-2.0)
24 BuildRequires:  pkgconfig(libgum)
25 BuildRequires:  pkgconfig(libtzplatform-config)
26 BuildRequires:  pkgconfig(libxml-2.0)
27 BuildRequires:  pkgconfig(libsystemd)
28 BuildRequires:  pkgconfig(pkgmgr-info)
29 BuildRequires:  pkgconfig(pkgmgr-installer)
30 BuildRequires:  pkgconfig(vconf)
31 BuildRequires:  pkgconfig(bundle)
32
33
34 BuildRequires:  cmake
35
36 %description
37 Text To Speech client library and daemon.
38
39
40 %package devel
41 Summary:    Text To Speech header files for TTS development
42 Group:      libdevel
43 Requires:   %{name} = %{version}-%{release}
44
45 %package setting-devel
46 Summary:    Text To Speech setting header files for TTS development
47 Group:      libdevel
48 Requires:   %{name} = %{version}-%{release}
49
50 %package engine-devel
51 Summary:    Text To Speech engine header files for TTS development
52 Group:      libdevel
53 Requires:   %{name} = %{version}-%{release}
54
55 %description devel
56 Text To Speech header files for TTS development.
57
58 %description setting-devel
59 Text To Speech setting header files for TTS development.
60
61 %description engine-devel
62 Text To Speech engine header files for TTS development.
63
64 %if 0%{?gcov:1}
65 %package gcov
66 Summary:        Text To Speech (gcov)
67 Group:          Graphics & UI Framework/Voice Framework
68 %description gcov
69 Text To Speech gcov objects
70 %endif
71
72
73 %prep
74 %setup -q -n %{name}-%{version}
75 cp %{SOURCE1001} %{SOURCE1002} .
76
77
78 %build
79 export CFLAGS="$CFLAGS -DTIZEN_ENGINEER_MODE"
80 export CXXFLAGS="$CXXFLAGS -DTIZEN_ENGINEER_MODE"
81 export FFLAGS="$FFLAGS -DTIZEN_ENGINEER_MODE"
82
83 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
84 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
85 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
86
87 %if 0%{?gcov:1}
88 export CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
89 export CXXFLAGS="$CXXFLAGS -fprofile-arcs -ftest-coverage"
90 export FFLAGS="$FFLAGS -fprofile-arcs -ftest-coverage"
91 export LDFLAGS="$LDFLAGS -lgcov"
92 %endif
93
94 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DLIBDIR=%{_libdir} -DBINDIR=%{_bindir} -DINCLUDEDIR=%{_includedir} \
95         -DTZ_SYS_RO_SHARE=%TZ_SYS_RO_SHARE -DTZ_SYS_BIN=%TZ_SYS_BIN
96
97 make %{?jobs:-j%jobs}
98
99 %if 0%{?gcov:1}
100 mkdir -p gcov-obj
101 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
102 %endif
103
104
105 %install
106 rm -rf %{buildroot}
107
108 %if "%{tizen_profile_name}" == "tv"
109 mv -f org.tizen.voice.ttsserver.tv.service org.tizen.voice.ttsserver.service
110 mv -f org.tizen.voice.ttsnotiserver.tv.service org.tizen.voice.ttsnotiserver.service
111 mv -f org.tizen.voice.ttssrserver.tv.service org.tizen.voice.ttssrserver.service
112 mv -f org.tizen.voice.ttsinterruptserver.tv.service org.tizen.voice.ttsinterruptserver.service
113 %endif
114
115 %make_install
116
117 %if 0%{?gcov:1}
118 mkdir -p %{buildroot}%{_datadir}/gcov/obj
119 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
120 %endif
121
122 %post 
123 /sbin/ldconfig
124
125 mkdir -p %{_libdir}/voice
126
127 mkdir -p %{TZ_SYS_RO_SHARE}/voice/test
128
129
130 %postun -p /sbin/ldconfig
131
132 %files
133 %manifest %{name}.manifest
134 %license LICENSE
135 %defattr(-,root,root,-)
136 %{_libdir}/lib*.so
137 %{TZ_SYS_RO_SHARE}/voice/tts/1.0/tts-config.xml
138 %{TZ_SYS_RO_SHARE}/dbus-1/system-services/org.tizen.voice.ttsserver.service
139 %{TZ_SYS_RO_SHARE}/dbus-1/system-services/org.tizen.voice.ttsnotiserver.service
140 %{TZ_SYS_RO_SHARE}/dbus-1/system-services/org.tizen.voice.ttssrserver.service
141 %{TZ_SYS_RO_SHARE}/dbus-1/system-services/org.tizen.voice.ttsinterruptserver.service
142 #%{TZ_SYS_RO_SHARE}/voice/test/tts-test
143 %{_bindir}/tts_getengine
144 %{TZ_SYS_RO_ETC}/package-manager/parserlib/metadata/libtts-engine-parser.so*
145 #%{TZ_SYS_RO_ETC}/package-manager/parserlib/metadata/libtts-engine-language-pack-parser.so*
146 /etc/dbus-1/system.d/tts-server.conf
147
148 %files devel
149 %manifest %{name}-devel.manifest
150 %defattr(-,root,root,-)
151 %{_libdir}/pkgconfig/tts.pc
152 %{_includedir}/tts.h
153 %{_includedir}/tts_internal.h
154
155 %files setting-devel
156 %defattr(-,root,root,-)
157 %{_libdir}/pkgconfig/tts-setting.pc
158 %{_includedir}/tts_setting.h
159
160 %files engine-devel
161 %defattr(-,root,root,-)
162 %{_libdir}/pkgconfig/tts-engine.pc
163 %{_includedir}/ttse.h
164 %{_includedir}/ttse_internal.h
165
166 %if 0%{?gcov:1}
167 %files gcov
168 %{_datadir}/gcov/obj/*
169 %endif