Hide Forgot
Description of problem: While building a locally patched version of systemd I noticed that new package builds drop the liblz4 dependency. $ fedpkg mockbuild --no-cleanup-after --root /etc/mock/fedora-25-x86_64.cfg $ rpm -qRp /path/to/systemd-231-10.fc25.local.1.x86_64.rpm | grep -i lz4 $ rpm -qRp https://kojipkgs.fedoraproject.org//packages/systemd/231/10.fc25/x86_64/systemd-231-10.fc25.x86_64.rpm | grep -i lz4 liblz4.so.1()(64bit) From /var/lib/mock/fedora-25-x86_64/root/builddir/build/BUILD/systemd-231/config.log: configure:18568: checking for LZ4 configure:18575: $PKG_CONFIG --exists --print-errors " liblz4 >= 125 " Requested 'liblz4 >= 125' but version of lz4 is 1.7.3 You may find new versions of lz4 at http://www.lz4.org/ configure:18578: $? = 1 configure:18592: $PKG_CONFIG --exists --print-errors " liblz4 >= 125 " Requested 'liblz4 >= 125' but version of lz4 is 1.7.3 You may find new versions of lz4 at http://www.lz4.org/ configure:18595: $? = 1 configure:18609: result: no Requested 'liblz4 >= 125' but version of lz4 is 1.7.3 The cause is lz4 renumbering from r131 to 1.7.x, and these new packages have been pushed as F24/F25/EL7 updates. Cherry-picking https://github.com/systemd/systemd/commit/3d4cf7de48a74726694abbaa09f9804b845ff3ba (which is not in v231 or v232) fixes this. This is not a problem in systemd-231-10.fc25 itself but will crop up in any new builds that you make. Version-Release number of selected component (if applicable): systemd-231-10.fc25 lz4-1.7.3-1.fc25
I discussed this with ignatenkobrain (who built that last lz4), and I'm going to backport the patch before the next build of systemd.
systemd-231-11.fc25.x86_64 was build without LZ4 support creating a lot of "Journal file ... uses an unsupported feature, ignoring file." https://kojipkgs.fedoraproject.org//packages/systemd/231/11.fc25/data/logs/x86_64/build.log ... checking for LZ4... no ... $ systemctl --version systemd 231 +PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN
*** Bug 1413413 has been marked as a duplicate of this bug. ***
@zbyszek Any idea, if the error message could be improved to actually say what feature is missing? In its current state, the message is pretty much useless.
*** Bug 1413388 has been marked as a duplicate of this bug. ***
systemd-231-12.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-4e5bd2cfb9
systemd-231-12.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-4e5bd2cfb9
(In reply to Jan Synacek from comment #4) > @zbyszek Any idea, if the error message could be improved to actually say > what feature is missing? In its current state, the message is pretty much > useless. It just compares versions. I don't think there's much to add to that.
(In reply to Zbigniew Jędrzejewski-Szmek from comment #8) > (In reply to Jan Synacek from comment #4144) > > @zbyszek Any idea, if the error message could be improved to actually say > > what feature is missing? In its current state, the message is pretty much > > useless. > > It just compares versions. I don't think there's much to add to that. How about the name of the feature flag it's incompat with?
The detection is done by a set of m4 macros. One *could* make them better, but I don't think we should do that. Why? The part to detect lz4 and print a message if it is missing is already ~10 lines in configure.ac. If this was made to detect a proper error message, it'd likely be a few times that. Now consider that we have maybe 40 other libraries. If they were all detected in the same way, we could write one fancy function. But they are not, we'd need to write lots of macros. The only option that'd scale would be for the configuration system (i.e. autotools and pkg-config in this case) to provide better routines. This is not going to happen. We should just consider switching to something better, when something better exists. Meson certainly has a lot of potential, let's see how it develops.
I think comment #4 was referring to the message ("...uses an unsupported feature") that systemd emits at runtime. On the subject of missing features at build time, you would need something like functionality tests outside the build system (so that they don't get configured out when the dependency is not met.)
(In reply to Oliver Henshaw from comment #11) > I think comment #4 was referring to the message ("...uses an unsupported > feature") that systemd emits at runtime. Ah, OK. I guess we could do that. > On the subject of missing features at build time, you would need something > like functionality tests outside the build system (so that they don't get > configured out when the dependency is not met.) http://pkgs.fedoraproject.org/cgit/rpms/systemd.git/commit/?id=25bd358ef1484b59ede5ea247febc0dabf01e821
systemd-231-12.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.
(In reply to Kinston Hughes from comment #9) > (In reply to Zbigniew Jędrzejewski-Szmek from comment #8149) > > (In reply to Jan Synacek from comment #4144150) > > > @zbyszek Any idea, if the error message could be improved to actually say > > > what feature is missing? In its current state, the message is pretty much > > > useless. > > > > It just compares versions. I don't think there's much to add to that. > > How about the name of the feature flag it's incompat with? (In reply to Zbigniew Jędrzejewski-Szmek from comment #12) > (In reply to Oliver Henshaw from comment #11164) > > I think comment #4165 was referring to the message ("...uses an unsupported > > feature") that systemd emits at runtime. > Ah, OK. I guess we could do that. Good, I've opened 1416201 for that.
Can this change also be made available in Fedora 24. I cannot read my journal files in Fedora 24: journal uses an unsupported feature, ignoring file.
Also breaks on Fedora 24.
Backported to f24 http://pkgs.fedoraproject.org/cgit/rpms/systemd.git/commit/?h=f24