openxray: 2188-november-2023-rc1 -> 2921-january-2025-rc1 (#375925)
[NixPkgs.git] / pkgs / by-name / li / libqalculate / package.nix
blobd4f2af8e42e9decd3f5427818939ea3e09c0af75
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   intltool,
6   pkg-config,
7   doxygen,
8   autoreconfHook,
9   buildPackages,
10   curl,
11   gettext,
12   libiconv,
13   readline,
14   libxml2,
15   mpfr,
16   icu,
17   gnuplot,
20 stdenv.mkDerivation (finalAttrs: {
21   pname = "libqalculate";
22   version = "5.5.0";
24   src = fetchFromGitHub {
25     owner = "qalculate";
26     repo = "libqalculate";
27     rev = "v${finalAttrs.version}";
28     hash = "sha256-lyewx2dc8EywDvLnOkbrys5ObMR7BkEppN/cpWHPBbg=";
29   };
31   outputs = [
32     "out"
33     "dev"
34     "doc"
35   ];
37   nativeBuildInputs = [
38     intltool
39     pkg-config
40     autoreconfHook
41     doxygen
42   ];
43   depsBuildBuild = [
44     buildPackages.stdenv.cc
45   ];
47   buildInputs = [
48     curl
49     gettext
50     libiconv
51     readline
52   ];
53   propagatedBuildInputs = [
54     libxml2
55     mpfr
56     icu
57   ];
58   enableParallelBuilding = true;
60   preConfigure = ''
61     intltoolize -f
62   '';
64   patchPhase =
65     ''
66       substituteInPlace libqalculate/Calculator-plot.cc \
67         --replace 'commandline = "gnuplot"' 'commandline = "${gnuplot}/bin/gnuplot"' \
68         --replace '"gnuplot - ' '"${gnuplot}/bin/gnuplot - '
69     ''
70     + lib.optionalString stdenv.cc.isClang ''
71       substituteInPlace src/qalc.cc \
72         --replace 'printf(_("aborted"))' 'printf("%s", _("aborted"))'
73     '';
75   preBuild = ''
76     pushd docs/reference
77     doxygen Doxyfile
78     popd
79   '';
81   meta = with lib; {
82     description = "Advanced calculator library";
83     homepage = "http://qalculate.github.io";
84     license = licenses.gpl2Plus;
85     maintainers = with maintainers; [
86       gebner
87       doronbehar
88       alyaeanyx
89     ];
90     mainProgram = "qalc";
91     platforms = platforms.all;
92   };