1 %global _hardened_build 1
3 # We ship a .pc file but don't want to have a dep on pkg-config. We
4 # strip the automatically generated dep here and instead co-own the
6 %global __requires_exclude pkg-config
8 %bcond_with unified_directory
11 %define enable() %{expand:%%{?with_%{1}:--enable-%{1}}%%{!?with_%{1}:--disable-%{1}}}
12 # In order to reduce the root privilege daemon,
13 # '/run' directory has a group access permission for run_tmp group (gid:1902).
14 %define RUN_TMP_GID 1902
15 %define WITH_RUN_GID %{RUN_TMP_GID}
17 %define WITH_BASH_COMPLETION 0
18 %define WITH_ZSH_COMPLETION 0
19 %define WITH_BLACKLIGHT 0
20 %define WITH_COREDUMP 0
21 %define WITH_RANDOMSEED 0
25 %define WITH_FIRSTBOOT 0
26 %define WITH_TIMEDATED 0
28 %define WITH_NETWORKD 0
29 %define WITH_RESOLVED 0
30 %define WITH_TIMESYNCD 0
33 %define WITH_COMPAT_LIBS 1
36 Url: http://www.freedesktop.org/wiki/Software/systemd
38 Release: 1%{?release_flags}
39 License: LGPL-2.1+ and MIT and GPL-2.0+
40 Summary: A System and Service Manager
41 Source0: http://www.freedesktop.org/software/systemd/%{name}-%{version}.tar.xz
42 Source1: apply-conf.sh
43 Source11: tizen-system-mobile.conf
44 Source12: tizen-system-wearable.conf
45 Source13: tizen-journald.conf
46 Source14: tizen-bootchart.conf
47 Source1001: systemd.manifest
48 # The base number of patch for systemd is 101.
50 # The base number of patch for udev is 201.
52 BuildRequires: glib2-devel
53 BuildRequires: kmod-devel >= 15
55 BuildRequires: kernel-headers
57 BuildRequires: libacl-devel
58 BuildRequires: pkgconfig
59 BuildRequires: pkgconfig(dbus-1) >= 1.4.0
60 BuildRequires: libcap-devel
61 BuildRequires: libblkid-devel >= 2.20
62 BuildRequires: pkgconfig(libkmod) >= 5
63 BuildRequires: pam-devel
64 BuildRequires: dbus-devel
65 BuildRequires: libacl-devel
66 BuildRequires: glib2-devel
67 BuildRequires: libblkid-devel
68 BuildRequires: xz-devel
69 BuildRequires: kmod-devel
70 BuildRequires: libgcrypt-devel
71 BuildRequires: libxslt
72 BuildRequires: intltool >= 0.40.0
76 BuildRequires: automake
77 BuildRequires: autoconf
78 BuildRequires: libtool
79 BuildRequires: smack-devel
81 Requires: %{name}-libs = %{version}-%{release}
86 Provides: /bin/systemctl
87 Provides: /sbin/shutdown
89 Provides: systemd-units = %{version}-%{release}
90 Provides: udev = %{version}
92 Obsoletes: system-setup-keyboard < 0.9
93 Provides: system-setup-keyboard = 0.9
94 Obsoletes: nss-myhostname < 0.4
95 Provides: nss-myhostname = 0.4
96 Obsoletes: systemd < 204-10
97 Obsoletes: systemd-analyze < 198
98 Provides: systemd-analyze = 198
101 systemd is a system and service manager for Linux, compatible with
102 SysV and LSB init scripts. systemd provides aggressive parallelization
103 capabilities, uses socket and D-Bus activation for starting services,
104 offers on-demand starting of daemons, keeps track of processes using
105 Linux cgroups, supports snapshotting and restoring of the system
106 state, maintains mount and automount points and implements an
107 elaborate transactional dependency-based service control logic. It can
108 work as a drop-in replacement for sysvinit.
111 Summary: systemd libraries
112 License: LGPLv2+ and MIT
114 Obsoletes: systemd < 185-4
115 Conflicts: systemd < 185-4
118 Libraries for systemd and udev, as well as the systemd PAM module.
121 Summary: Development headers for systemd
122 License: LGPLv2+ and MIT
123 Requires: %{name} = %{version}-%{release}
124 Provides: pkgconfig(libudev)
125 Provides: libudev-devel = %{version}
126 Obsoletes: libudev-devel < 183
129 Development headers and auxiliary files for developing applications for systemd.
131 %package -n libgudev1
132 Summary: Libraries for adding libudev support to applications that use glib
134 Requires: %{name} = %{version}-%{release}
136 %description -n libgudev1
137 This package contains the libraries that make it easier to use libudev
138 functionality from applications that use glib.
140 %package -n libgudev1-devel
141 Summary: Header files for adding libudev support to applications that use glib
142 Requires: libgudev1 = %{version}-%{release}
145 %description -n libgudev1-devel
146 This package contains the header and pkg-config files for developing
147 glib-based applications using libudev functionality.
149 %package journal-gateway
150 Summary: Gateway for serving journal events over the network using HTTP
151 Requires: %{name} = %{version}-%{release}
153 Requires(pre): /usr/bin/getent
154 Requires(post): systemd
155 Requires(preun): systemd
156 Requires(postun): systemd
158 %description journal-gateway
159 systemd-journal-gatewayd serves journal events over the network using HTTP.
162 %setup -q -n %{name}-%{version}
167 export CFLAGS=" -g -O0 -fPIE -ftrapv"
168 export LDFLAGS=" -pie"
175 --with-firmware-path="/%{_libdir}/firmware" \
176 %if ! %{WITH_BASH_COMPLETION}
177 --with-bashcompletiondir="" \
179 %if ! %{WITH_ZSH_COMPLETION}
180 --with-zshcompletiondir="" \
182 %if "%{?tizen_profile_name}" == "wearable"
185 %if ! %{WITH_RANDOMSEED}
186 --disable-randomseed \
188 %if ! %{WITH_COREDUMP}
191 %if ! %{WITH_BLACKLIGHT}
192 --disable-backlight \
197 %if ! %{WITH_TIMEDATED}
198 --disable-timedated \
200 %if %{WITH_COMPAT_LIBS}
201 --enable-compat-libs \
203 %if ! %{WITH_NETWORKD}
206 %if ! %{WITH_RESOLVED}
209 %if ! %{WITH_TIMESYNCD}
210 --disable-timesyncd \
216 --with-run-gid=%{WITH_RUN_GID} \
218 %if ! %{WITH_FIRSTBOOT}
219 --disable-firstboot \
221 %if "%{?tizen_profile_name}" == "mobile" || "%{?tizen_profile_name}" == "wearable"
222 --with-smack-run-label="systemd" \
223 --with-smack-default-process-label="systemd::no-label" \
224 --with-process-label \
229 --with-sysvinit-path= \
230 --with-sysvrcnd-path= \
231 --disable-gtk-doc-html \
238 --disable-hostnamed \
242 --disable-quotacheck \
245 --disable-myhostname \
253 rm -f %{buildroot}/usr/bin/kernel-install
254 rm -rf %{buildroot}/usr/lib/kernel
255 rm -f %{buildroot}/usr/bin/systemd-detect-virt
256 find %{buildroot} \( -name '*.a' -o -name '*.la' \) -delete
259 mkdir -p %{buildroot}/%{_sbindir}
260 mkdir -p %{buildroot}/sbin
261 ln -sf ../bin/udevadm %{buildroot}%{_sbindir}/udevadm
262 # TODO: Below code should be removed after we go unified directory structure.
263 %if !%{with unified_directory}
264 mkdir -p %{buildroot}%{_prefix}/lib/firmware/updates
267 # Create SysV compatibility symlinks. systemctl/systemd are smart
268 # enough to detect in which way they are called.
269 ln -s ../lib/systemd/systemd %{buildroot}%{_sbindir}/init
270 # TODO: Below code should be removed after we go unified directory structure.
271 %if %{with unified_directory}
272 ln -s /usr/lib/systemd/systemd %{buildroot}/sbin/init
274 ln -s ../lib/systemd/systemd %{buildroot}%{_bindir}/systemd
275 ln -s ../bin/systemctl %{buildroot}%{_sbindir}/reboot
276 # TODO: Below code should be removed after we go unified directory structure.
277 %if %{with unified_directory}
278 ln -s /usr/bin/systemctl %{buildroot}/sbin/reboot
280 ln -s ../bin/systemctl %{buildroot}%{_sbindir}/halt
281 ln -s ../bin/systemctl %{buildroot}%{_sbindir}/poweroff
282 ln -s ../bin/systemctl %{buildroot}%{_sbindir}/shutdown
283 ln -s ../bin/systemctl %{buildroot}%{_sbindir}/telinit
284 ln -s ../bin/systemctl %{buildroot}%{_sbindir}/runlevel
285 ln -s /usr/lib/systemd/systemd-udevd %{buildroot}/%{_sbindir}/udevd
286 # TODO: Below code should be removed after we go unified directory structure.
287 %if %{with unified_directory}
288 ln -s /lib/firmware %{buildroot}%{_libdir}/firmware
291 # We create all wants links manually at installation time to make sure
292 # they are not owned and hence overriden by rpm after the user deleted
294 rm -r %{buildroot}%{_sysconfdir}/systemd/system/*.target.wants
296 # Make sure these directories are properly owned
297 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/basic.target.wants
298 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/default.target.wants
299 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/dbus.target.wants
301 # Make sure the user generators dir exists too
302 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-generators
303 mkdir -p %{buildroot}%{_prefix}/lib/systemd/user-generators
305 # Create new-style configuration files so that we can ghost-own them
306 touch %{buildroot}%{_sysconfdir}/hostname
307 touch %{buildroot}%{_sysconfdir}/locale.conf
308 touch %{buildroot}%{_sysconfdir}/machine-info
309 touch %{buildroot}%{_sysconfdir}/localtime
310 mkdir -p %{buildroot}%{_sysconfdir}/X11/xorg.conf.d
311 touch %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/00-keyboard.conf
313 # Make sure the shutdown/sleep drop-in dirs exist
314 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-shutdown/
315 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-sleep/
317 # Make sure directories in /var exist
319 mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/coredump
321 mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/catalog
322 mkdir -p %{buildroot}%{_localstatedir}/log/journal
323 touch %{buildroot}%{_localstatedir}/lib/systemd/catalog/database
324 touch %{buildroot}%{_sysconfdir}/udev/hwdb.bin
326 # To avoid making life hard for Rawhide-using developers, don't package the
327 # kernel.core_pattern setting until systemd-coredump is a part of an actual
328 # systemd release and it's made clear how to get the core dumps out of the
330 rm -f %{buildroot}%{_prefix}/lib/sysctl.d/50-coredump.conf
332 rm -rf %{buildroot}%{_prefix}/lib/udev/hwdb.d/
334 # These rules doesn't make much sense on Tizen right now.
335 rm -f %{buildroot}%{_libdir}/udev/rules.d/42-usb-hid-pm.rules
336 rm -f %{buildroot}%{_libdir}/udev/rules.d/60-persistent-storage-tape.rules
337 rm -f %{buildroot}%{_libdir}/udev/rules.d/60-cdrom_id.rules
338 rm -f %{buildroot}%{_libdir}/udev/rules.d/60-keyboard.rules
339 rm -f %{buildroot}%{_libdir}/udev/rules.d/61-accelerometer.rules
340 rm -f %{buildroot}%{_libdir}/udev/rules.d/64-btrfs.rules
341 rm -f %{buildroot}%{_libdir}/udev/rules.d/70-power-switch.rules
342 rm -f %{buildroot}%{_libdir}/udev/rules.d/75-net-description.rules
343 rm -f %{buildroot}%{_libdir}/udev/rules.d/75-probe_mtd.rules
344 rm -f %{buildroot}%{_libdir}/udev/rules.d/75-tty-description.rules
345 rm -f %{buildroot}%{_libdir}/udev/rules.d/80-net-name-slot.rules
346 rm -f %{buildroot}%{_libdir}/udev/rules.d/95-keyboard-force-release.rules
347 rm -f %{buildroot}%{_libdir}/udev/rules.d/95-keymap.rules
349 # This will be done by tizen specific init script.
350 rm -f %{buildroot}%{_libdir}/systemd/system/local-fs.target.wants/systemd-fsck-root.service
352 # We will just use systemd just as system, user not yet. Until that that service will be disabled.
354 rm -f %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/systemd-logind.service
357 # Make sure default extra dependencies ignore unit directory exist
358 mkdir -p %{buildroot}%{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d
359 %if %{WITH_TIMEDATED}
360 install -m644 %{_builddir}/%{name}-%{version}/src/timedate/org.freedesktop.timedate1.service %{buildroot}%{_prefix}/share/dbus-1/system-services/
363 # Apply Tizen configs
365 %if "%{?tizen_profile_name}" == "mobile"
366 %{SOURCE1} %{SOURCE11} %{buildroot}%{_sysconfdir}/systemd/system.conf
367 %elseif "%{?tizen_profile_name}" == "wearable"
368 %{SOURCE1} %{SOURCE12} %{buildroot}%{_sysconfdir}/systemd/system.conf
370 %{SOURCE1} %{SOURCE13} %{buildroot}%{_sysconfdir}/systemd/journald.conf
371 %{SOURCE1} %{SOURCE14} %{buildroot}%{_sysconfdir}/systemd/bootchart.conf
373 # We do not need some of systemd native unit files. Even if those are
374 # not used, it can make slower unit loading time.
377 local-fs.target.wants/tmp.mount;
379 rm -f %{buildroot}%{_libdir}/systemd/system/$unit
382 # All of licenses should be manifested in /usr/share/license.
383 mkdir -p %{buildroot}%{_datadir}/license
384 cat LICENSE.LGPL2.1 > %{buildroot}%{_datadir}/license/systemd
385 cat LICENSE.LGPL2.1 > %{buildroot}%{_datadir}/license/systemd-libs
386 cat LICENSE.LGPL2.1 > %{buildroot}%{_datadir}/license/libgudev1
391 getent group cdrom >/dev/null 2>&1 || groupadd -r -g 11 cdrom >/dev/null 2>&1 || :
392 getent group tape >/dev/null 2>&1 || groupadd -r -g 33 tape >/dev/null 2>&1 || :
393 getent group dialout >/dev/null 2>&1 || groupadd -r -g 18 dialout >/dev/null 2>&1 || :
394 getent group floppy >/dev/null 2>&1 || groupadd -r -g 19 floppy >/dev/null 2>&1 || :
395 getent group systemd-journal >/dev/null 2>&1 || groupadd -r -g 190 systemd-journal 2>&1 || :
397 systemctl stop systemd-udevd-control.socket systemd-udevd-kernel.socket systemd-udevd.service >/dev/null 2>&1 || :
400 %if %{WITH_RANDOMSEED}
401 /usr/lib/systemd/systemd-random-seed save >/dev/null 2>&1 || :
403 systemctl daemon-reexec >/dev/null 2>&1 || :
404 systemctl start systemd-udevd.service >/dev/null 2>&1 || :
405 udevadm hwdb --update >/dev/null 2>&1 || :
406 journalctl --update-catalog >/dev/null 2>&1 || :
408 # Stop-gap until rsyslog.rpm does this on its own. (This is supposed
409 # to fail when the link already exists)
410 ln -s /usr/lib/systemd/system/rsyslog.service /etc/systemd/system/syslog.service >/dev/null 2>&1 || :
411 %if %{WITH_TIMEDATED}
412 ln -s ../system-services/org.freedesktop.timedate1.service %{_datadir}/dbus-1/services/org.freedesktop.timedate1.service
414 # Masked unnecessary units in tizen.
415 ln -s /dev/null /etc/systemd/system/systemd-tmpfiles-clean.timer
416 ln -s /dev/null /etc/systemd/system/systemd-remount-fs.service
417 ln -s /dev/null /etc/systemd/system/systemd-journal-flush.service
418 ln -s /dev/null /etc/systemd/system/systemd-update-utmp.service
419 ln -s /dev/null /etc/systemd/system/kmod-static-nodes.service
420 ln -s /dev/null /etc/systemd/system/systemd-fsck-root.service
422 # Tizen is not supporting /usr/lib/macros.d yet.
423 # To avoid this, the macro will be copied to origin macro dir.
424 if [ -f %{_libdir}/rpm/macros.d/macros.systemd ]; then
425 mkdir -p %{_sysconfdir}/rpm
426 cp %{_libdir}/rpm/macros.d/macros.systemd %{_sysconfdir}/rpm
430 if [ $1 -ge 1 ] ; then
431 systemctl daemon-reload > /dev/null 2>&1 || :
433 systemctl try-restart systemd-logind.service >/dev/null 2>&1 || :
437 %post libs -p /sbin/ldconfig
438 %postun libs -p /sbin/ldconfig
440 %post -n libgudev1 -p /sbin/ldconfig
441 %postun -n libgudev1 -p /sbin/ldconfig
444 # Make sure /etc/mtab is pointing /proc/self/mounts
445 ln -sf ../proc/self/mounts /etc/mtab
448 %defattr(-,root,root,-)
449 %{_datadir}/license/systemd
450 %dir %{_sysconfdir}/systemd
451 %dir %{_sysconfdir}/systemd/system
452 %dir %{_sysconfdir}/systemd/user
453 %dir %{_sysconfdir}/tmpfiles.d
454 %dir %{_sysconfdir}/sysctl.d
455 %dir %{_sysconfdir}/modules-load.d
456 %dir %{_sysconfdir}/udev
457 %dir %{_sysconfdir}/udev/rules.d
458 %dir %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d
459 %dir %{_prefix}/lib/systemd
460 %dir %{_prefix}/lib/systemd/system-generators
461 %dir %{_prefix}/lib/systemd/user-generators
462 %dir %{_prefix}/lib/systemd/system-shutdown
463 %dir %{_prefix}/lib/systemd/system-sleep
464 %dir %{_prefix}/lib/systemd/catalog
465 %dir %{_prefix}/lib/tmpfiles.d
466 %dir %{_prefix}/lib/sysctl.d
467 %dir %{_prefix}/lib/modules-load.d
468 # TODO: Below code should be removed after we go unified directory structure.
469 %if %{with unified_directory}
470 %{_prefix}/lib/firmware
471 %dir %{_datadir}/systemd
473 %dir %{_prefix}/lib/firmware
475 %dir %{_datadir}/systemd
476 %dir %{_datadir}/pkgconfig
477 %dir %{_localstatedir}/log/journal
478 %dir %{_localstatedir}/lib/systemd
479 %dir %{_localstatedir}/lib/systemd/catalog
481 %dir %{_localstatedir}/lib/systemd/coredump
483 %if %{WITH_TIMEDATED}
484 %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.timedate1.conf
486 %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf
488 %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.login1.conf
490 %config(noreplace) %{_sysconfdir}/systemd/system.conf
491 %config(noreplace) %{_sysconfdir}/systemd/user.conf
493 %config(noreplace) %{_sysconfdir}/systemd/logind.conf
495 %config(noreplace) %{_sysconfdir}/systemd/journald.conf
496 %config(noreplace) %{_sysconfdir}/systemd/bootchart.conf
497 %config(noreplace) %{_sysconfdir}/udev/udev.conf
498 %ghost %{_sysconfdir}/udev/hwdb.bin
499 %{_libdir}/rpm/macros.d/macros.systemd
501 %config(noreplace) %{_sysconfdir}/pam.d/systemd-user
503 %{_sysconfdir}/xdg/systemd
504 %ghost %config(noreplace) %{_sysconfdir}/hostname
505 %ghost %config(noreplace) %{_sysconfdir}/localtime
506 %ghost %config(noreplace) %{_sysconfdir}/locale.conf
507 %ghost %config(noreplace) %{_sysconfdir}/machine-info
508 %ghost %config(noreplace) %{_sysconfdir}/X11/xorg.conf.d/00-keyboard.conf
509 %ghost %{_localstatedir}/lib/systemd/catalog/database
512 %{_bindir}/systemd-run
513 %{_bindir}/systemd-notify
514 %{_bindir}/systemd-analyze
515 %{_bindir}/systemd-ask-password
516 %{_bindir}/systemd-tty-ask-password-agent
517 %{_bindir}/systemd-machine-id-setup
522 %if %{WITH_TIMEDATED}
523 %{_bindir}/timedatectl
525 %{_bindir}/journalctl
526 %{_bindir}/systemd-tmpfiles
527 %{_bindir}/systemd-nspawn
528 %{_bindir}/systemd-stdio-bridge
529 %{_bindir}/systemd-cat
530 %{_bindir}/systemd-cgls
531 %{_bindir}/systemd-cgtop
532 %{_bindir}/systemd-delta
534 %{_bindir}/systemd-inhibit
537 %{_bindir}/systemd-coredumpctl
539 %{_bindir}/systemd-escape
540 %if %{WITH_FIRSTBOOT}
541 %{_bindir}/systemd-firstboot
543 %{_bindir}/systemd-path
544 %{_bindir}/systemd-sysusers
546 %{_prefix}/lib/systemd/systemd
547 %{_prefix}/lib/systemd/system
548 %{_prefix}/lib/systemd/user
549 %{_prefix}/lib/systemd/systemd-*
551 %{_prefix}/lib/systemd/system-generators/systemd-debug-generator
552 %{_prefix}/lib/systemd/system-generators/systemd-fstab-generator
553 %{_prefix}/lib/systemd/system-generators/systemd-getty-generator
555 %exclude %{_prefix}/lib/systemd/system-generators/systemd-dbus1-generator
556 %exclude %{_prefix}/lib/systemd/user-generators/systemd-dbus1-generator
558 %exclude %{_prefix}/lib/systemd/system-generators/systemd-system-update-generator
559 %exclude %{_prefix}/lib/systemd/system-generators/systemd-gpt-auto-generator
560 %{_prefix}/lib/tmpfiles.d/systemd.conf
561 %{_prefix}/lib/tmpfiles.d/systemd-nologin.conf
562 %{_prefix}/lib/tmpfiles.d/systemd-remote.conf
563 %{_prefix}/lib/tmpfiles.d/etc.conf
564 %{_prefix}/lib/tmpfiles.d/tmp.conf
565 %{_prefix}/lib/tmpfiles.d/var.conf
566 %{_prefix}/lib/tmpfiles.d/x11.conf
567 %{_prefix}/lib/sysctl.d/50-default.conf
568 %{_prefix}/lib/systemd/catalog/systemd.catalog
569 %{_prefix}/lib/systemd/catalog/systemd.fr.catalog
570 %{_prefix}/lib/systemd/catalog/systemd.it.catalog
571 %{_prefix}/lib/systemd/catalog/systemd.ru.catalog
572 %{_prefix}/lib/systemd/network/80-container-host0.network
573 %{_prefix}/lib/systemd/network/80-container-ve.network
574 %{_prefix}/lib/systemd/network/99-default.link
575 %{_prefix}/lib/systemd/system-preset/90-systemd.preset
576 %{_prefix}/lib/sysusers.d/basic.conf
577 %{_prefix}/lib/sysusers.d/systemd-remote.conf
578 %{_prefix}/lib/sysusers.d/systemd.conf
579 %exclude %{_prefix}/lib/systemd/system/systemd-bootchart.service
582 # TODO: Below code should be removed after we go unified directory structure.
583 %if %{with unified_directory}
594 %{_datadir}/dbus-1/services/org.freedesktop.systemd1.service
595 %if %{WITH_TIMEDATED}
596 %{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service
598 %{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service
600 %{_datadir}/dbus-1/system-services/org.freedesktop.login1.service
602 %if %{WITH_TIMEDATED}
603 %{_datadir}/dbus-1/interfaces/org.freedesktop.timedate1.xml
605 %{_datadir}/pkgconfig/systemd.pc
606 %{_datadir}/pkgconfig/udev.pc
607 %if %{WITH_BASH_COMPLETION}
608 %{_datadir}/bash-completion/completions/busctl
609 %{_datadir}/bash-completion/completions/journalctl
610 %{_datadir}/bash-completion/completions/kernel-install
612 %{_datadir}/bash-completion/completions/loginctl
614 %{_datadir}/bash-completion/completions/systemctl
615 %{_datadir}/bash-completion/completions/systemd-analyze
616 %{_datadir}/bash-completion/completions/systemd-cat
617 %{_datadir}/bash-completion/completions/systemd-cgls
618 %{_datadir}/bash-completion/completions/systemd-cgtop
620 %{_datadir}/bash-completion/completions/systemd-coredumpctl
622 %{_datadir}/bash-completion/completions/systemd-delta
623 %{_datadir}/bash-completion/completions/systemd-detect-virt
624 %{_datadir}/bash-completion/completions/systemd-nspawn
625 %{_datadir}/bash-completion/completions/systemd-run
626 %if %{WITH_TIMEDATED}
627 %{_datadir}/bash-completion/completions/timedatectl
629 %{_datadir}/bash-completion/completions/udevadm
631 %exclude %{_datadir}/factory/etc/nsswitch.conf
632 %{_datadir}/factory/etc/pam.d/other
633 %{_datadir}/factory/etc/pam.d/system-auth
634 %manifest systemd.manifest
637 %defattr(-,root,root,-)
638 %{_datadir}/license/systemd-libs
640 %{_libdir}/security/pam_systemd.so
642 %{_libdir}/libsystemd.so.*
643 %if %{WITH_COMPAT_LIBS}
644 %{_libdir}/libsystemd-daemon.so.*
645 %{_libdir}/libsystemd-journal.so.*
646 %{_libdir}/libsystemd-id128.so.*
647 %{_libdir}/libsystemd-login.so.*
649 %{_libdir}/libudev.so.*
650 %manifest systemd.manifest
653 %defattr(-,root,root,-)
654 %dir %{_includedir}/systemd
655 %{_libdir}/libsystemd.so
656 %if %{WITH_COMPAT_LIBS}
657 %{_libdir}/libsystemd-daemon.so
658 %{_libdir}/libsystemd-journal.so
659 %{_libdir}/libsystemd-id128.so
660 %{_libdir}/libsystemd-login.so
662 %{_libdir}/libudev.so
663 %{_includedir}/systemd/_sd-common.h
664 %{_includedir}/systemd/sd-daemon.h
665 %{_includedir}/systemd/sd-login.h
666 %{_includedir}/systemd/sd-journal.h
667 %{_includedir}/systemd/sd-id128.h
668 %{_includedir}/systemd/sd-messages.h
669 %{_includedir}/libudev.h
671 %{_includedir}/systemd/sd-bus-protocol.h
672 %{_includedir}/systemd/sd-bus-vtable.h
673 %{_includedir}/systemd/sd-bus.h
674 %{_includedir}/systemd/sd-event.h
675 %{_includedir}/systemd/sd-memfd.h
676 %{_includedir}/systemd/sd-path.h
677 %{_includedir}/systemd/sd-resolve.h
678 %{_includedir}/systemd/sd-rtnl.h
679 %{_includedir}/systemd/sd-utf8.h
681 %{_libdir}/pkgconfig/libsystemd.pc
682 %if %{WITH_COMPAT_LIBS}
683 %{_libdir}/pkgconfig/libsystemd-daemon.pc
684 %{_libdir}/pkgconfig/libsystemd-journal.pc
685 %{_libdir}/pkgconfig/libsystemd-id128.pc
686 %{_libdir}/pkgconfig/libsystemd-login.pc
688 %{_libdir}/pkgconfig/libudev.pc
689 %manifest systemd.manifest
692 %defattr(-,root,root,-)
693 %{_datadir}/license/libgudev1
694 %{_libdir}/libgudev-1.0.so.*
695 %manifest systemd.manifest
697 %files -n libgudev1-devel
698 %defattr(-,root,root,-)
699 %{_libdir}/libgudev-1.0.so
700 %dir %{_includedir}/gudev-1.0
701 %dir %{_includedir}/gudev-1.0/gudev
702 %{_includedir}/gudev-1.0/gudev/*.h
703 %{_libdir}/pkgconfig/gudev-1.0*
704 %manifest systemd.manifest