graphene-hardened-malloc: 8 -> 11
This commit is contained in:
parent
3e72a1e2f1
commit
9b2ca297b6
|
@ -1,14 +1,21 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, python3, runCommand, makeWrapper, stress-ng }:
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, python3
|
||||||
|
, runCommand
|
||||||
|
, makeWrapper
|
||||||
|
, stress-ng
|
||||||
|
}:
|
||||||
|
|
||||||
lib.fix (self: stdenv.mkDerivation rec {
|
lib.fix (self: stdenv.mkDerivation rec {
|
||||||
pname = "graphene-hardened-malloc";
|
pname = "graphene-hardened-malloc";
|
||||||
version = "8";
|
version = "11";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "GrapheneOS";
|
owner = "GrapheneOS";
|
||||||
repo = "hardened_malloc";
|
repo = "hardened_malloc";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-+5kJb3hhuFTto7zsIymIXl3tpKUOm3v1DCY4EkAOCgo=";
|
sha256 = "sha256-BbjL0W12QXFmGCzFrFYY6CZZeFbUt0elCGhM+mbL/IU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
@ -20,7 +27,7 @@ lib.fix (self: stdenv.mkDerivation rec {
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
install -Dm444 -t $out/include include/*
|
install -Dm444 -t $out/include include/*
|
||||||
install -Dm444 -t $out/lib libhardened_malloc.so
|
install -Dm444 -t $out/lib out/libhardened_malloc.so
|
||||||
|
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
substitute preload.sh $out/bin/preload-hardened-malloc --replace "\$dir" $out/lib
|
substitute preload.sh $out/bin/preload-hardened-malloc --replace "\$dir" $out/lib
|
||||||
|
@ -41,21 +48,21 @@ lib.fix (self: stdenv.mkDerivation rec {
|
||||||
# standalone executables. this includes disabling tests for
|
# standalone executables. this includes disabling tests for
|
||||||
# malloc_object_size, which doesn't make sense to use via LD_PRELOAD.
|
# malloc_object_size, which doesn't make sense to use via LD_PRELOAD.
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
pushd test/simple-memory-corruption
|
pushd test
|
||||||
make LDLIBS= LDFLAGS=-Wl,--unresolved-symbols=ignore-all CXXFLAGS=-lstdc++
|
make LDLIBS= LDFLAGS=-Wl,--unresolved-symbols=ignore-all CXXFLAGS=-lstdc++
|
||||||
substituteInPlace test_smc.py \
|
substituteInPlace test_smc.py \
|
||||||
--replace 'test_malloc_object_size' 'dont_test_malloc_object_size' \
|
--replace 'test_malloc_object_size' 'dont_test_malloc_object_size' \
|
||||||
--replace 'test_invalid_malloc_object_size' 'dont_test_invalid_malloc_object_size'
|
--replace 'test_invalid_malloc_object_size' 'dont_test_invalid_malloc_object_size'
|
||||||
popd # test/simple-memory-corruption
|
popd # test
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/test
|
mkdir -p $out/test
|
||||||
cp -r test/simple-memory-corruption $out/test/simple-memory-corruption
|
cp -r test $out/test
|
||||||
|
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
makeWrapper ${python3.interpreter} $out/bin/run-tests \
|
makeWrapper ${python3.interpreter} $out/bin/run-tests \
|
||||||
--add-flags "-I -m unittest discover --start-directory $out/test/simple-memory-corruption"
|
--add-flags "-I -m unittest discover --start-directory $out/test"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
tests = {
|
tests = {
|
||||||
|
|
Loading…
Reference in a new issue