Update version (1.90.1)
[platform/core/uifw/stt.git] / packaging / stt.spec
index 27bd80d..4347517 100644 (file)
@@ -1,6 +1,6 @@
 Name:       stt
 Summary:    Speech To Text client library and daemon
-Version:    0.2.56
+Version:    1.90.1
 Release:    1
 Group:      Graphics & UI Framework/Voice Framework
 License:    Apache-2.0
@@ -10,6 +10,7 @@ Source1002: %{name}-devel.manifest
 Requires(post): /sbin/ldconfig
 Requires(post): /usr/bin/buxton2ctl
 Requires(postun): /sbin/ldconfig
+Requires:  gawk
 BuildRequires:  pkgconfig(aul)
 BuildRequires:  pkgconfig(capi-appfw-app-manager)
 BuildRequires: pkgconfig(buxton2)
@@ -23,18 +24,27 @@ BuildRequires:  pkgconfig(dbus-1)
 BuildRequires:  pkgconfig(dlog)
 BuildRequires:  pkgconfig(ecore)
 BuildRequires:  pkgconfig(glib-2.0)
+BuildRequires:  pkgconfig(libgum)
 BuildRequires:  pkgconfig(libtzplatform-config)
 BuildRequires:  pkgconfig(libxml-2.0)
 BuildRequires:  pkgconfig(pkgmgr)
 BuildRequires:  pkgconfig(pkgmgr-info)
 BuildRequires:  pkgconfig(pkgmgr-installer)
 BuildRequires:  pkgconfig(vconf)
-%if "%{PRODUCT_TYPE}" == "TV"
+BuildRequires:  pkgconfig(gmock)
+%if "%{tizen_profile_name}" == "tv"
 BuildRequires:  pkgconfig(capi-network-bluetooth)
+BuildRequires:  pkgconfig(capi-network-bluetooth-tv)
+BuildRequires:  pkgconfig(farfield-voice-api)
 %endif
 
 BuildRequires:  cmake
 
+%if 0%{?gcov:1}
+BuildRequires:  lcov
+BuildRequires:  zip
+%endif
+
 %description
 Speech To Text client library and daemon.
 
@@ -59,6 +69,14 @@ Summary:    Speech To Text engine header files for STT development
 Group:      Graphics & UI Framework/Development
 Requires:   %{name} = %{version}-%{release}
 
+%package unittests
+Summary:    STT tests
+Group:      Development/Libraries
+Requires:   %{name} = %{version}-%{release}
+
+%description unittests
+GTest for STT
+
 %description devel
 Speech To Text header files for STT development.
 
@@ -71,6 +89,15 @@ Speech To Text setting header files for STT development.
 %description engine-devel
 Speech To Text engine header files for STT development.
 
+%if 0%{?gcov:1}
+%package gcov
+Summary:       Speech To Text (gcov)
+Group:         Graphics & UI Framework/Voice Framework
+%description gcov
+Speech To Text gcov objects
+%endif
+
+
 %prep
 %setup -q -n %{name}-%{version}
 cp %{SOURCE1001} %{SOURCE1002} .
@@ -84,28 +111,87 @@ export FFLAGS="$FFLAGS -DTIZEN_ENGINEER_MODE"
 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
-%if "%{PRODUCT_TYPE}" == "TV"
+
+%if 0%{?gcov:1}
+export CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
+export CXXFLAGS="$CXXFLAGS -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
+export FFLAGS="$FFLAGS -fprofile-arcs -ftest-coverage"
+export LDFLAGS="$LDFLAGS -lgcov"
+%endif
+
+
+%if "%{tizen_profile_name}" == "tv"
 export CFLAGS="$CFLAGS -DTV_PRODUCT"
 cmake . -DCMAKE_INSTALL_PREFIX=/usr -DLIBDIR=%{_libdir} -DBINDIR=%{_bindir} -DINCLUDEDIR=%{_includedir} \
-        -DTZ_SYS_RO_SHARE=%TZ_SYS_RO_SHARE -DTZ_SYS_BIN=%TZ_SYS_BIN -D_TV_PRODUCT=TRUE
+        -DTZ_SYS_RO_SHARE=%TZ_SYS_RO_SHARE -DTZ_SYS_BIN=%TZ_SYS_BIN -D_TV_PRODUCT=TRUE \
+        -DTZ_SYS_RO_PACKAGES=%TZ_SYS_RO_PACKAGES -DTZ_SYS_RO_APP=%TZ_SYS_RO_APP
 %else
 cmake . -DCMAKE_INSTALL_PREFIX=/usr -DLIBDIR=%{_libdir} -DBINDIR=%{_bindir} -DINCLUDEDIR=%{_includedir} \
-        -DTZ_SYS_RO_SHARE=%TZ_SYS_RO_SHARE -DTZ_SYS_BIN=%TZ_SYS_BIN
+        -DTZ_SYS_RO_SHARE=%TZ_SYS_RO_SHARE -DTZ_SYS_BIN=%TZ_SYS_BIN \
+        -DTZ_SYS_RO_PACKAGES=%TZ_SYS_RO_PACKAGES -DTZ_SYS_RO_APP=%TZ_SYS_RO_APP
 %endif
 
 make %{?jobs:-j%jobs}
 
+
 %install
 rm -rf %{buildroot}
-mkdir -p %{buildroot}%{TZ_SYS_RO_SHARE}/license
-install LICENSE.APLv2 %{buildroot}%{TZ_SYS_RO_SHARE}/license/%{name}
 
-%if "%{PRODUCT_TYPE}" == "TV"
+%if "%{tizen_profile_name}" == "tv"
 mv -f org.tizen.voice.sttserver.tv.service org.tizen.voice.sttserver.service
 %endif
 
 %make_install
 
+%if 0%{?gcov:1}
+builddir=$(basename $PWD)
+gcno_obj_dir=%{buildroot}%{_datadir}/gcov/obj/%{name}/"$builddir"
+mkdir -p "$gcno_obj_dir"
+find ./server/ -name '*.gcno' -exec rm {} \;
+find ./engine-parser/ -name '*.gcno' -exec rm {} \;
+find ./test/ -name '*.gcno' -exec rm {} \;
+find ./tests/ -name '*.gcno' -exec rm {} \;
+find . -name '*_client.c.gcno' -exec rm {} \;
+find . -name '*_dbus.c.gcno' -exec rm {} \;
+find . -name 'stt_config*.gcno' -exec rm {} \;
+find . -name '*_engine.c.gcno' -exec rm {} \;
+find . -name 'sttd*.gcno' -exec rm {} \;
+find . -name '*_file*.gcno' -exec rm {} \;
+find . -name '*_network.c.gcno' -exec rm {} \;
+find . -name '*_setting.c.gcno' -exec rm {} \;
+find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
+%endif
+
+cat << EOF > run-unittest.sh
+#!/bin/sh
+setup() {
+    echo "setup start"
+    touch /opt/share/askuser_disable
+    mount -o remount,rw /
+    tpk-backend --preload -y org.tizen.stt-unittests
+}
+
+test_main() {
+    echo "test_main start"
+    launch_app org.tizen.stt-unittests __AUL_SDK__ UNIT_TEST __LAUNCH_APP_MODE__ SYNC
+}
+
+teardown() {
+    echo "teardown start"
+}
+
+main() {
+    setup
+    test_main
+    teardown
+}
+
+main "\$*"
+EOF
+
+mkdir -p %{buildroot}%{_bindir}/tizen-unittests/%{name}
+install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/%{name}
+
 %post
 /sbin/ldconfig
 
@@ -115,18 +201,17 @@ mkdir -p %{TZ_SYS_RO_SHARE}/voice/test
 
 %postun -p /sbin/ldconfig
 
+
 %files
 %manifest %{name}.manifest
 %license LICENSE.APLv2
 %defattr(-,root,root,-)
 %{_libdir}/lib*.so
 /etc/dbus-1/session.d/stt-server.conf
-%{TZ_SYS_RO_SHARE}/upgrade/scripts/500.stt_upgrade_24to30.sh
 %{TZ_SYS_RO_SHARE}/voice/stt/1.0/stt-config.xml
 %{TZ_SYS_RO_SHARE}/dbus-1/services/org.tizen.voice.sttserver.service
 %{TZ_SYS_RO_SHARE}/dbus-1/services/org.tizen.voice.sttservercustom.service
 #%{TZ_SYS_RO_SHARE}/voice/test/stt-test
-%{TZ_SYS_RO_SHARE}/license/%{name}
 #%{TZ_SYS_BIN}/*
 %{_bindir}/voice_getengine
 %{TZ_SYS_RO_ETC}/package-manager/parserlib/metadata/libstt-engine-parser.so*
@@ -152,3 +237,18 @@ mkdir -p %{TZ_SYS_RO_SHARE}/voice/test
 %defattr(-,root,root,-)
 %{_libdir}/pkgconfig/stt-engine.pc
 %{_includedir}/stte.h
+%{_includedir}/stte_internal.h
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/obj/*
+%endif
+
+%files unittests
+%manifest tests/org.tizen.stt-unittests.manifest
+%defattr(-,root,root,-)
+%{TZ_SYS_RO_PACKAGES}/org.tizen.stt-unittests.xml
+%{TZ_SYS_RO_APP}/org.tizen.stt-unittests/res/test_pcm.dat
+%{TZ_SYS_RO_APP}/org.tizen.stt-unittests/res/ringtone.wav
+%{TZ_SYS_RO_APP}/org.tizen.stt-unittests/bin/stt-unittests
+%{_bindir}/tizen-unittests/%{name}/run-unittest.sh