Fil-C on Nix

Filnix wiki

mbrock/filnix

tests/link-wrap.nix

λsource?
sourcedefault ../.
let
5pkgs=
builtins.getFlaketoStringsource.legacyPackages.x86_64-linux.pkgsFilc
used by adapter
7adapter=
import../toolchain/test-wrap.nix pkgs = pkgs.buildPackages.buildPackages;
uses pkgs
in
pkgs.stdenv.mkDerivation
//
14pname=
"filc-link-wrap-check"
15version=
"1"
16dontUnpack=
true
17configurePhase=
runHook preConfigure
runHook postConfigure
21buildPhase=
$CC -Dmalloc=filnix_wrap_malloc -Dfree=filnix_wrap_free \
-c ${./link-wrap.c} -o wrapped.o
$CC -c ${./link-wrap-provider.c} -o provider.o
flags='-Wl,--wrap=write,--wrap=calloc,--wrap=malloc,--wrap=wrapped_value'
$CC wrapped.o provider.o $flags -o wrapped
$CC provider.o wrapped.o $flags -o reversed
29doCheck=
true
30checkPhase=
./wrapped
./reversed
34installPhase=
mkdir -p "$out/bin"
cp wrapped "$out/bin/"