mirror of
https://git.proxmox.com/git/systemd
synced 2026-01-13 07:05:23 +00:00
The readahead functionality was removed in v217. Remove leftover bits
from ca3e157bc2 which was installing the
man pages as example files.
257 lines
8.9 KiB
Makefile
Executable File
257 lines
8.9 KiB
Makefile
Executable File
#! /usr/bin/make -f
|
|
|
|
#export DH_VERBOSE=1
|
|
#export DEB_BUILD_OPTIONS="nostrip"
|
|
|
|
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
|
|
VERSION = $(shell dpkg-parsechangelog | sed -n -e '/^Version:/s/.*: //p')
|
|
|
|
ifneq (,$(findstring stage1,$(DEB_BUILD_PROFILES)))
|
|
BOOTSTRAP_DH_FLAGS := -Ngir1.2-gudev-1.0 -Nlibgudev-1.0-0 -Nlibgudev-1.0-dev
|
|
endif
|
|
|
|
CONFFLAGS = \
|
|
--with-rootprefix= \
|
|
--with-rootlibdir=/lib/$(DEB_HOST_MULTIARCH) \
|
|
--with-zshcompletiondir=/usr/share/zsh/vendor-completions \
|
|
--with-sysvinit-path=/etc/init.d \
|
|
--with-sysvrcnd-path=/etc \
|
|
--with-firmware-path=/lib/firmware \
|
|
--with-debug-shell=/bin/bash \
|
|
--with-telinit=/lib/sysvinit/telinit \
|
|
--enable-split-usr \
|
|
--disable-coredump \
|
|
--disable-myhostname \
|
|
--disable-vconsole \
|
|
--disable-microhttpd \
|
|
--disable-sysusers \
|
|
--disable-firstboot \
|
|
--disable-silent-rules \
|
|
--with-ntp-servers="0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org" \
|
|
--with-system-uid-max=999 \
|
|
--with-system-gid-max=999
|
|
|
|
ifeq (,$(findstring stage1,$(DEB_BUILD_PROFILES)))
|
|
CONFFLAGS += --enable-libcryptsetup
|
|
endif
|
|
|
|
CONFFLAGS_deb = \
|
|
--enable-selinux \
|
|
--enable-introspection \
|
|
--enable-gtk-doc \
|
|
--enable-compat-libs \
|
|
PYTHON=python3 \
|
|
$(NULL)
|
|
|
|
CONFFLAGS_udeb = \
|
|
--disable-libcryptsetup \
|
|
--disable-pam \
|
|
--disable-audit \
|
|
--disable-selinux \
|
|
--disable-smack \
|
|
--disable-ima \
|
|
--disable-introspection \
|
|
--disable-gtk-doc \
|
|
--disable-binfmt \
|
|
--disable-bootchart \
|
|
--disable-quotacheck \
|
|
--disable-tmpfiles \
|
|
--disable-randomseed \
|
|
--disable-backlight \
|
|
--disable-logind \
|
|
--disable-machined \
|
|
--disable-hostnamed \
|
|
--disable-timedated \
|
|
--disable-networkd \
|
|
--disable-timesyncd \
|
|
--disable-localed \
|
|
--disable-resolved \
|
|
--disable-polkit \
|
|
--disable-acl \
|
|
--disable-gcrypt \
|
|
--disable-gudev \
|
|
--disable-rfkill \
|
|
--disable-multi-seat-x \
|
|
--disable-manpages \
|
|
--without-python
|
|
|
|
override_dh_auto_configure:
|
|
dh_auto_configure --builddirectory=build-deb \
|
|
-- $(CONFFLAGS) $(CONFFLAGS_deb)
|
|
dh_auto_configure --builddirectory=build-udeb \
|
|
-- $(CONFFLAGS) $(CONFFLAGS_udeb)
|
|
|
|
override_dh_auto_build:
|
|
dh_auto_build --builddirectory=build-deb
|
|
dh_auto_build --builddirectory=build-udeb
|
|
|
|
override_dh_auto_install:
|
|
dh_auto_install --builddirectory=build-deb \
|
|
--destdir=debian/install/deb
|
|
dh_auto_install --builddirectory=build-udeb \
|
|
--destdir=debian/install/udeb
|
|
|
|
override_dh_auto_clean:
|
|
dh_auto_clean --builddirectory=build-deb
|
|
dh_auto_clean --builddirectory=build-udeb
|
|
rm -rf debian/install/
|
|
# remove pre-generated man pages so they are rebuilt
|
|
rm -f man/*.[13578]
|
|
# remove pre-generated rules and unit files so they are rebuilt
|
|
rm -f rules/99-systemd.rules \
|
|
units/emergency.service \
|
|
units/systemd-udevd.service \
|
|
units/systemd-udev-settle.service \
|
|
units/systemd-udev-trigger.service
|
|
# remove Python byte code files
|
|
rm -f *.pyc
|
|
|
|
override_dh_install:
|
|
# remove unnecessary / unused files
|
|
rm -f debian/install/*/usr/share/doc/systemd/LICENSE.*
|
|
rm -f debian/install/*/var/log/README
|
|
rm -f debian/install/*/etc/init.d/README
|
|
rm -f debian/install/*/usr/share/man/man8/kernel-install.8
|
|
rm -f debian/install/*/usr/bin/kernel-install
|
|
rm -f debian/install/*/usr/share/zsh/vendor-completions/_kernel-install
|
|
rm -f debian/install/*/usr/share/bash-completion/completions/kernel-install
|
|
rm -rf debian/install/*/usr/lib/kernel/install.d
|
|
rm -rf debian/install/*/etc/rpm/
|
|
rm -rf debian/install/*/usr/lib/rpm/
|
|
rm -rf debian/install/*/etc/kernel/
|
|
rm -f debian/install/*/usr/lib/sysctl.d/50-default.conf
|
|
find debian/install/ -name '*.la' -delete
|
|
# --disable-firstboot does not catch this
|
|
rm -f debian/install/*/usr/share/man/man*/*firstboot*
|
|
# remove files related to factory-reset feature
|
|
find debian/install/ \( -name 'systemd-update-done*' -o \
|
|
-name systemd-journal-catalog-update.service -o \
|
|
-name systemd-udev-hwdb-update.service -o \
|
|
-name ldconfig.service -o \
|
|
-name etc.conf \) -delete
|
|
rm -rf debian/install/*/usr/share/factory/
|
|
# remove .so for deprecated compatibility libraries
|
|
rm -f debian/install/*/usr/lib/*/libsystemd-daemon.so
|
|
rm -f debian/install/*/usr/lib/*/libsystemd-login.so
|
|
rm -f debian/install/*/usr/lib/*/libsystemd-id128.so
|
|
rm -f debian/install/*/usr/lib/*/libsystemd-journal.so
|
|
# remove symlinks enabling default-on services
|
|
rm -rf debian/install/*/etc/systemd/system/*.target.wants/
|
|
dh_install -pudev-udeb -plibudev1-udeb --sourcedir=debian/install/udeb
|
|
# we disable machined for now, so don't ship nss-mymachines either
|
|
rm -f debian/install/*/usr/lib/*/libnss_mymachines*
|
|
# still needs to mature a bit, and packaging
|
|
rm -f debian/install/*/usr/lib/*/libnss_resolve*
|
|
|
|
dh_install $(BOOTSTRAP_DH_FLAGS) -Nudev-udeb -Nlibudev1-udeb --sourcedir=debian/install/deb --fail-missing
|
|
|
|
# Make sure the runlevel services are known by systemd so their targets
|
|
# get launches. See https://bugzilla.redhat.com/show_bug.cgi?id=1002806
|
|
for t in poweroff rescue multi-user graphical reboot; do \
|
|
mkdir -p debian/systemd/lib/systemd/system/$${t}.target.wants;\
|
|
ln -s ../systemd-update-utmp-runlevel.service \
|
|
debian/systemd/lib/systemd/system/$${t}.target.wants ;\
|
|
done
|
|
|
|
# remove duplicates
|
|
# files shipped by systemd-sysv / sysvinit
|
|
rm debian/systemd/usr/share/man/man1/init.1
|
|
rm debian/systemd/usr/share/man/man8/halt.8
|
|
rm debian/systemd/usr/share/man/man8/poweroff.8
|
|
rm debian/systemd/usr/share/man/man8/reboot.8
|
|
rm debian/systemd/usr/share/man/man8/shutdown.8
|
|
rm debian/systemd/usr/share/man/man8/telinit.8
|
|
rm debian/systemd/usr/share/man/man8/runlevel.8
|
|
# files shipped by libpam-systemd
|
|
rm debian/systemd/usr/share/man/man8/pam_systemd.8
|
|
# files shipped by udev
|
|
rm -r debian/systemd/etc/udev/
|
|
rm debian/systemd/lib/systemd/system/systemd-udev*
|
|
rm debian/systemd/lib/systemd/system/*.target.wants/systemd-udev*
|
|
rm debian/systemd/lib/systemd/systemd-udevd
|
|
rm debian/systemd/usr/share/man/man7/udev.7
|
|
rm debian/systemd/usr/share/man/man8/*udev*.8
|
|
# files shipped by udev / bash-completion
|
|
rm debian/systemd/usr/share/bash-completion/completions/udevadm
|
|
# files systemd by cryptsetup
|
|
ifeq (,$(findstring stage1,$(DEB_BUILD_PROFILES)))
|
|
rm debian/systemd/usr/share/man/man5/crypttab.5
|
|
endif
|
|
# files shipped by systemd
|
|
rm debian/udev/lib/udev/rules.d/70-uaccess.rules
|
|
rm debian/udev/lib/udev/rules.d/73-seat-late.rules
|
|
rm debian/udev/lib/udev/rules.d/71-seat.rules
|
|
rm debian/udev/lib/udev/rules.d/99-systemd.rules
|
|
|
|
# Ubuntu specific files
|
|
if dpkg-vendor --is ubuntu; then \
|
|
install -D --mode=644 debian/extra/udev.py debian/udev/usr/share/apport/package-hooks/udev.py; \
|
|
install -D --mode=644 debian/extra/systemd.py debian/systemd/usr/share/apport/package-hooks/systemd.py; \
|
|
install --mode=644 debian/extra/systemd-vconsole-setup.service debian/systemd/lib/systemd/system/; \
|
|
install --mode=644 debian/extra/rules-ubuntu/*.rules debian/udev/lib/udev/rules.d/; \
|
|
rm debian/udev/lib/udev/*.agent; \
|
|
fi
|
|
|
|
# use symlinked doc directories on Debian as the old udev package did
|
|
override_dh_installdocs:
|
|
if ! dpkg-vendor --is ubuntu; then \
|
|
dh_installdocs -pudev -plibudev-dev --link-doc=libudev1; \
|
|
dh_installdocs -pgir1.2-gudev-1.0 -plibgudev-1.0-dev --link-doc=libgudev-1.0-0; \
|
|
fi
|
|
dh_installdocs --remaining-packages
|
|
|
|
override_dh_installinit:
|
|
dh_installinit --no-start
|
|
dh_installinit --name=udev-finish --no-start
|
|
# the following are only upstart jobs
|
|
dh_installinit --name=udevtrigger --noscripts
|
|
dh_installinit --name=udevmonitor --noscripts
|
|
dh_installinit --name=udev-fallback-graphics --noscripts
|
|
|
|
# The SysV compat tools (which are symlinks to systemctl) are
|
|
# quasi-essential, so add its dependencies to Pre-Depends
|
|
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=753589
|
|
override_dh_shlibdeps:
|
|
dh_shlibdeps -psystemd -- -dPre-Depends -edebian/systemd/bin/systemctl -dDepends
|
|
dh_shlibdeps --remaining-packages
|
|
|
|
override_dh_makeshlibs:
|
|
dh_makeshlibs -plibudev1 --add-udeb=libudev1-udeb -- -c4
|
|
dh_makeshlibs --remaining-packages -- -c4
|
|
|
|
autoreconf:
|
|
gtkdocize --copy --docdir docs/
|
|
intltoolize -f -c
|
|
autoreconf -f -i
|
|
|
|
override_dh_autoreconf:
|
|
dh_autoreconf debian/rules -- autoreconf
|
|
|
|
override_dh_strip:
|
|
dh_strip --dbg-package=systemd-dbg
|
|
|
|
override_dh_auto_test:
|
|
ifeq (, $(findstring nocheck, $(DEB_BUILD_OPTIONS)))
|
|
# some tests hang under fakeroot, so disable fakeroot
|
|
echo "01234567890123456789012345678901" > build-deb/machine-id
|
|
env -u LD_PRELOAD SYSTEMD_MACHINE_ID_PATH=$(CURDIR)/build-deb/machine-id \
|
|
make -C build-deb check || ( \
|
|
cd build-deb; \
|
|
for f in test-*.log; do echo "==== $$f ===="; cat $$f; done; \
|
|
exit 1; ) # replace with 1 to make failures fatal
|
|
endif
|
|
|
|
%:
|
|
ifeq (,$(findstring stage1,$(DEB_BUILD_PROFILES)))
|
|
dh $@ --with autoreconf,gir,python3 --parallel
|
|
else
|
|
dh $@ --with autoreconf,python3 $(BOOTSTRAP_DH_FLAGS)
|
|
endif
|
|
|
|
override_dh_gencontrol:
|
|
# Ubuntu has an epoch on gudev
|
|
if dpkg-vendor --is ubuntu; then \
|
|
dh_gencontrol -plibgudev-1.0-0 -plibgudev-1.0-dev -pgir1.2-gudev-1.0 -- "-v1:$(VERSION)"; \
|
|
fi
|
|
dh_gencontrol --remaining-packages
|