Build package with profile specific configuration
[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.0
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
43 %description
44 %{summary} files
45
46
47 %package devel
48 Summary:    Development files for %{name}
49 Group:      Development/Libraries
50 Requires:   %{name} = %{version}-%{release}
51
52
53 %description devel
54 %{summary} files
55
56
57 %package doc
58 Summary:    Documentation files for %{name}
59 Group:      Development/Libraries
60 Requires:   %{name} = %{version}-%{release}
61
62
63 %description doc
64 %{summary} files
65
66
67 %prep
68 %setup -q -n %{name}-%{version}
69 cp %{SOURCE1001} .
70
71
72 %build
73 %if %{debug_build} == 1
74 ./autogen.sh
75 %endif
76 %reconfigure --enable-gum \
77              %{?extra_config_options1:%extra_config_options1} \
78              %{?extra_config_options2:%extra_config_options2}
79 make %{?_smp_mflags}
80
81
82 %install
83 rm -rf %{buildroot}
84 %make_install
85 install -m 755 -d %{buildroot}%{_unitdir}
86 install -m 644 data/tlm.service %{buildroot}%{_unitdir}
87 install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
88 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
89 install -m 644 data/tlm-default-login %{buildroot}%{_sysconfdir}/pam.d/
90 install -m 644 data/tlm-system-login %{buildroot}%{_sysconfdir}/pam.d/
91 install -m 755 -d %{buildroot}%{_sysconfdir}/session.d
92 %if "%{profile}" == "common"
93 install -m 644 data/tizen-common/etc/tlm.conf %{buildroot}%{_sysconfdir}
94 install -m 755 data/tizen-common/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
95 %endif
96 %if "%{profile}" == "ivi"
97 install -m 644 data/tizen-ivi/etc/tlm.conf %{buildroot}%{_sysconfdir}
98 install -m 755 data/tizen-ivi/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
99 %endif
100
101
102 %post
103 /sbin/ldconfig
104 /usr/bin/systemctl enable tlm
105 /usr/bin/systemctl daemon-reload
106
107
108 %postun
109 /sbin/ldconfig
110 /usr/bin/systemctl disable tlm
111 /usr/bin/systemctl daemon-reload
112
113
114 %files
115 %defattr(-,root,root,-)
116 %manifest %{name}.manifest
117 %license COPYING
118 %doc AUTHORS NEWS README
119 %{_bindir}/%{name}
120 %{_bindir}/%{name}-sessiond
121 %{_bindir}/%{name}-client
122 %{_libdir}/lib%{name}*.so.*
123 %{_libdir}/%{name}/plugins/*.so*
124 %{_unitdir}/tlm.service
125 %config(noreplace) %{_sysconfdir}/tlm.conf
126 %config %{_sysconfdir}/pam.d/tlm-login
127 %config %{_sysconfdir}/pam.d/tlm-default-login
128 %config %{_sysconfdir}/pam.d/tlm-system-login
129 %config(noreplace) %{_sysconfdir}/session.d/*
130
131
132 %files devel
133 %defattr(-,root,root,-)
134 %{_includedir}/%{name}/*.h
135 %{_libdir}/lib%{name}*.so
136 %{_libdir}/pkgconfig/%{name}.pc
137 %if %{efl} == 1
138 %{_bindir}/tlm-ui
139 %endif
140
141
142 %files doc
143 %defattr(-,root,root,-)
144 %{_datadir}/gtk-doc/html/tlm/*