dlogctrl: drop
[platform/core/system/dlog.git] / packaging / dlog.spec
1 Name:       dlog
2 Summary:    Logging service
3 Version:    0.6
4 Release:    3
5 Group:      System/Libraries
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source101:  packaging/dlogutil.manifest
9 Source102:  packaging/libdlog.manifest
10 Source103:  packaging/dlog-tests.manifest
11 Source104:  packaging/dlogbackend-logger.manifest
12 Source301:  packaging/dlog_logger.service
13 Source302:  packaging/dlog_logger.path
14 Source501:  packaging/01-dlog.rules
15 Source666:  packaging/dlog_dev-log.socket
16
17 %define upgrade_file_path %{_datadir}/upgrade
18
19 BuildRequires: autoconf
20 BuildRequires: automake
21 BuildRequires: libtool
22 BuildRequires: pkgconfig(capi-base-common)
23 BuildRequires: pkgconfig(libudev)
24 BuildRequires: pkgconfig(libtzplatform-config)
25 Requires(post): coreutils
26 Requires(post): /usr/bin/systemctl
27 Requires(postun): /usr/bin/systemctl
28 Requires(preun): /usr/bin/systemctl
29
30 %description
31 dlog API library
32
33 %package -n libdlog
34 Summary:    Logging service dlog API
35 Group:      Development/Libraries
36 Requires(post): /usr/bin/chsmack
37 Requires(post): coreutils
38
39 %description -n libdlog
40 dlog API library. If dlogbackend isn't installed, pipe backend is selected.
41
42 %package -n libdlog-devel
43 Summary:    Logging service dlog API
44 Group:      Development/Libraries
45 Requires:   lib%{name} = %{?epoch:%{epoch}:}%{version}-%{release}
46
47 %description -n libdlog-devel
48 dlog API library
49
50 %package -n dlogbackend-logger
51 Summary:        Android-logger backend selection for dlog
52 Requires:       lib%{name} = %{?epoch:%{epoch}:}%{version}-%{release}
53 Requires(post): coreutils
54
55 %description -n dlogbackend-logger
56 Change dlog backend to logger backend. Require kernel support (Android-logger)
57
58 %package -n dlogutil
59 Summary:    print log data to the screen
60 Group:      Development/Libraries
61 Requires:   lib%{name} = %{?epoch:%{epoch}:}%{version}-%{release}
62 Requires(post): /usr/bin/systemctl
63 Requires(postun): /usr/bin/systemctl
64 Requires(preun): /usr/bin/systemctl
65
66 %description -n dlogutil
67 Utilities for print log data
68
69 %package -n log-syslog
70 License:    Apache-2.0
71 Summary:    Logger: syslog-source logging via dlog
72 Group:      Base/Startup
73 Requires:   lib%{name} = %{?epoch:%{epoch}:}%{version}-%{release}
74 Provides:   tizen-log-syslog
75
76 %description -n log-syslog
77 Systemd unit for syslog socket configation to use with dlog
78
79 %package -n dlog-doc
80 Summary: dlog documentation
81 BuildRequires: doxygen
82
83 %description -n dlog-doc
84 Documentation for dlog
85
86 %package -n dlog-tests
87 Summary: dlog integration tests
88
89 %description -n dlog-tests
90 Integration tests for dlog.
91
92 %prep
93 %setup -q
94
95 %build
96
97 cp %{SOURCE101} .
98 cp %{SOURCE102} .
99 cp %{SOURCE103} .
100 cp %{SOURCE104} .
101
102 %autogen --disable-static
103 %configure --disable-static \
104                         TZ_SYS_ETC=%{TZ_SYS_ETC}
105 make %{?jobs:-j%jobs} \
106         CFLAGS+=-DTZ_SYS_ETC=\\\"%{TZ_SYS_ETC}\\\"
107
108 make check
109
110 make dox
111
112 %install
113 rm -rf %{buildroot}
114
115 %make_install
116 mkdir -p %{buildroot}/usr/bin/
117
118 mkdir -p %{buildroot}/usr/share/doc/dlog
119 cp -r documentation/* %{buildroot}/usr/share/doc/dlog
120
121 mkdir -p %{buildroot}%{TZ_SYS_ETC}
122 install -m 0644 configs/dlog.conf.pipe %{buildroot}%{TZ_SYS_ETC}/dlog.conf.pipe
123 install -m 0644 configs/dlog.conf.logger %{buildroot}%{TZ_SYS_ETC}/dlog.conf.logger
124
125 mkdir -p %{buildroot}%{_unitdir}/basic.target.wants/
126 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants/
127 install -m 0644 %SOURCE301 %{buildroot}%{_unitdir}
128 install -m 0644 %SOURCE666 %{buildroot}%{_unitdir}
129
130 install -m 0644 %SOURCE302 %{buildroot}%{_unitdir}/dlog_logger.path
131 ln -s ../dlog_logger.service %{buildroot}%{_unitdir}/basic.target.wants/dlog_logger.service
132 ln -s ../dlog_dev-log.socket %{buildroot}%{_unitdir}/sockets.target.wants/dlog_dev-log.socket
133
134 mkdir -p %{buildroot}%{_udevrulesdir}
135 install -m 0644 %SOURCE501 %{buildroot}%{_udevrulesdir}/01-dlog.rules
136
137 mkdir -p %{buildroot}/var/log/dlog
138
139 install -D scripts/210.dlog_upgrade_30to40.sh %{buildroot}%{upgrade_file_path}/scripts/210.dlog_upgrade.sh
140
141 mkdir -p %{buildroot}%{TZ_SYS_ETC}/dlog.conf.d
142
143 %post
144 systemctl daemon-reload
145
146 %post -n dlogutil
147 systemctl daemon-reload
148
149 %postun -n dlogutil
150 systemctl daemon-reload
151
152 %post -n libdlog
153 /sbin/ldconfig
154 chsmack -a System /var/log/dlog
155 ln -s %{TZ_SYS_ETC}/dlog.conf.pipe %{TZ_SYS_ETC}/dlog.conf
156
157 %postun -n libdlog
158 /sbin/ldconfig
159 rm %{TZ_SYS_ETC}/dlog.conf
160
161 %pre -n dlogbackend-logger
162 rm %{TZ_SYS_ETC}/dlog.conf
163
164 %post -n dlogbackend-logger
165 ln -s %{TZ_SYS_ETC}/dlog.conf.logger %{TZ_SYS_ETC}/dlog.conf
166
167 %postun -n dlogbackend-logger
168 rm %{TZ_SYS_ETC}/dlog.conf
169 ln -s %{TZ_SYS_ETC}/dlog.conf.pipe %{TZ_SYS_ETC}/dlog.conf
170
171 %files  -n dlogutil
172 %manifest dlogutil.manifest
173 %license LICENSE.APACHE2.0
174 %attr(750,log,log) %{_bindir}/dlogutil
175 %attr(755,log,log) %{_bindir}/dlogsend
176
177 %files  -n libdlog
178 %manifest libdlog.manifest
179 %license LICENSE.APACHE2.0
180 %{_libdir}/libdlog.so.0
181 %{_libdir}/libdlog.so.0.0.0
182 %attr(664,log,log) %{TZ_SYS_ETC}/dlog.conf.pipe
183 %attr(755,log,log) /var/log/dlog
184 %attr(750,log,log) %{_bindir}/dlog_logger
185 %{_unitdir}/basic.target.wants/dlog_logger.service
186 %{_unitdir}/dlog_logger.service
187 %{_unitdir}/dlog_logger.path
188 %attr(664,log,log) /usr/lib/tmpfiles.d/dlog-run.conf
189 %{_udevrulesdir}/01-dlog.rules
190 # For upgrade
191 %{upgrade_file_path}/scripts/210.dlog_upgrade.sh
192 %attr(644,log,log) %{TZ_SYS_ETC}/dlog.conf.d/
193
194 %files -n libdlog-devel
195 %{_includedir}/dlog/dlog.h
196 %{_includedir}/dlog/dlog-internal.h
197 %{_libdir}/pkgconfig/dlog.pc
198 %{_libdir}/libdlog.so
199
200 %files -n dlogbackend-logger
201 %manifest dlogbackend-logger.manifest
202 %license LICENSE.APACHE2.0
203 %attr(664,log,log) %{TZ_SYS_ETC}/dlog.conf.logger
204
205 %files -n log-syslog
206 %manifest libdlog.manifest
207 %{_unitdir}/sockets.target.wants/dlog_dev-log.socket
208 %{_unitdir}/dlog_dev-log.socket
209
210 %files -n dlog-doc
211 /usr/share/doc/dlog
212
213 %files -n dlog-tests
214 %manifest dlog-tests.manifest
215 %{_bindir}/dlog_test_pipe
216 %{_libexecdir}/libdlog/perf_libdlog
217 %{_libexecdir}/libdlog/test_libdlog
218 %{_datadir}/dlog.conf.test