me
/
guix
Archived
1
0
Fork 0

gnu: OpenLDAP: Update to 2.6.2.

* gnu/packages/openldap.scm (openldap): Update to 2.6.2.
[source](uri): Update primary mirror.
[arguments]: Take from ...
(openldap-2.6): ... this removed variable.  Remove #:make-flags, and set the
STRIP variable in fix-cross-gcc phase.
(python-ldap)[inputs]: Change from OPENLDAP-2.6 to OPENLDAP.
* gnu/packages/django.scm (python-django-auth-ldap)[native-inputs]: Likewise.
master
Marius Bakke 2022-07-13 20:46:56 +02:00
parent 83a8c033f1
commit 5708638a93
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
2 changed files with 46 additions and 87 deletions

View File

@ -1230,7 +1230,7 @@ FileFields during tests.")
(invoke "pip" "--no-cache-dir" "--no-input" (invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl))))))) "install" "--no-deps" "--prefix" #$output whl)))))))
(native-inputs (native-inputs
(list openldap-2.6 python-wheel python-setuptools-scm python-toml (list openldap python-wheel python-setuptools-scm python-toml
;; These can be removed after <https://bugs.gnu.org/46848>. ;; These can be removed after <https://bugs.gnu.org/46848>.
python-pypa-build python-pip)) python-pypa-build python-pip))

View File

@ -64,75 +64,13 @@
(define-public openldap (define-public openldap
(package (package
(name "openldap") (name "openldap")
(version "2.4.57") (version "2.6.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
;; See <http://www.openldap.org/software/download/> for a list of ;; See <http://www.openldap.org/software/download/> for a list of
;; mirrors. ;; mirrors.
(uri (list (string-append (uri (list (string-append
"ftp://mirror.switch.ch/mirror/OpenLDAP/" "http://repository.linagora.org/OpenLDAP"
"openldap-release/openldap-" version ".tgz")
(string-append
"https://www.openldap.org/software/download/OpenLDAP/"
"openldap-release/openldap-" version ".tgz")
(string-append
"ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/"
"openldap-release/openldap-" version ".tgz")))
(sha256
(base32
"0nmlyqhc52v24b4awh914sczmvxbazgq2cnlycvb9dgcwvhlgfn7"))))
(build-system gnu-build-system)
(inputs (list bdb-5.3 cyrus-sasl gnutls libgcrypt zlib))
(native-inputs (list libtool groff bdb-5.3))
(arguments
`(#:tests? #f
#:configure-flags
'("--disable-static"
,@(if (%current-target-system)
'("--with-yielding_select=yes"
"ac_cv_func_memcmp_working=yes")
'()))
;; Disable install stripping as it breaks cross-compiling.
#:make-flags '("STRIP=")
#:phases
(modify-phases %standard-phases
,@(if (%current-target-system)
'((add-before 'configure 'fix-cross-gcc
(lambda* (#:key target #:allow-other-keys)
(setenv "CC" (string-append target "-gcc"))
#t)))
'())
(add-after 'install 'patch-sasl-path
;; Give -L arguments for cyrus-sasl to avoid propagation.
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(krb5 (assoc-ref inputs "mit-krb5"))) ;propagated from cyrus-sasl
;; The ancient Libtool bundled with OpenLDAP copies the linker flags
;; from Cyrus-SASL and embeds them into its own .la files. Add an
;; absolute reference to Kerberos so it does not have to be propagated.
(substitute* (map (lambda (f) (string-append out "/" f))
'("lib/libldap.la" "lib/libldap_r.la"))
(("-lkrb5" lib)
(string-append "-L" krb5 "/lib " lib)))
#t))))))
(synopsis "Implementation of the Lightweight Directory Access Protocol")
(description
"OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.")
(license openldap2.8)
(home-page "https://www.openldap.org/")))
;; TODO: Update the main package in the next rebuild cycle.
(define-public openldap-2.6
(package
(inherit openldap)
(version "2.6.1")
(source (origin
(method url-fetch)
;; See <http://www.openldap.org/software/download/> for a list of
;; mirrors.
(uri (list (string-append
"http://mirror.eu.oneandone.net/software/openldap"
"/openldap-release/openldap-" version ".tgz") "/openldap-release/openldap-" version ".tgz")
(string-append (string-append
"https://www.openldap.org/software/download/OpenLDAP/" "https://www.openldap.org/software/download/OpenLDAP/"
@ -142,19 +80,35 @@
"openldap-release/openldap-" version ".tgz"))) "openldap-release/openldap-" version ".tgz")))
(sha256 (sha256
(base32 (base32
"1wz6f3g3bbqgbbxs20zlappmmhapqbl791c0waibhz9djsk6wmwx")))) "11ygl4iilhkz5rhndh68lss4a33cqp9arb7mxj329dif4d2r7l41"))))
(build-system gnu-build-system)
(inputs (list bdb-5.3 cyrus-sasl gnutls libgcrypt zlib))
(native-inputs (list libtool groff bdb-5.3))
(arguments (arguments
(substitute-keyword-arguments (package-arguments openldap) (list
((#:phases phases) #:tests? #f
#~(modify-phases #$phases #:configure-flags
(replace 'patch-sasl-path #~'("--disable-static"
#$@(if (%current-target-system)
'("--with-yielding_select=yes"
"ac_cv_func_memcmp_working=yes")
'()))
#:phases
#~(modify-phases %standard-phases
#$@(if (%current-target-system)
'((add-before 'configure 'fix-cross-gcc
(lambda* (#:key target #:allow-other-keys)
(setenv "CC" (string-append target "-gcc"))
(setenv "STRIP" (string-append target "-strip")))))
'())
(add-after 'install 'patch-sasl-path
;; Give -L arguments for cyrus-sasl to avoid propagation. ;; Give -L arguments for cyrus-sasl to avoid propagation.
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((krb5 (search-input-file inputs "/lib/libkrb5.so"))) (let ((krb5 (search-input-file inputs "/lib/libkrb5.so")))
(substitute* (string-append #$output "/lib/libldap.la") (substitute* (string-append #$output "/lib/libldap.la")
(("-lkrb5" lib) (("-lkrb5" lib)
(string-append "-L" (dirname krb5) "/lib " lib)))))) (string-append "-L" (dirname krb5) "/lib " lib))))))
(add-after 'install 'provide-ldap_r (add-after 'install 'provide-libldap_r
(lambda _ (lambda _
;; The re-entrant libldap_r no longer exists since 2.6 ;; The re-entrant libldap_r no longer exists since 2.6
;; as it has become the default: provide a linker alias ;; as it has become the default: provide a linker alias
@ -162,7 +116,12 @@
(call-with-output-file (string-append #$output (call-with-output-file (string-append #$output
"/lib/libldap_r.so") "/lib/libldap_r.so")
(lambda (port) (lambda (port)
(format port "INPUT ( libldap.so )~%"))))))))))) (format port "INPUT ( libldap.so )~%"))))))))
(synopsis "Implementation of the Lightweight Directory Access Protocol")
(description
"OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.")
(license openldap2.8)
(home-page "https://www.openldap.org/")))
(define-public nss-pam-ldapd (define-public nss-pam-ldapd
(package (package
@ -231,7 +190,7 @@ an LDAP server.")
(setenv "SLAPD" slapd) (setenv "SLAPD" slapd)
(setenv "SCHEMA" schema))))))) (setenv "SCHEMA" schema)))))))
(inputs (inputs
(list openldap-2.6 cyrus-sasl mit-krb5)) (list openldap cyrus-sasl mit-krb5))
(propagated-inputs (propagated-inputs
(list python-pyasn1 python-pyasn1-modules)) (list python-pyasn1 python-pyasn1-modules))
(home-page "https://www.python-ldap.org/") (home-page "https://www.python-ldap.org/")