selinux: 2.9 -> 3.0 (#104087)
Notably, Python 2 code is not be supported in this project anymore and new Python code should be written only for Python 3, which is no longer restricted to Python 3.7 (see780fb563c7
,5dfd3c4975
) https://github.com/SELinuxProject/selinux/releases/tag/20191204
This commit is contained in:
parent
cbb4e4733b
commit
70ecb218f1
4 changed files with 18 additions and 16 deletions
|
@ -1,26 +1,26 @@
|
|||
{ stdenv, fetchurl, pcre, pkgconfig, libsepol
|
||||
, enablePython ? true, swig ? null, python ? null
|
||||
, enablePython ? true, swig ? null, python3 ? null
|
||||
, fts
|
||||
}:
|
||||
|
||||
assert enablePython -> swig != null && python != null;
|
||||
assert enablePython -> swig != null && python3 != null;
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libselinux";
|
||||
version = "2.9";
|
||||
version = "3.0";
|
||||
inherit (libsepol) se_release se_url;
|
||||
|
||||
outputs = [ "bin" "out" "dev" "man" ] ++ optional enablePython "py";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${se_url}/${se_release}/libselinux-${version}.tar.gz";
|
||||
sha256 = "14r69mgmz7najf9wbizvp68q56mqx4yjbkxjlbcqg5a47s3wik0v";
|
||||
sha256 = "0cr4p0qkr4qd5z1x677vwhz6mlz55kxyijwi2dmrvbhxcw7v78if";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ] ++ optionals enablePython [ swig python ];
|
||||
buildInputs = [ libsepol pcre fts ] ++ optionals enablePython [ python ];
|
||||
nativeBuildInputs = [ pkgconfig ] ++ optionals enablePython [ swig python3 ];
|
||||
buildInputs = [ libsepol pcre fts ] ++ optionals enablePython [ python3 ];
|
||||
|
||||
# drop fortify here since package uses it by default, leading to compile error:
|
||||
# command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror]
|
||||
|
@ -35,14 +35,18 @@ stdenv.mkDerivation rec {
|
|||
"MAN3DIR=$(man)/share/man/man3"
|
||||
"MAN5DIR=$(man)/share/man/man5"
|
||||
"MAN8DIR=$(man)/share/man/man8"
|
||||
"PYTHON=${python.pythonForBuild}/bin/python"
|
||||
"PYTHONLIBDIR=$(py)/${python.sitePackages}"
|
||||
"PYTHON=${python3.pythonForBuild}/bin/python"
|
||||
"PYTHONLIBDIR=$(py)/${python3.sitePackages}"
|
||||
"SBINDIR=$(bin)/sbin"
|
||||
"SHLIBDIR=$(out)/lib"
|
||||
|
||||
"LIBSEPOLA=${stdenv.lib.getLib libsepol}/lib/libsepol.a"
|
||||
];
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $py/${python3.sitePackages}/selinux
|
||||
'';
|
||||
|
||||
installTargets = [ "install" ] ++ optional enablePython "install-pywrap";
|
||||
|
||||
meta = removeAttrs libsepol.meta ["outputsToInstall"] // {
|
||||
|
|
|
@ -2,15 +2,15 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libsepol";
|
||||
version = "2.9";
|
||||
se_release = "20190315";
|
||||
version = "3.0";
|
||||
se_release = "20191204";
|
||||
se_url = "https://github.com/SELinuxProject/selinux/releases/download";
|
||||
|
||||
outputs = [ "bin" "out" "dev" "man" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "${se_url}/${se_release}/libsepol-${version}.tar.gz";
|
||||
sha256 = "0p8x7w73jn1nysx1d7416wqrhbi0r6isrjxib7jf68fi72q14jx3";
|
||||
sha256 = "0ygb6dh5lng91xs6xiqf5v0nxa68qmjc787p0s5h9w89364f2yjv";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ flex ];
|
||||
|
|
|
@ -18505,9 +18505,7 @@ in
|
|||
|
||||
keyutils = callPackage ../os-specific/linux/keyutils { };
|
||||
|
||||
libselinux = callPackage ../os-specific/linux/libselinux {
|
||||
python = python37;
|
||||
};
|
||||
libselinux = callPackage ../os-specific/linux/libselinux { };
|
||||
|
||||
libsemanage = callPackage ../os-specific/linux/libsemanage {
|
||||
python = python3;
|
||||
|
|
|
@ -3447,13 +3447,13 @@ in {
|
|||
p.overrideAttrs (super: {
|
||||
meta = super.meta // {
|
||||
outputsToInstall = [ "py" ];
|
||||
broken = (super.meta.broken or false) || pythonAtLeast "3.8";
|
||||
broken = super.meta.broken or isPy27;
|
||||
};
|
||||
}))
|
||||
(p:
|
||||
p.override {
|
||||
enablePython = true;
|
||||
inherit python;
|
||||
python3 = python;
|
||||
})
|
||||
(p: p.py)
|
||||
];
|
||||
|
|
Loading…
Reference in a new issue