Change gcov object install path
[platform/core/system/libsvi.git] / packaging / libfeedback.spec
index c00c61c..097a6be 100644 (file)
@@ -1,9 +1,9 @@
 Name:       libfeedback
 Summary:    Feedback library
-Version:    0.1.3
+Version:    0.2.0
 Release:    1
 Group:      System/Libraries
-License:    Apache License, Version 2.0
+License:    Apache-2.0
 Source0:    %{name}-%{version}.tar.gz
 source1:       libfeedback.manifest
 source2:       svi-data.manifest
@@ -13,89 +13,176 @@ BuildRequires:  cmake
 BuildRequires:  pkgconfig(dlog)
 BuildRequires:  pkgconfig(vconf)
 BuildRequires:  pkgconfig(mm-keysound)
-BuildRequires:  pkgconfig(libxml-2.0)
 BuildRequires:  pkgconfig(glib-2.0)
+BuildRequires:  pkgconfig(gio-2.0)
 BuildRequires:  pkgconfig(capi-base-common)
-BuildRequires:  pkgconfig(dbus-1)
-Requires(post):        svi-data
+BuildRequires:  pkgconfig(capi-media-sound-manager)
+BuildRequires:  pkgconfig(capi-media-wav-player)
+BuildRequires:  pkgconfig(libtzplatform-config)
+BuildRequires:  pkgconfig(capi-system-info)
+BuildRequires:  pkgconfig(libsyscommon)
+
+%if 0%{?gcov:1}
+BuildRequires: lcov
+%endif
+
+Requires:      svi-data-compat = %{version}-%{release}
+Recommends:    svi-data-profile_common = %{version}-%{release}
 
 %description
 Feedback library for playing sound and vibration
 
 
-%package -n libfeedback-devel
+%package devel
 Summary:    Feedback library for (devel)
 Group:      Development/Libraries
 Requires:   libfeedback = %{version}-%{release}
 
-%description -n libfeedback-devel
+%description devel
 Feedback library for playing sound and vibration (devel)
 
 %package -n svi-data
 Summary:       svi resource package
 Group:         Development/Libraries
-Requires:      findutils
 
 %description -n svi-data
 svi resource package
 
+%package -n svi-data-profile_common
+Summary:       svi resource package body without mobile/wearable mods
+Provides:      svi-data-compat = %{version}-%{release}
+Provides:      svi-data-profile_tv = %{version}-%{release}
+Provides:      svi-data-profile_ivi = %{version}-%{release}
+Conflicts:     svi-data-profile_mobile
+Conflicts:     svi-data-profile_wearable
+%description -n svi-data-profile_common
+default set for svi resource package (not for mobile or wearable).
+
+%package -n svi-data-profile_mobile
+Summary:       svi resource package body without mobile/wearable mods
+Provides:      svi-data-compat = %{version}-%{release}
+Provides:      svi-data-profile_tv = %{version}-%{release}
+Provides:      svi-data-profile_ivi = %{version}-%{release}
+Conflicts:     svi-data-profile_common
+Conflicts:     svi-data-profile_wearable
+%description -n svi-data-profile_mobile
+default set for svi resource package (not for mobile or wearable).
+
+%package -n svi-data-profile_wearable
+Summary:       svi resource package body without mobile/wearable mods
+Provides:      svi-data-compat = %{version}-%{release}
+Provides:      svi-data-profile_tv = %{version}-%{release}
+Provides:      svi-data-profile_ivi = %{version}-%{release}
+Conflicts:     svi-data-profile_common
+Conflicts:     svi-data-profile_mobile
+%description -n svi-data-profile_wearable
+default set for svi resource package (not for mobile or wearable).
+
+%package test
+Summary: Libfeedback test tool
+Group: System/Utilities
+Requires: libfeedback = %{version}-%{release}
+%description test
+Test-tool for libfeedback API.
+This package can be installed optional for API test.
+
+%if 0%{?gcov:1}
+%package gcov
+Summary:  Feedback library for (gcov)
+Group:    Development/Libraries
+%description gcov
+Feedback library for playing sound and vibration (gcov)
+%endif
+
 %prep
 %setup -q
 
 %build
+%if 0%{?gcov:1}
+export CFLAGS+=" -fprofile-arcs -ftest-coverage"
+export LDFLAGS+=" -lgcov"
+%endif
+
 export CFLAGS+=" -DTIZEN_ENGINEER_MODE"
 cp %{SOURCE1} .
 cp %{SOURCE2} .
 
-%if "%{?tizen_profile_name}" == "wearable"
-%define PROFILE wearable
-%else if "%{?tizen_profile_name}" == "mobile"
-%define PROFILE mobile
-%endif
-
-%cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DPROFILE=%{PROFILE}
+%cmake . \
+               -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+               -DTZ_SYS_RO_SHARE=%{_datadir} \
+               -DTZ_SYS_SHARE=%{TZ_SYS_SHARE}
 make
+%if 0%{?gcov:1}
+mkdir -p gcov-obj
+find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
+%endif
 
 %install
 rm -rf %{buildroot}
-%make_install
 
-mkdir -p %{buildroot}%{_datadir}/license
-cp LICENSE %{buildroot}/usr/share/license/%{name}
-cp LICENSE %{buildroot}/usr/share/license/svi-data
-
-mkdir -p %{buildroot}/opt/usr/share/feedback/haptic/custom
+%make_install
+pushd %{buildroot}%{_datadir}
+mv common feedback
+mv mobile feedback.mobile
+mv wearable feedback.wearable
+popd
+
+%if 0%{?gcov:1}
+mkdir -p %{buildroot}%{_datadir}/gcov/obj/%{name}
+install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj/%{name}
+%endif
 
 %post -p /sbin/ldconfig
 
-%post -n svi-data
-
-if [ -f %{_libdir}/rpm-plugins/msm.so ]; then
-       find /opt/usr/share/feedback/ | xargs chsmack -a 'svi-data'
-fi
-
 %postun -p /sbin/ldconfig
 
-%postun -n svi-data
-rm -rf %{_datadir}/feedback/
-rm -rf /opt/usr/share/feedback/
-
 %files
 %defattr(-,root,root,-)
 %{_libdir}/libfeedback.so.*
-%{_datadir}/license/%{name}
+%license LICENSE
 %manifest libfeedback.manifest
 
-%files -n libfeedback-devel
+%files devel
 %defattr(-,root,root,-)
 %{_includedir}/feedback/*.h
 %{_libdir}/libfeedback.so
 %{_libdir}/pkgconfig/feedback.pc
 
 %files -n svi-data
+%defattr(666,app,app,-)
+%license LICENSE
+%manifest svi-data.manifest
+
+%files -n svi-data-profile_common
 %defattr(644,root,root,-)
 %{_datadir}/feedback/*
-%defattr(666,app,app,-)
-%dir /opt/usr/share/feedback/haptic/custom
-%{_datadir}/license/svi-data
+%license LICENSE
+%manifest svi-data.manifest
+
+%post -n svi-data-profile_mobile
+rm -rf %{_datadir}/feedback
+ln -sf %{_datadir}/feedback.mobile %{_datadir}/feedback
+%files -n svi-data-profile_mobile
+%defattr(644,root,root,-)
+%{_datadir}/feedback.mobile/*
+%license LICENSE
 %manifest svi-data.manifest
+
+%post -n svi-data-profile_wearable
+rm -rf %{_datadir}/feedback
+ln -sf %{_datadir}/feedback.wearable %{_datadir}/feedback
+%files -n svi-data-profile_wearable
+%defattr(644,root,root,-)
+%{_datadir}/feedback.wearable/*
+%license LICENSE
+%manifest svi-data.manifest
+
+%files test
+%manifest libfeedback.manifest
+%license LICENSE
+%{_bindir}/feedback-test
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/*
+%endif