From 88a17b0ae63ca3b23006d5654312c14e25ab711c Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Sat, 26 Jan 2013 20:31:37 +0100 Subject: [PATCH] gnu: Add openldap. * gnu/packages/openldap.scm: New file. * Makefile.am (MODULE): Add it. --- Makefile.am | 3 +- gnu/packages/openldap.scm | 78 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/openldap.scm diff --git a/Makefile.am b/Makefile.am index 3942db5..9bb8d73 100644 --- a/Makefile.am +++ b/Makefile.am @@ -110,8 +110,9 @@ MODULES = \ gnu/packages/netpbm.scm \ gnu/packages/nettle.scm \ gnu/packages/ocaml.scm \ - gnu/packages/openssl.scm \ gnu/packages/oggvorbis.scm \ + gnu/packages/openldap.scm \ + gnu/packages/openssl.scm \ gnu/packages/pdf.scm \ gnu/packages/perl.scm \ gnu/packages/pkg-config.scm \ diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm new file mode 100644 index 0000000..83a453e --- /dev/null +++ b/gnu/packages/openldap.scm @@ -0,0 +1,78 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Andreas Enge +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages openldap) + #:use-module (gnu packages) + #:use-module (gnu packages bdb) + #:use-module (gnu packages compression) + #:use-module (gnu packages cyrus-sasl) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages groff) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages openssl) + #:use-module ((guix licenses) #:select (openldap2.8)) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public openldap + (package + (name "openldap") + (version "2.4.33") + (source (origin + (method url-fetch) + (uri (string-append + "ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/openldap-release/openldap-" + version ".tgz")) + (sha256 (base32 + "0k51mhrs7pkwph2j38w09x7xl1ii69mcdi7b2mfrm9hp1yifrsc1")))) + (build-system gnu-build-system) + (inputs `(("bdb" ,bdb) + ("openssl" ,openssl) + ("cyrus-sasl" ,cyrus-sasl) + ("groff" ,groff) + ("icu4c" ,icu4c) + ("libgcrypt" ,libgcrypt) + ;; FIXME: currently, openldap requires openssl or gnutls<3, see + ;; http://www.openldap.org/its/index.cgi/Incoming?id=7430;page=17 + ;; Once this is fixed, switch to gnutls. + ("zlib" ,zlib))) + (arguments + `(#:parallel-tests? #f + ;; disable all tests; they are too unreliable to be run automatically, + ;; since they fail intermittently + #:tests? #f + #:phases + (alist-replace + 'check + (lambda* (#:key #:allow-other-keys #:rest args) + (let ((check (assoc-ref %standard-phases 'check))) + (for-each (lambda (f) + (substitute* (string-append "tests/scripts/" f) + (("/bin/rm") "rm"))) + '("all" "its-all" "passwd-search" "sql-all" "test027-emptydn")) + (setenv "LD_LIBRARY_PATH" (getenv "LIBRARY_PATH")) + ;; disable especially finicky test + (delete-file "tests/scripts/test050-syncrepl-multimaster") + (apply check args))) + %standard-phases))) + (synopsis "openldap, an implementation of the Lightweight Directory Access Protocol") + (description + "OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.") + (license openldap2.8) + (home-page "http://www.openldap.org/"))) -- 1.7.10.4