66726acfae
sysklogd was failing to build because it didn't know the size of the
`union wait` type.
Running `git bisect` showed 9744c7768d
,
which bumped glibc from 2.23 to 2.24, as the likely suspect. This is
corroborated by evidence such as this email:
https://lists.debian.org/debian-glibc/2016/08/msg00069.html
Linux from scratch recommends changing `union wait` to `int`:
http://www.linuxfromscratch.org/lfs/view/development/chapter06/sysklogd.html
Therefore, that's what this commit does.
29 lines
724 B
Nix
29 lines
724 B
Nix
{stdenv, fetchurl}:
|
|
|
|
stdenv.mkDerivation {
|
|
name = "sysklogd-1.5.1";
|
|
|
|
src = fetchurl {
|
|
url = http://www.infodrom.org/projects/sysklogd/download/sysklogd-1.5.1.tar.gz;
|
|
sha256 = "00f2wy6f0qng7qzga4iicyzl9j8b7mp6mrpfky5jxj93ms2w2rji";
|
|
};
|
|
|
|
patches = [ ./systemd.patch ./union-wait.patch ];
|
|
|
|
NIX_CFLAGS_COMPILE = "-DSYSV";
|
|
|
|
installFlags = "BINDIR=$(out)/sbin MANDIR=$(out)/share/man INSTALL=install";
|
|
|
|
preConfigure =
|
|
''
|
|
sed -e 's@-o \''${MAN_USER} -g \''${MAN_GROUP} -m \''${MAN_PERMS} @@' -i Makefile
|
|
'';
|
|
|
|
preInstall = "mkdir -p $out/share/man/man5/ $out/share/man/man8/ $out/sbin";
|
|
|
|
meta = {
|
|
description = "A system logging daemon";
|
|
platforms = stdenv.lib.platforms.linux;
|
|
};
|
|
}
|