nixpkgs/pkgs/os-specific/linux/sysklogd/default.nix
Philip Potter 66726acfae sysklogd: fix compile error (#18133)
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.
2016-08-31 00:05:07 +02:00

28 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;
};
}