Work around systemd & elogind related build problems
authorDaniel Abrecht <public@danielabrecht.ch>
Fri, 11 Dec 2020 20:17:07 +0000 (21:17 +0100)
committerDaniel Abrecht <public@danielabrecht.ch>
Fri, 11 Dec 2020 20:17:07 +0000 (21:17 +0100)
Some packages have systemd dependencies which require an unnecessarely high systemd version for building them, version requirements for systemd are now removed.
Some packages can detect & use elogind, and modt programs don't need libsystemd-dev if libelogind-dev is available. Add libelogind-dev as alternative dependency.
Some packages do not detect libelogind & it's headers when deciding if elogind support should be enabled, but detect elogind instead. Let's make sure it's installed in the devuan build environment.

chroot-build-helper/real-makefile
config/devuan/config

index 182b04d98ddba69b78eef85ba3e93af578d40661..ed9f6a3cbebdfbbf6d2182c64c6626109a5bc290 100644 (file)
@@ -58,8 +58,8 @@ build-env/$(DISTRO)/$(RELEASE)/rootfs: build-env/.dir build-env/$(DISTRO)/$(RELE
        uexec --allow-setgroups chroot_qemu_static.sh "$(CURDIR)/$@.tmp" apt-get update
        uexec --allow-setgroups chroot_qemu_static.sh "$(CURDIR)/$@.tmp" sh -c "dpkg -i /root/dummy-debs/*.deb" || true
        if [ -n "$(BUILD_DEP_RELEASE)" ]; \
-         then uexec --allow-setgroups chroot_qemu_static.sh "$(CURDIR)/$@.tmp" apt-get -y -t "$(BUILD_DEP_RELEASE)" install --no-install-recommends build-essential dh-make debhelper devscripts meson wget gnupg2 gawk; \
-         else uexec --allow-setgroups chroot_qemu_static.sh "$(CURDIR)/$@.tmp" apt-get -y install --no-install-recommends build-essential dh-make debhelper devscripts meson wget gnupg2 gawk; \
+         then uexec --allow-setgroups chroot_qemu_static.sh "$(CURDIR)/$@.tmp" apt-get -y -t "$(BUILD_DEP_RELEASE)" install --no-install-recommends build-essential dh-make debhelper devscripts meson wget gnupg2 gawk $(EXTRA_BUILD_TOOLS); \
+         else uexec --allow-setgroups chroot_qemu_static.sh "$(CURDIR)/$@.tmp" apt-get -y install --no-install-recommends build-essential dh-make debhelper devscripts meson wget gnupg2 gawk $(EXTRA_BUILD_TOOLS); \
        fi
        printf "\ndeb [trusted=yes] file:///root/devrepo/ ./\n" >>"$@.tmp/etc/apt/sources.list"
        uexec rm -rf "$(CURDIR)/$@"
@@ -103,7 +103,7 @@ bin/$(DISTRO)/$(RELEASE)/%/.build: build-env/$(DISTRO)/$(RELEASE)/rootfs/root/%/
          then echo 'Not building package, this version is already in the repo, and DONT_BUILD_IF_IN_REPO is set to yes'; \
          else \
            dch -b -v \"\$$version\" \"Version suffix automatically added my librem5-image-builder\"; \
-           sed -i 's/libsystemd-dev[^,]*/\0 | libelogind-dev/g' debian/control; \
+           sed -i 's/\(libsystemd-dev\)[^,]*/\1 | libelogind-dev/g' debian/control; \
            apt-get -y build-dep .; \
            if [ \"$(DO_BUILD_SOURCE_PACKAGES)\" = yes ]; \
              then debuild -us -uc; \
index f5f5fd3e109f4dde778bb7891d6c2d3431aa44ea..728177eb2de25c15513f837ebb27b2bad42f6373 100644 (file)
@@ -1,2 +1,6 @@
 RELEASE = beowulf
 REPO = http://pkgmaster.devuan.org/merged/
+
+# Some packages enable elogind support based on the presence
+# of elogind rather than libelogind, which doesn't pull in elogind
+EXTRA_BUILD_TOOLS = elogind