Remove the ID_BUS key from udev rules
[platform/core/multimedia/media-server.git] / packaging / media-server.spec
1 Name:       media-server
2 Summary:    A server for media content management
3 Version:    0.6.3
4 Release:    0
5 Group:      Multimedia/Service
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    media-server.service
9 Source2:    media-server-user.service
10 Source3:    media-server-user.path
11 Source4:    media-server.socket
12 Source5:    99-media-server.rules
13 Source6:    media-server-user-ondemand.path
14 Source1001:     %{name}.manifest
15 Source1002:     libmedia-utils.manifest
16 Source1003:     libmedia-utils-devel.manifest
17 Requires(post): /usr/bin/buxton2ctl
18 BuildRequires:  pkgconfig(glib-2.0)
19 BuildRequires:  pkgconfig(vconf)
20 BuildRequires:  pkgconfig(dlog)
21 BuildRequires:  pkgconfig(sqlite3)
22 BuildRequires:  pkgconfig(icu-i18n)
23 BuildRequires:  pkgconfig(libsystemd)
24 BuildRequires:  pkgconfig(libtzplatform-config)
25 BuildRequires:  pkgconfig(cynara-client)
26 BuildRequires:  pkgconfig(cynara-session)
27 BuildRequires:  pkgconfig(capi-system-info)
28 BuildRequires:  pkgconfig(capi-system-device)
29 BuildRequires:  pkgconfig(capi-system-resource)
30 %if 0%{?gtests:1}
31 BuildRequires:  pkgconfig(gmock)
32 %endif
33 %if "%{tizen_profile_name}" == "tv"
34 BuildRequires:  pkgconfig(capi-system-usbdevice)
35 BuildRequires:  pkgconfig(power-defs)
36 BuildRequires:  pkgconfig(capi-system-power-tv)
37 BuildRequires:  pkgconfig(deviced)
38 %define product_tv 1
39 %else
40 %define product_tv 0
41 %endif
42
43 %if ("%{sec_buildconf_optimized_memory}" == "1")
44 %define on_demand 1
45 %else
46 %define on_demand 0
47 %endif
48
49 %define upgrade_script_path /usr/share/upgrade/scripts
50
51 %description
52 Description: A server for media content management.
53
54 %package -n libmedia-utils
55 Summary:   The media server runtime library
56 Group:     Multimedia/Libraries
57 Requires:  media-server = %{version}-%{release}
58
59 %description -n libmedia-utils
60 Description : The media server runtime library.
61
62 %package -n libmedia-utils-devel
63 Summary:   The media server runtime library (development)
64 Group:     Multimedia/Development
65 Requires:  libmedia-utils = %{version}-%{release}
66 Requires:  libtzplatform-config-devel
67
68 %description -n libmedia-utils-devel
69 Description: The media server runtime library. (Development files included)
70
71 %prep
72 %setup -q
73 cp %{SOURCE1001} %{SOURCE1002} %{SOURCE1003} .
74
75 %build
76 %if "%{asan}" == "1"
77 %restore_fcommon
78 %endif
79 export CFLAGS="$CFLAGS -D_GNU_SOURCE -D_FORTIFY_SOURCE=2 -DTIZEN_DEBUG_ENABLE -DSYSCONFDIR=\\\"%{_sysconfdir}\\\""
80 export CFLAGS+=" -DPATH_LIBDIR=\\\"%{_libdir}\\\""
81 %if 0%{?on_demand}
82 export CFLAGS+=" -D_USE_ON_DEMAND"
83 %endif
84 %if 0%{?product_tv}
85 export CFLAGS+=" -D_USE_TVPD_MODE"
86 %endif
87 rm -rf autom4te.cache
88 rm -f aclocal.m4 ltmain.sh
89 mkdir -p m4
90 %reconfigure --prefix=%{_prefix} \
91 %if 0%{?gtests:1}
92         --enable-tests \
93 %endif
94 %if 0%{?on_demand}
95         --enable-on-demand \
96 %endif
97 %if 0%{?product_tv}
98         --enable-product-tv \
99 %else
100         --disable-product-tv \
101 %endif
102         --disable-static
103 %__make %{?jobs:-j%jobs}
104
105 %install
106
107 %make_install
108
109 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
110 install -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/media-server.service
111 %if 0%{?on_demand}
112 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants
113 mkdir -p %{buildroot}%{_sysconfdir}/udev/rules.d
114 install -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/media-server.socket
115 ln -s ../media-server.socket %{buildroot}%{_unitdir}/sockets.target.wants/media-server.socket
116 install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/udev/rules.d/99-media-server.rules
117 %endif
118 %if !0%{?product_tv}
119 mkdir -p %{buildroot}%{_unitdir_user}
120 install -m 644 %{SOURCE2} %{buildroot}%{_unitdir_user}/media-server-user.service
121 %if 0%{?on_demand}
122 install -m 644 %{SOURCE6} %{buildroot}%{_unitdir_user}/media-server-user.path
123 %else
124 install -m 644 %{SOURCE3} %{buildroot}%{_unitdir_user}/media-server-user.path
125 %endif
126 %endif
127
128 ln -s ../media-server.service %{buildroot}%{_unitdir}/multi-user.target.wants/media-server.service
129
130 #ini file
131 mkdir -p %{buildroot}/etc/multimedia
132 %if 0%{?product_tv}
133 cp -rf %{_builddir}/%{name}-%{version}/media_content_config_product.ini %{buildroot}/etc/multimedia/media_content_config.ini
134 %else
135 cp -rf %{_builddir}/%{name}-%{version}/media_content_config.ini %{buildroot}/etc/multimedia/media_content_config.ini
136 %endif
137 mkdir -p %{buildroot}/etc/gumd/useradd.d
138 cp -rf %{_builddir}/%{name}-%{version}/30_media-server-add.post %{buildroot}/etc/gumd/useradd.d/30_media-server-add.post
139 #dummy db file for reset media DB
140 %if 0%{?product_tv}
141 cp -rf %{_builddir}/%{name}-%{version}/data/media_product.db %{buildroot}/etc/multimedia/.media.db
142 %endif
143
144 %post
145 # setup dbupdate in user session
146 mkdir -p %{_unitdir_user}/basic.target.wants/
147 ln -sf ../media-server-user.path  %{_unitdir_user}/basic.target.wants/
148
149 chmod 755 /etc/gumd/useradd.d/30_media-server-add.post
150
151 %post -n libmedia-utils -p /sbin/ldconfig
152
153 %postun -n libmedia-utils -p /sbin/ldconfig
154
155 %files
156 %manifest %{name}.manifest
157 %defattr(-,root,root,-)
158 %{_bindir}/media-server
159 %if 0%{?product_tv}
160 %{_bindir}/media-scanner-v2
161 %else
162 %{_bindir}/media-scanner
163 %endif
164 %{_bindir}/mediadb-update
165 %if 0%{?gtests:1}
166 %{_bindir}/gtest*
167 %endif
168 %{_unitdir}/media-server.service
169 %{_unitdir}/multi-user.target.wants/media-server.service
170 %if 0%{?on_demand}
171 %{_unitdir}/media-server.socket
172 %{_unitdir}/sockets.target.wants/media-server.socket
173 %{_sysconfdir}/udev/rules.d/99-media-server.rules
174 %endif
175 %if !0%{?product_tv}
176 %{_unitdir_user}/media-server-user.service
177 %{_unitdir_user}/media-server-user.path
178 %else
179 /etc/multimedia/.media.db
180 %endif
181 /etc/multimedia/media_content_config.ini
182 /etc/gumd/useradd.d/30_media-server-add.post
183 %license LICENSE.APLv2.0
184
185 %files -n libmedia-utils
186 %manifest libmedia-utils.manifest
187 %license LICENSE.APLv2.0
188 %defattr(-,root,root,-)
189 %{_libdir}/libmedia-utils.so.0
190 %{_libdir}/libmedia-utils.so.0.0.0
191
192 %files -n libmedia-utils-devel
193 %manifest libmedia-utils-devel.manifest
194 %defattr(-,root,root,-)
195 %{_libdir}/libmedia-utils.so
196 %{_libdir}/pkgconfig/libmedia-utils.pc
197 %{_includedir}/media-utils/*.h