68 lines
1.4 KiB
Nix
68 lines
1.4 KiB
Nix
![]() |
{
|
||
|
stdenv,
|
||
|
lib,
|
||
|
fetchFromGitLab,
|
||
|
fetchurl,
|
||
|
fixDarwinDylibNames,
|
||
|
qtbase,
|
||
|
qmake,
|
||
|
}:
|
||
|
|
||
|
stdenv.mkDerivation (finalAttrs: {
|
||
|
pname = "qcustomplot";
|
||
|
version = "2.1.1";
|
||
|
|
||
|
srcs = [
|
||
|
(fetchFromGitLab {
|
||
|
owner = "ecme2";
|
||
|
repo = "QCustomPlot";
|
||
|
tag = "v${finalAttrs.version}";
|
||
|
hash = "sha256-BW8H/vDbhK3b8t8oB92icEBemzcdRdrIz2aKqlUi6UU=";
|
||
|
})
|
||
|
(fetchurl {
|
||
|
url = "https://www.qcustomplot.com/release/${finalAttrs.version}/QCustomPlot-source.tar.gz";
|
||
|
hash = "sha256-Xi0i3sd5248B81fL2yXlT7z5ca2u516ujXrSRESHGC8=";
|
||
|
})
|
||
|
];
|
||
|
|
||
|
sourceRoot = ".";
|
||
|
|
||
|
buildInputs = [ qtbase ];
|
||
|
|
||
|
nativeBuildInputs = [
|
||
|
qmake
|
||
|
]
|
||
|
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||
|
fixDarwinDylibNames
|
||
|
];
|
||
|
|
||
|
env.LANG = "C.UTF-8";
|
||
|
|
||
|
qmakeFlags = [ "sharedlib/sharedlib-compilation/sharedlib-compilation.pro" ];
|
||
|
|
||
|
dontWrapQtApps = true;
|
||
|
|
||
|
postUnpack = ''
|
||
|
cp -rv source/* .
|
||
|
cp -rv qcustomplot-source/* .
|
||
|
'';
|
||
|
|
||
|
installPhase = ''
|
||
|
runHook preInstall
|
||
|
|
||
|
install -vDm 644 "qcustomplot.h" -t "$out/include/"
|
||
|
install -vdm 755 "$out/lib/"
|
||
|
cp -av libqcustomplot*${stdenv.hostPlatform.extensions.sharedLibrary}* "$out/lib/"
|
||
|
|
||
|
runHook postInstall
|
||
|
'';
|
||
|
|
||
|
meta = {
|
||
|
homepage = "https://qtcustomplot.com/";
|
||
|
description = "Qt C++ widget for plotting and data visualization";
|
||
|
license = lib.licenses.gpl3Plus;
|
||
|
platforms = lib.platforms.unix;
|
||
|
maintainers = with lib.maintainers; [ Cryolitia ];
|
||
|
};
|
||
|
})
|