Fil-C on Nix

Filnix wiki

mbrock/filnix

tests/quadprogpp.nix

Exercise the installed CMake target, including its transitive math dependency.

λsource?
sourcedefault ../.
let
6pkgs=
builtins.getFlaketoStringsource.legacyPackages.x86_64-linux.pkgsFilc
in
pkgs.stdenv.mkDerivation
10pname=
"quadprogpp-consumer-check"
11version=
"1"
12dontUnpack=
true
13nativeBuildInputs=
pkgs.buildPackages.cmake
14buildInputs=
pkgs.QuadProgpp
15preConfigure=
cp ${./quadprogpp.cc} main.cc
cat > CMakeLists.txt <<'EOF'
cmake_minimum_required(VERSION 3.16)
project(quadprogpp_consumer CXX)
include("${pkgs.QuadProgpp}/cmake/quadprog-targets.cmake")
add_executable(consumer main.cc)
target_link_libraries(consumer PRIVATE quadprog)
enable_testing()
add_test(NAME quadratic_solution COMMAND consumer)
EOF
27doCheck=
true
28installPhase=
runHook preInstall
mkdir -p "$out/bin"
cp consumer "$out/bin/quadprogpp-consumer-check"
runHook postInstall