gnu: Add ldns.
* gnu/packages/dns.scm (ldns): New variable. * gnu/packages/patches/ldns-drill-examples.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>master
parent
14528483fb
commit
6a7256fc80
|
@ -1199,6 +1199,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/lcms-CVE-2018-16435.patch \
|
||||
%D%/packages/patches/ldc-bootstrap-disable-tests.patch \
|
||||
%D%/packages/patches/ldc-disable-phobos-tests.patch \
|
||||
%D%/packages/patches/ldns-drill-examples.patch \
|
||||
%D%/packages/patches/leela-zero-gtest.patch \
|
||||
%D%/packages/patches/less-hurd-path-max.patch \
|
||||
%D%/packages/patches/lib2geom-fix-tests.patch \
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages certs)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages documentation)
|
||||
|
@ -62,6 +63,7 @@
|
|||
#:use-module (gnu packages protobuf)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages shells)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages swig)
|
||||
#:use-module (gnu packages tls)
|
||||
|
@ -77,6 +79,91 @@
|
|||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system trivial))
|
||||
|
||||
(define-public ldns
|
||||
(package
|
||||
(name "ldns")
|
||||
(version "1.7.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://www.nlnetlabs.nl/downloads/"
|
||||
name "/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0ac242n7996fswq1a3nlh1bbbhrsdwsq4mx7xq8ffq6aplb4rj4a"))
|
||||
(patches
|
||||
(search-patches
|
||||
;; To create make-flag vairables,
|
||||
;; for splitting installation of drill and examples.
|
||||
"ldns-drill-examples.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "drill" "examples" "pyldns"))
|
||||
(arguments
|
||||
`( ;; Tests require Tpkg.
|
||||
;; https://tpkg.github.io/
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
(list
|
||||
"--disable-static"
|
||||
"--enable-gost-anyway"
|
||||
"--enable-rrtype-ninfo"
|
||||
"--enable-rrtype-rkey"
|
||||
"--enable-rrtype-ta"
|
||||
"--enable-rrtype-avc"
|
||||
"--enable-rrtype-doa"
|
||||
"--enable-rrtype-amtrelay"
|
||||
"--with-drill"
|
||||
"--with-examples"
|
||||
"--with-pyldns"
|
||||
;; Perl module DNS::LDNS not available.
|
||||
;; https://github.com/erikoest/DNS-LDNS.git
|
||||
;; "--with-p5-dns-ldns"
|
||||
(string-append "--with-ssl="
|
||||
(assoc-ref %build-inputs "openssl"))
|
||||
(string-append "--with-ca-path="
|
||||
(assoc-ref %build-inputs "nss-certs")
|
||||
"/etc/ssl/certs"))
|
||||
#:make-flags
|
||||
(list
|
||||
(string-append "drillbindir="
|
||||
(assoc-ref %outputs "drill")
|
||||
"/bin")
|
||||
(string-append "drillmandir="
|
||||
(assoc-ref %outputs "drill")
|
||||
"/share/man")
|
||||
(string-append "examplesbindir="
|
||||
(assoc-ref %outputs "examples")
|
||||
"/bin")
|
||||
(string-append "examplesmandir="
|
||||
(assoc-ref %outputs "examples")
|
||||
"/share/man")
|
||||
(string-append "python_site="
|
||||
(assoc-ref %outputs "pyldns")
|
||||
"/lib/python"
|
||||
,(version-major+minor
|
||||
(package-version python))
|
||||
"/site-packages"))))
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
("ksh" ,oksh)
|
||||
("perl" ,perl)
|
||||
("perl-devel-checklib" ,perl-devel-checklib)
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python-wrapper)
|
||||
("swig" ,swig)))
|
||||
(inputs
|
||||
`(("libpcap" ,libpcap)
|
||||
("nss-certs" ,nss-certs)
|
||||
("openssl" ,openssl)))
|
||||
(synopsis "DNS library that facilitates DNS tool programming")
|
||||
(description "LDNS aims to simplify DNS programming, it supports recent
|
||||
RFCs like the DNSSEC documents, and allows developers to easily create
|
||||
software conforming to current RFCs, and experimental software for current
|
||||
Internet Drafts. A secondary benefit of using ldns is speed; ldns is written in
|
||||
C it should be a lot faster than Perl.")
|
||||
(home-page "https://nlnetlabs.nl/projects/ldns/about/")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public dnsmasq
|
||||
(package
|
||||
(name "dnsmasq")
|
||||
|
|
|
@ -0,0 +1,85 @@
|
|||
From 68916cd7ffb49ece9126d13ef984595595a156c4 Mon Sep 17 00:00:00 2001
|
||||
From: Raghav Gururajan <raghavgururajan@disroot.org>
|
||||
Date: Wed, 29 Jul 2020 12:32:48 -0400
|
||||
Subject: [PATCH] [PATCH]: Split installation of drill and examples.
|
||||
|
||||
---
|
||||
Makefile.in | 38 +++++++++++++++++++++-----------------
|
||||
1 file changed, 21 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 442067de..9d2d5f4d 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -14,6 +14,10 @@ libdir = @libdir@
|
||||
includedir = @includedir@
|
||||
sysconfdir = @sysconfdir@
|
||||
doxygen = @doxygen@
|
||||
+drillbindir = @drillbindir@
|
||||
+drillmandir = @drillmandir@
|
||||
+examplesbindir = @examplesbindir@
|
||||
+examplesmandir = @examplesmandir@
|
||||
pywrapdir = $(srcdir)/contrib/python
|
||||
pyldnsxwrapdir = $(srcdir)/contrib/ldnsx
|
||||
p5_dns_ldns_dir = $(srcdir)/contrib/DNS-LDNS
|
||||
@@ -154,16 +158,16 @@ drill/drill.1: $(srcdir)/drill/drill.1.in
|
||||
$(edit) $(srcdir)/drill/drill.1.in > drill/drill.1
|
||||
|
||||
install-drill: drill/drill drill/drill.1
|
||||
- $(INSTALL) -m 755 -d $(DESTDIR)$(bindir)
|
||||
- $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)
|
||||
- $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man1
|
||||
- $(LIBTOOL) --mode=install cp drill/drill $(DESTDIR)$(bindir)
|
||||
- $(INSTALL) -m 644 drill/drill.1 $(DESTDIR)$(mandir)/man1/drill.1
|
||||
+ $(INSTALL) -m 755 -d $(drillbindir)
|
||||
+ $(INSTALL) -m 755 -d $(drillmandir)
|
||||
+ $(INSTALL) -m 755 -d $(drillmandir)/man1
|
||||
+ $(LIBTOOL) --mode=install cp drill/drill $(drillbindir)
|
||||
+ $(INSTALL) -m 644 drill/drill.1 $(drillmandir)/man1/drill.1
|
||||
|
||||
uninstall-drill:
|
||||
- rm -f $(DESTDIR)$(bindir)/drill $(DESTDIR)$(mandir)/man1/drill.1
|
||||
- test ! -d $(DESTDIR)$(mandir) || rmdir -p $(DESTDIR)$(mandir)/man1 || :;
|
||||
- test ! -d $(DESTDIR)$(bindir) || rmdir -p $(DESTDIR)$(bindir) || : ;
|
||||
+ rm -f $(drillbindir)/drill $(drillmandir)/man1/drill.1
|
||||
+ test ! -d $(drillmandir) || rmdir -p $(drillmandir)/man1 || :;
|
||||
+ test ! -d $(drillbindir) || rmdir -p $(drillbindir) || : ;
|
||||
|
||||
clean-drill:
|
||||
$(LIBTOOL) --mode clean rm -f $(DRILL_LOBJS) drill/drill drill/drill.1
|
||||
@@ -202,23 +206,23 @@ examples/ldns-verify-zone.1: $(srcdir)/examples/ldns-verify-zone.1.in
|
||||
$(edit) $(srcdir)/examples/ldns-verify-zone.1.in > examples/ldns-verify-zone.1
|
||||
|
||||
install-examples: $(EXAMPLE_PROGS) $(TESTNS) $(LDNS_DPA) $(LDNS_DANE) $(EX_SSL_PROGS) examples/ldns-dane.1 examples/ldns-verify-zone.1
|
||||
- $(INSTALL) -m 755 -d $(DESTDIR)$(bindir)
|
||||
- $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)
|
||||
- $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man1
|
||||
+ $(INSTALL) -m 755 -d $(examplesbindir)
|
||||
+ $(INSTALL) -m 755 -d $(examplesmandir)
|
||||
+ $(INSTALL) -m 755 -d $(examplesmandir)/man1
|
||||
for p in $(EXAMPLE_PROGS) $(TESTNS) $(LDNS_DPA) $(LDNS_DANE) $(EX_SSL_PROGS) ; do \
|
||||
- $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(bindir) ; \
|
||||
+ $(LIBTOOL) --mode=install cp $$p $(examplesbindir) ; \
|
||||
if test -f $$p.1 ; \
|
||||
- then $(INSTALL) -m 644 $$p.1 $(DESTDIR)$(mandir)/man1 ; \
|
||||
- else $(INSTALL) -m 644 $(srcdir)/$$p.1 $(DESTDIR)$(mandir)/man1 ; \
|
||||
+ then $(INSTALL) -m 644 $$p.1 $(examplesmandir)/man1 ; \
|
||||
+ else $(INSTALL) -m 644 $(srcdir)/$$p.1 $(examplesmandir)/man1 ; \
|
||||
fi ; \
|
||||
done
|
||||
|
||||
uninstall-examples:
|
||||
for p in $(EX_PROGS_BASENM) ; do \
|
||||
- rm -f $(DESTDIR)$(bindir)/$$p $(DESTDIR)$(mandir)/man1/$$p.1 ;\
|
||||
+ rm -f $(examplesbindir)/$$p $(examplesmandir)/man1/$$p.1 ;\
|
||||
done
|
||||
- test ! -d $(DESTDIR)$(mandir) || rmdir -p $(DESTDIR)$(mandir)/man1 || :;
|
||||
- test ! -d $(DESTDIR)$(bindir) || rmdir -p $(DESTDIR)$(bindir) || : ;
|
||||
+ test ! -d $(examplesmandir) || rmdir -p $(examplesmandir)/man1 || :;
|
||||
+ test ! -d $(examplesbindir) || rmdir -p $(examplesbindir) || : ;
|
||||
|
||||
clean-examples:
|
||||
$(LIBTOOL) --mode clean rm -f $(EXAMPLE_PROGS)
|
||||
--
|
||||
2.27.0
|
||||
|
Reference in New Issue