Enable tlm by config package instead of main package
[platform/core/system/tlm.git] / dists / rpm / tizen / packaging / tlm.spec
1 # enable debug features such as control environment variables
2 # WARNING! do not use for production builds as it will break security
3 %define debug_build 0
4 %define efl 0
5
6 %if %{debug_build} == 1
7 %define extra_config_options1 --enable-gtk-doc --enable-debug
8 %endif
9
10 %if %{efl} == 1
11 %define extra_config_options1 --enable-examples
12 %endif
13
14
15 Name: tlm
16 Summary: Login manager for Tizen
17 Version: 1.0.1
18 Release: 0
19 Group: System/Service
20 License: LGPL-2.1+
21 Source: %{name}-%{version}.tar.gz
22 URL: https://github.com/01org/tlm
23 Source1001: %{name}.manifest
24 Requires(post): /sbin/ldconfig, systemd
25 Requires(postun): /sbin/ldconfig, systemd
26 Requires: gumd
27 Requires: libsystemd
28 BuildRequires: pkgconfig(glib-2.0) >= 2.30
29 BuildRequires: pkgconfig(gobject-2.0)
30 BuildRequires: pkgconfig(gio-2.0)
31 BuildRequires: pkgconfig(gio-unix-2.0)
32 BuildRequires: pkgconfig(gmodule-2.0)
33 BuildRequires: pkgconfig(libgum)
34 BuildRequires: pam-devel
35 %if %{debug_build} == 1
36 BuildRequires: gtk-doc
37 %endif
38 %if %{efl} == 1
39 BuildRequires: pkgconfig(elementary)
40 %endif
41
42 %description
43 Login manager daemon for Tizen.
44
45
46 %package devel
47 Summary:    Development files for %{name}
48 Group:      Development/Libraries
49 Requires:   %{name} = %{version}-%{release}
50
51 %description devel
52 %{summary} package.
53
54
55 %package doc
56 Summary:    Documentation files for %{name}
57 Group:      Development/Libraries
58 Requires:   %{name} = %{version}-%{release}
59
60 %description doc
61 %{summary} package.
62
63
64 %if "%{profile}" != "ivi"
65
66 %package config-common
67 Summary:    Configuration files for common-profile
68 Group:      System/Service
69 Requires:   %{name} = %{version}-%{release}
70 Provides:   tlm-config
71
72 %description config-common
73 Tizen Login Manager configuration files for common-profile.
74
75 %else
76
77 %package config-ivi-singleseat
78 Summary:    Configuration files for ivi-profile with single seat
79 Group:      System/Service
80 Requires:   %{name} = %{version}-%{release}
81 Provides:   tlm-config
82 Conflicts:  tlm-config-ivi-multiseat, tlm-config-ivi-vtc1010
83
84 %description config-ivi-singleseat
85 Generic Tizen Login Manager configuration files for ivi-profile with
86 single seat.
87
88
89 %package config-ivi-multiseat
90 Summary:    Configuration files for ivi-profile with multi seat
91 Group:      System/Service
92 Requires:   %{name} = %{version}-%{release}
93 Provides:   tlm-config
94 Conflicts:  tlm-config-ivi-singleseat, tlm-config-ivi-vtc1010
95
96 %description config-ivi-multiseat
97 Generic Tizen Login Manager configuration files for ivi-profile with
98 multi seat.
99
100
101 %package config-ivi-vtc1010
102 Summary:    Configuration files for ivi-profile on VTC-1010
103 Group:      System/Service
104 Requires:   %{name} = %{version}-%{release}
105 Provides:   tlm-config
106 Conflicts:  tlm-config-ivi-singleseat, tlm-config-ivi-multiseat
107
108 %description config-ivi-vtc1010
109 Tizen Login Manager configuration files for ivi-profile on VTC-1010 hardware.
110
111 %endif
112
113
114 %prep
115 %setup -q -n %{name}-%{version}
116 cp %{SOURCE1001} .
117
118
119 %build
120 %if %{debug_build} == 1
121 ./autogen.sh
122 %endif
123 %reconfigure --enable-gum \
124              %{?extra_config_options1:%extra_config_options1} \
125              %{?extra_config_options2:%extra_config_options2}
126 make %{?_smp_mflags}
127
128
129 %install
130 rm -rf %{buildroot}
131 %make_install
132 rm -f %{buildroot}%{_sysconfdir}/tlm.conf
133 install -m 755 -d %{buildroot}%{_unitdir}
134 install -m 644 data/tlm.service %{buildroot}%{_unitdir}
135 install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
136 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
137 install -m 644 data/tlm-default-login %{buildroot}%{_sysconfdir}/pam.d/
138 install -m 644 data/tlm-system-login %{buildroot}%{_sysconfdir}/pam.d/
139 install -m 755 -d %{buildroot}%{_sysconfdir}/session.d
140 install -m 755 -d %{buildroot}%{_sysconfdir}/xdg/weston
141 %if "%{profile}" == "ivi"
142 install -m 644 data/tizen-ivi/etc/tlm*.conf %{buildroot}%{_sysconfdir}
143 install -m 755 data/tizen-ivi/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
144 install -m 644 data/tizen-ivi/weston-*.ini %{buildroot}%{_sysconfdir}/xdg/weston/
145 install -m 755 -d %{buildroot}%{_sysconfdir}/udev/rules.d
146 install -m 644 data/tizen-ivi/10-multiseat-vtc1010.rules %{buildroot}%{_sysconfdir}/udev/rules.d/
147 %else
148 install -m 644 data/tizen-common/etc/tlm.conf %{buildroot}%{_sysconfdir}
149 install -m 755 data/tizen-common/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
150 %endif
151
152
153 %post
154 /sbin/ldconfig
155
156
157 %postun -p /sbin/ldconfig
158
159
160 %if "%{profile}" == "ivi"
161
162 %post config-ivi-singleseat
163 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
164 ln -s -f /etc/tlm-singleseat.conf /etc/tlm.conf
165 fi
166 /usr/bin/systemctl enable tlm
167 /usr/bin/systemctl daemon-reload
168
169 %preun config-ivi-singleseat
170 if [ $1 == 0 ]; then
171         /usr/bin/systemctl disable tlm
172         /usr/bin/systemctl daemon-reload
173 fi
174
175 %postun config-ivi-singleseat
176 if [ -h /etc/tlm.conf ]; then
177 rm -f /etc/tlm.conf
178 fi
179
180
181 %post config-ivi-multiseat
182 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
183 ln -s -f /etc/tlm-multiseat.conf /etc/tlm.conf
184 fi
185 /usr/bin/systemctl enable tlm
186 /usr/bin/systemctl daemon-reload
187
188 %preun config-ivi-multiseat
189 if [ $1 == 0 ]; then
190         /usr/bin/systemctl disable tlm
191         /usr/bin/systemctl daemon-reload
192 fi
193
194 %postun config-ivi-multiseat
195 if [ -h /etc/tlm.conf ]; then
196 rm -f /etc/tlm.conf
197 fi
198
199
200 %post config-ivi-vtc1010
201 if [ ! -e /etc/tlm.conf ] || [ -h /etc/tlm.conf ]; then
202 ln -s -f /etc/tlm-vtc1010.conf /etc/tlm.conf
203 fi
204 /usr/bin/systemctl enable tlm
205 /usr/bin/systemctl daemon-reload
206
207 %preun config-ivi-vtc1010
208 if [ $1 == 0 ]; then
209         /usr/bin/systemctl disable tlm
210         /usr/bin/systemctl daemon-reload
211 fi
212
213 %postun config-ivi-vtc1010
214 if [ -h /etc/tlm.conf ]; then
215 rm -f /etc/tlm.conf
216 fi
217
218 %endif
219
220
221 %files
222 %defattr(-,root,root,-)
223 %manifest %{name}.manifest
224 %license COPYING
225 %doc AUTHORS NEWS README
226 %{_bindir}/%{name}
227 %{_bindir}/%{name}-sessiond
228 %{_bindir}/%{name}-client
229 %{_bindir}/%{name}-weston-launch
230 %{_libdir}/lib%{name}*.so.*
231 %{_libdir}/%{name}/plugins/*.so*
232 %{_unitdir}/tlm.service
233 %config %{_sysconfdir}/pam.d/tlm-login
234 %config %{_sysconfdir}/pam.d/tlm-default-login
235 %config %{_sysconfdir}/pam.d/tlm-system-login
236
237
238 %files devel
239 %defattr(-,root,root,-)
240 %{_includedir}/%{name}/*.h
241 %{_libdir}/lib%{name}*.so
242 %{_libdir}/pkgconfig/%{name}.pc
243 %if %{efl} == 1
244 %{_bindir}/tlm-ui
245 %endif
246
247
248 %files doc
249 %defattr(-,root,root,-)
250 %{_datadir}/gtk-doc/html/tlm/*
251
252
253 %if "%{profile}" != "ivi"
254
255 %files config-common
256 %defattr(-,root,root,-)
257 %manifest %{name}.manifest
258 %config(noreplace) %{_sysconfdir}/tlm.conf
259 %config(noreplace) %{_sysconfdir}/session.d/*
260
261 %else
262
263 %files config-ivi-singleseat
264 %defattr(-,root,root,-)
265 %manifest %{name}.manifest
266 %config(noreplace) %{_sysconfdir}/tlm-singleseat.conf
267 %config(noreplace) %{_sysconfdir}/session.d/genivi-session-singleseat
268 %config(noreplace) %{_sysconfdir}/session.d/user-session
269 %config(noreplace) %{_sysconfdir}/session.d/user-session.modello
270 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-genivi.ini
271 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-user.ini
272
273
274 %files config-ivi-multiseat
275 %defattr(-,root,root,-)
276 %manifest %{name}.manifest
277 %config(noreplace) %{_sysconfdir}/tlm-multiseat.conf
278 %config(noreplace) %{_sysconfdir}/session.d/genivi-session-multiseat
279 %config(noreplace) %{_sysconfdir}/session.d/user-session
280 %config(noreplace) %{_sysconfdir}/session.d/user-session.modello
281 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-genivi.ini
282 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-user.ini
283
284
285 %files config-ivi-vtc1010
286 %defattr(-,root,root,-)
287 %manifest %{name}.manifest
288 %config(noreplace) %{_sysconfdir}/tlm-vtc1010.conf
289 %config(noreplace) %{_sysconfdir}/session.d/genivi-session-vtc1010
290 %config(noreplace) %{_sysconfdir}/session.d/user-session
291 %config(noreplace) %{_sysconfdir}/session.d/user-session.modello
292 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-genivi-vtc1010.ini
293 %config(noreplace) %{_sysconfdir}/xdg/weston/weston-user.ini
294 %config(noreplace) %{_sysconfdir}/udev/rules.d/*
295
296 %endif
297