dnsmasq: Fix build

This commit is contained in:
William A. Kennington III 2015-06-19 00:54:41 -07:00
parent be9a0a8943
commit 6f4fbcc981

View File

@ -1,5 +1,15 @@
{ pkgconfig, dbus_libs, nettle, stdenv, fetchurl }: { stdenv, fetchurl, pkgconfig, dbus_libs, nettle, libidn, libnetfilter_conntrack }:
with stdenv.lib;
let
copts = concatStringsSep " " ([
"-DHAVE_DBUS"
"-DHAVE_IDN"
"-DHAVE_DNSSEC"
] ++ optionals stdenv.isLinux [
"-DHAVE_CONNTRACK"
]);
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "dnsmasq-2.73"; name = "dnsmasq-2.73";
@ -8,13 +18,16 @@ stdenv.mkDerivation rec {
sha256 = "1xnqfaw2l78f4zw4z9sgr9nl9yc233gxc3sd7hxapz2k7q883zqb"; sha256 = "1xnqfaw2l78f4zw4z9sgr9nl9yc233gxc3sd7hxapz2k7q883zqb";
}; };
# Can't rely on make flags because of space in one of the parameters preBuild = ''
buildPhase = '' makeFlagsArray=("COPTS=${copts}")
make COPTS="-DHAVE_DNSSEC -DHAVE_DBUS"
''; '';
# make flags used for installation only makeFlags = [
makeFlags = "DESTDIR= BINDIR=$(out)/bin MANDIR=$(out)/man LOCALEDIR=$(out)/share/locale"; "DESTDIR="
"BINDIR=$(out)/bin"
"MANDIR=$(out)/man"
"LOCALEDIR=$(out)/share/locale"
];
postInstall = '' postInstall = ''
install -Dm644 dbus/dnsmasq.conf $out/etc/dbus-1/system.d/dnsmasq.conf install -Dm644 dbus/dnsmasq.conf $out/etc/dbus-1/system.d/dnsmasq.conf
@ -24,15 +37,17 @@ stdenv.mkDerivation rec {
cat <<END > $out/share/dbus-1/system-services/uk.org.thekelleys.dnsmasq.service cat <<END > $out/share/dbus-1/system-services/uk.org.thekelleys.dnsmasq.service
[D-BUS Service] [D-BUS Service]
Name=uk.org.thekelleys.dnsmasq Name=uk.org.thekelleys.dnsmasq
Exec=$out/sbin/dnsmasq -k -1 Exec=$out/bin/dnsmasq -k -1
User=root User=root
SystemdService=dnsmasq.service SystemdService=dnsmasq.service
END END
''; '';
buildInputs = [ pkgconfig dbus_libs nettle ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ dbus_libs nettle libidn ]
++ optional stdenv.isLinux libnetfilter_conntrack;
meta = with stdenv.lib; { meta = {
description = "An integrated DNS, DHCP and TFTP server for small networks"; description = "An integrated DNS, DHCP and TFTP server for small networks";
homepage = http://www.thekelleys.org.uk/dnsmasq/doc.html; homepage = http://www.thekelleys.org.uk/dnsmasq/doc.html;
license = licenses.gpl2; license = licenses.gpl2;