parent
5655e71eee
commit
d08244d50e
@ -0,0 +1,77 @@ |
||||
{ lib |
||||
, stdenv |
||||
, fetchurl |
||||
, pkg-config |
||||
, autoreconfHook |
||||
, python3 |
||||
, perl |
||||
, libxslt |
||||
, docbook_xsl |
||||
, docbook_xml_dtd_42 |
||||
, libseccomp |
||||
, installTests ? true, gnumake, which |
||||
, debugBuild ? false, libunwind |
||||
}: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
pname = "sydbox-1"; |
||||
version = "2.2.0"; |
||||
|
||||
outputs = [ "out" "dev" "man" "doc" ] |
||||
++ lib.optional installTests "installedTests"; |
||||
|
||||
src = fetchurl { |
||||
url = "https://git.exherbo.org/${pname}.git/snapshot/${pname}-${version}.tar.xz"; |
||||
sha256 = "0664myrrzbvsw73q5b7cqwgv4hl9a7vkm642s1r96gaxm16jk0z7"; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ |
||||
pkg-config |
||||
autoreconfHook |
||||
python3 |
||||
perl |
||||
libxslt.bin |
||||
docbook_xsl |
||||
docbook_xml_dtd_42 |
||||
]; |
||||
|
||||
buildInputs = [ |
||||
libseccomp |
||||
] ++ lib.optional debugBuild libunwind |
||||
++ lib.optionals installTests [ |
||||
gnumake |
||||
python3 |
||||
perl |
||||
which |
||||
]; |
||||
|
||||
enableParallelBuilding = true; |
||||
|
||||
configureFlags = [ ] |
||||
++ lib.optionals installTests [ "--enable-installed-tests" |
||||
"--libexecdir=${placeholder "installedTests"}/libexec" ] |
||||
++ lib.optional debugBuild "--enable-debug"; |
||||
|
||||
makeFlags = [ "SYD_INCLUDEDIR=${stdenv.cc.libc.dev}/include" ]; |
||||
|
||||
doCheck = true; |
||||
checkPhase = '' |
||||
# Many of the regular test cases in t/ do not work inside the build sandbox |
||||
make -C syd check |
||||
''; |
||||
|
||||
postInstall = if installTests then '' |
||||
moveToOutput bin/syd-test $installedTests |
||||
'' else '' |
||||
# Tests are installed despite --disable-installed-tests |
||||
rm -r $out/bin/syd-test $out/libexec |
||||
''; |
||||
|
||||
meta = with lib; { |
||||
homepage = "https://sydbox.exherbo.org/"; |
||||
description = "seccomp-based application sandbox"; |
||||
license = licenses.gpl2; |
||||
platforms = platforms.linux; |
||||
maintainers = with maintainers; [ mvs ]; |
||||
}; |
||||
} |
Loading…
Reference in new issue