mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-02-11 14:26:13 +01:00
gnu: SELinux: Update to 3.0.
* gnu/packages/selinux.scm (libsepol): Update to 3.0. [arguments]: Don't set DESTDIR. Change PYSITEDIR to PYTHONLIBDIR. Drop phase 'remove-Werror'. (libselinux)[arguments]: Add substitution to use the correct Python directory. (libsemanage)[arguments]: Change PYSITEDIR to PYTHONLIBDIR. Add phase 'adjust-semanage-conf-location'. [inputs]: Remove USTR. (policycoreutils)[arguments]: Remove obsolete substitution.
This commit is contained in:
parent
3a3c9bae79
commit
9e837ea0f3
1 changed files with 20 additions and 22 deletions
|
@ -1,6 +1,7 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -39,7 +40,6 @@
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages swig)
|
#:use-module (gnu packages swig)
|
||||||
#:use-module (gnu packages textutils)
|
|
||||||
#:use-module (gnu packages xml))
|
#:use-module (gnu packages xml))
|
||||||
|
|
||||||
;; Update the SELinux packages together!
|
;; Update the SELinux packages together!
|
||||||
|
@ -47,8 +47,8 @@
|
||||||
(define-public libsepol
|
(define-public libsepol
|
||||||
(package
|
(package
|
||||||
(name "libsepol")
|
(name "libsepol")
|
||||||
(version "2.7")
|
(version "3.0")
|
||||||
(source (let ((release "20170804"))
|
(source (let ((release "20191204"))
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
|
@ -57,7 +57,7 @@
|
||||||
(file-name (string-append "selinux-" release "-checkout"))
|
(file-name (string-append "selinux-" release "-checkout"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1l1nn8bx08v4cxkw5kb0wgr61rfqj5ra9dh1dy5jslillj93vivq")))))
|
"05rpzm72cgprd0ccr6lvx9hm8j8b5nkqi4avshlsyg7s3sdlcxjs")))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; tests require checkpolicy, which requires libsepol
|
`(#:tests? #f ; tests require checkpolicy, which requires libsepol
|
||||||
|
@ -65,7 +65,7 @@
|
||||||
#:make-flags
|
#:make-flags
|
||||||
(let ((out (assoc-ref %outputs "out")))
|
(let ((out (assoc-ref %outputs "out")))
|
||||||
(list (string-append "PREFIX=" out)
|
(list (string-append "PREFIX=" out)
|
||||||
(string-append "DESTDIR=" out)
|
(string-append "SHLIBDIR=" out "/lib")
|
||||||
(string-append "MAN3DIR=" out "/share/man/man3")
|
(string-append "MAN3DIR=" out "/share/man/man3")
|
||||||
(string-append "MAN5DIR=" out "/share/man/man5")
|
(string-append "MAN5DIR=" out "/share/man/man5")
|
||||||
(string-append "MAN8DIR=" out "/share/man/man8")
|
(string-append "MAN8DIR=" out "/share/man/man8")
|
||||||
|
@ -139,7 +139,7 @@ module into a binary representation.")
|
||||||
(string-append "LIBSEPOLA="
|
(string-append "LIBSEPOLA="
|
||||||
(assoc-ref %build-inputs "libsepol")
|
(assoc-ref %build-inputs "libsepol")
|
||||||
"/lib/libsepol.a")
|
"/lib/libsepol.a")
|
||||||
(string-append "PYSITEDIR="
|
(string-append "PYTHONLIBDIR="
|
||||||
(assoc-ref %outputs "python")
|
(assoc-ref %outputs "python")
|
||||||
"/lib/python"
|
"/lib/python"
|
||||||
,(version-major+minor (package-version python))
|
,(version-major+minor (package-version python))
|
||||||
|
@ -150,19 +150,17 @@ module into a binary representation.")
|
||||||
(delete 'portability)
|
(delete 'portability)
|
||||||
(replace 'enter-dir
|
(replace 'enter-dir
|
||||||
(lambda _ (chdir ,name) #t))
|
(lambda _ (chdir ,name) #t))
|
||||||
(add-after 'enter-dir 'remove-Werror
|
|
||||||
(lambda _
|
|
||||||
;; GCC complains about the fact that the output does not (yet)
|
|
||||||
;; have an "include" directory, even though it is referenced.
|
|
||||||
(substitute* '("src/Makefile"
|
|
||||||
"utils/Makefile")
|
|
||||||
(("-Werror ") ""))
|
|
||||||
#t))
|
|
||||||
(add-after 'build 'pywrap
|
(add-after 'build 'pywrap
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
(apply invoke "make" "pywrap" make-flags)))
|
(apply invoke "make" "pywrap" make-flags)))
|
||||||
(add-after 'install 'install-pywrap
|
(add-after 'install 'install-pywrap
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags outputs #:allow-other-keys)
|
||||||
|
;; The build system uses "python setup.py install" to install
|
||||||
|
;; Python bindings. Instruct it to use the correct output.
|
||||||
|
(substitute* "src/Makefile"
|
||||||
|
(("--prefix=\\$\\(PREFIX\\)")
|
||||||
|
(string-append "--prefix=" (assoc-ref outputs "python"))))
|
||||||
|
|
||||||
(apply invoke "make" "install-pywrap" make-flags)))))))
|
(apply invoke "make" "install-pywrap" make-flags)))))))
|
||||||
;; These libraries are in "Requires.private" in libselinux.pc.
|
;; These libraries are in "Requires.private" in libselinux.pc.
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -191,7 +189,7 @@ the core SELinux management utilities.")
|
||||||
(substitute-keyword-arguments (package-arguments libsepol)
|
(substitute-keyword-arguments (package-arguments libsepol)
|
||||||
((#:make-flags flags)
|
((#:make-flags flags)
|
||||||
`(cons* "PYTHON=python3"
|
`(cons* "PYTHON=python3"
|
||||||
(string-append "PYSITEDIR="
|
(string-append "PYTHONLIBDIR="
|
||||||
(assoc-ref %outputs "out")
|
(assoc-ref %outputs "out")
|
||||||
"/lib/python"
|
"/lib/python"
|
||||||
,(version-major+minor (package-version python))
|
,(version-major+minor (package-version python))
|
||||||
|
@ -202,6 +200,12 @@ the core SELinux management utilities.")
|
||||||
(delete 'portability)
|
(delete 'portability)
|
||||||
(replace 'enter-dir
|
(replace 'enter-dir
|
||||||
(lambda _ (chdir ,name) #t))
|
(lambda _ (chdir ,name) #t))
|
||||||
|
(add-before 'install 'adjust-semanage-conf-location
|
||||||
|
(lambda _
|
||||||
|
(substitute* "src/Makefile"
|
||||||
|
(("DEFAULT_SEMANAGE_CONF_LOCATION=/etc")
|
||||||
|
"DEFAULT_SEMANAGE_CONF_LOCATION=$(PREFIX)/etc"))
|
||||||
|
#t))
|
||||||
(add-after 'build 'pywrap
|
(add-after 'build 'pywrap
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
(apply invoke "make" "pywrap" make-flags)))
|
(apply invoke "make" "pywrap" make-flags)))
|
||||||
|
@ -212,7 +216,6 @@ the core SELinux management utilities.")
|
||||||
`(("libsepol" ,libsepol)
|
`(("libsepol" ,libsepol)
|
||||||
("libselinux" ,libselinux)
|
("libselinux" ,libselinux)
|
||||||
("audit" ,audit)
|
("audit" ,audit)
|
||||||
("ustr" ,ustr)
|
|
||||||
;; For pywrap phase
|
;; For pywrap phase
|
||||||
("python" ,python-wrapper)))
|
("python" ,python-wrapper)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
|
@ -393,11 +396,6 @@ tools, and libraries designed to facilitate SELinux policy analysis.")
|
||||||
(lambda _ (chdir ,name) #t))
|
(lambda _ (chdir ,name) #t))
|
||||||
(add-after 'enter-dir 'ignore-/usr-tests
|
(add-after 'enter-dir 'ignore-/usr-tests
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
;; The Makefile decides to build restorecond only if it finds the
|
|
||||||
;; inotify header somewhere under /usr.
|
|
||||||
(substitute* "Makefile"
|
|
||||||
(("ifeq.*") "")
|
|
||||||
(("endif.*") ""))
|
|
||||||
;; Rewrite lookup paths for header files.
|
;; Rewrite lookup paths for header files.
|
||||||
(substitute* '("newrole/Makefile"
|
(substitute* '("newrole/Makefile"
|
||||||
"setfiles/Makefile"
|
"setfiles/Makefile"
|
||||||
|
|
Loading…
Add table
Reference in a new issue