heroic: use qt6 version of kdialog (#372495)
[NixPkgs.git] / pkgs / by-name / fa / fasthenry / package.nix
bloba48cc020e71acd410fc5f5fc2682ce63252d0dc1
2   stdenv,
3   fetchFromGitHub,
4   lib,
5 }:
7 stdenv.mkDerivation rec {
8   pname = "fasthenry";
9   # later versions are Windows only ports
10   # nixpkgs-update: no auto update
11   version = "3.0.1";
13   # we don't use the original MIT code at
14   # https://www.rle.mit.edu/cpg/research_codes.htm
15   # since the FastFieldSolvers S.R.L. version includes
16   # a couple of bug fixes
17   src = fetchFromGitHub {
18     owner = "ediloren";
19     repo = "FastHenry2";
20     rev = "R${version}";
21     sha256 = "017kcri69zhyhii59kxj1ak0gyfn7jf0qp6p2x3nnljia8njdkcc";
22   };
24   dontConfigure = true;
26   preBuild =
27     ''
28       makeFlagsArray=(
29         CC="gcc"
30         RM="rm"
31         SHELL="sh"
32         "all"
33       )
34     ''
35     + (
36       if stdenv.hostPlatform.isx86_64 then
37         ''
38           makeFlagsArray+=(
39             CFLAGS="-fcommon -O -DFOUR -m64"
40           );
41         ''
42       else
43         ''
44             makeFlagsArray+=(
45               CFLAGS="-fcommon -O -DFOUR"
46           );
47         ''
48     );
50   installPhase = ''
51     mkdir -p $out/bin
52     cp -r bin/* $out/bin/
53     mkdir -p $out/share/doc/${pname}-${version}
54     cp -r doc/* $out/share/doc/${pname}-${version}
55     mkdir -p $out/share/${pname}-${version}/examples
56     cp -r examples/* $out/share/${pname}-${version}/examples
57   '';
59   meta = with lib; {
60     description = "Multipole-accelerated inductance analysis program";
61     longDescription = ''
62       Fasthenry is an inductance extraction program based on a
63       multipole-accelerated algorithm.'';
64     homepage = "https://www.fastfieldsolvers.com/fasthenry2.htm";
65     license = licenses.lgpl2Only;
66     maintainers = with maintainers; [ fbeffa ];
67     platforms = intersectLists (platforms.linux) (platforms.x86_64 ++ platforms.x86);
68   };