Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 blas,
3 blasfeo,
4 cmake,
5 fetchFromGitHub,
6 lib,
7 stdenv,
8}:
9
10stdenv.mkDerivation (finalAttrs: {
11 pname = "hpipm";
12 #version = "0.1.3"; not building, use master instead
13 version = "0-unstable-2024-07-30";
14
15 src = fetchFromGitHub {
16 owner = "giaf";
17 repo = "hpipm";
18 rev = "3ab7d6059d9d7da31ec9ff6a8ca84fd8ec5ab5e2";
19 hash = "sha256-TRNHjW2/YDfGJHTG9sy2nmHyk6+HlBGIabPm87TETE8=";
20 };
21
22 nativeBuildInputs = [ cmake ];
23 buildInputs = [
24 blas
25 blasfeo
26 ];
27
28 cmakeFlags = [
29 "-DHPIPM_FIND_BLASFEO=ON"
30 "-DBUILD_SHARED_LIBS=ON"
31 ]
32 ++ lib.optionals (!stdenv.hostPlatform.isx86_64) [ "-DTARGET=GENERIC" ];
33
34 meta = {
35 description = "High-performance interior-point-method QP and QCQP solvers";
36 homepage = "https://github.com/giaf/hpipm";
37 changelog = "https://github.com/giaf/hpipm/blob/${finalAttrs.src.rev}/Changelog.txt";
38 license = lib.licenses.bsd2;
39 maintainers = with lib.maintainers; [ nim65s ];
40 };
41})