da6b952654a0bc28db7fb2b0746069389423fa2e
[platform/core/api/mediatransporter.git] / packaging / capi-media-transporter.spec
1 Name:       capi-media-transporter
2 Summary:    A Media Transporter library in Tizen Native API
3 Version:    0.0.9
4 Release:    0
5 Group:      Multimedia/API
6 License:    Apache-2.0
7 URL:        http://source.tizen.org
8 Source0:    %{name}-%{version}.tar.gz
9 Source1001: capi-media-transporter.manifest
10 BuildRequires:  cmake
11 BuildRequires:  pkgconfig(dlog)
12 BuildRequires:  pkgconfig(glib-2.0)
13 BuildRequires:  pkgconfig(capi-base-common)
14 BuildRequires:  pkgconfig(capi-media-tool)
15 BuildRequires:  pkgconfig(gstreamer-1.0)
16 BuildRequires:  pkgconfig(gstreamer-video-1.0)
17 BuildRequires:  pkgconfig(gstreamer-audio-1.0)
18 BuildRequires:  pkgconfig(gstreamer-rtsp-server-1.0)
19 BuildRequires:  pkgconfig(libpulse)
20 BuildRequires:  pkgconfig(appcore-efl)
21 BuildRequires:  pkgconfig(elementary)
22 BuildRequires:  pkgconfig(iniparser)
23 BuildRequires:  pkgconfig(bundle)
24 BuildRequires:  pkgconfig(mm-display-interface)
25 BuildRequires:  pkgconfig(mm-common)
26 BuildRequires:  pkgconfig(cynara-client)
27 BuildRequires:  pkgconfig(libsmack)
28 BuildRequires:  pkgconfig(capi-system-info)
29 BuildRequires:  pkgconfig(capi-media-sound-manager)
30 BuildRequires:  pkgconfig(mm-display-interface)
31 BuildRequires:  pkgconfig(esplusplayer)
32 BuildRequires:  pkgconfig(mm-resource-manager)
33 %if 0%{?gtests:1}
34 BuildRequires:  pkgconfig(gmock)
35 %endif
36
37 %description
38 A Media Transporter library in Tizen Native API.
39
40 %package devel
41 Summary:    Multimedia Media Transporter Library in Tizen Native API (Development)
42 Group:      Multimedia/Development
43 Requires:   %{name} = %{version}-%{release}
44
45 %description devel
46 Media Transporter Library in Tizen Native API (DEV).
47
48 %package tool
49 Summary:  Tizen Media Transporter API testsuite
50 Requires: %{name} = %{version}-%{release}
51
52 %description tool
53 Tizen Media Transporter API testsuite.
54
55 %if 0%{?gcov:1}
56 %package gcov
57 Summary: Line Coverage files
58 Group: Development/Multimedia
59
60 %description gcov
61 Collection of files related to line coverage using gcov.
62 %endif
63
64 %prep
65 %setup -q
66 cp %{SOURCE1001} .
67
68 %build
69 export CFLAGS+=" -DSYSCONFDIR=\\\"%{_hal_sysconfdir}\\\""
70 export CXXFLAGS+=" -DSYSCONFDIR=\\\"%{_hal_sysconfdir}\\\""
71
72 %if 0%{?gcov:1}
73 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
74 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
75 export LDFLAGS+=" -lgcov"
76 %endif
77
78 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
79 %cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DFULLVER=%{version} -DMAJORVER=${MAJORVER} \
80 %if "%{tizen_profile_name}" == "tv"
81 -DTIZEN_PROFILE_TV=on \
82 %else
83 -DTIZEN_PROFILE_TV=off \
84 %endif
85 %if 0%{?gtests:1}
86 -DMTPR_UNITTEST=ON
87 %endif
88
89 make %{?jobs:-j%jobs}
90
91 %install
92 rm -rf %{buildroot}
93 mkdir -p %{buildroot}%{_bindir}
94 mkdir -p %{buildroot}%{_hal_datadir}
95 cp test/mtpr_test %{buildroot}%{_bindir}
96 cp test/mtpr_rtsp_test %{buildroot}%{_bindir}
97
98 %make_install
99 mkdir -p %{buildroot}%{_hal_sysconfdir}/multimedia
100
101 %if 0%{?gcov:1}
102 builddir=$(basename $PWD)
103 gcno_obj_dir=%{buildroot}%{_datadir}/gcov/obj/%{name}/"$builddir"
104 mkdir -p "$gcno_obj_dir"
105 find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
106 %endif
107
108 %post
109 /sbin/ldconfig
110
111 %postun -p /sbin/ldconfig
112
113 %files
114 %manifest %{name}.manifest
115 %{_libdir}/lib%{name}.so.*
116 %license LICENSE.APLv2
117
118 %files devel
119 %{_includedir}/media/*.h
120 %{_libdir}/pkgconfig/*.pc
121 %{_libdir}/lib%{name}.so
122
123 %files tool
124 %defattr(-,root,root,-)
125 %{_bindir}/mtpr_test
126 %{_bindir}/mtpr_rtsp_test
127 %if 0%{?gtests:1}
128 %{_bindir}/mtpr_ut
129 %endif
130
131 %if 0%{?gcov:1}
132 %files gcov
133 %{_datadir}/gcov/obj/*
134 %endif