From 99a83fbe1de57a25fc779a153075cdae7cc3e46e Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov <ab@fmap.me> Date: Fri, 3 Feb 2017 17:46:20 +0300 Subject: [PATCH] qt5.env: use buildEnv This both simplifies the code and ensures that libraries are linked too. --- pkgs/development/libraries/qt-5/qt-env.nix | 44 ++++++++++------------ 1 file changed, 19 insertions(+), 25 deletions(-) diff --git a/pkgs/development/libraries/qt-5/qt-env.nix b/pkgs/development/libraries/qt-5/qt-env.nix index b2b7121d51d..fad68fbd745 100644 --- a/pkgs/development/libraries/qt-5/qt-env.nix +++ b/pkgs/development/libraries/qt-5/qt-env.nix @@ -1,28 +1,22 @@ -{ lib, runCommand, lndir, qtbase }: name: paths: +{ lib, buildEnv, qtbase }: name: paths: -runCommand name { qtbase = qtbase.dev; paths = lib.chooseDevOutputs paths; } '' +buildEnv { + inherit name; + paths = [ qtbase ] ++ paths; -mkdir -p "$out/bin" "$out/mkspecs" "$out/include" "$out/lib" "$out/share" + pathsToLink = [ "/bin" "/mkspecs" "/include" "/lib" "/share" ]; + extraOutputsToInstall = [ "dev" ]; -cp "$qtbase/bin/qmake" "$out/bin" -cat >"$out/bin/qt.conf" <<EOF -[Paths] -Prefix = $out -Plugins = lib/qt5/plugins -Imports = lib/qt5/imports -Qml2Imports = lib/qt5/qml -Documentation = share/doc/qt5 -EOF - -for pkg in $paths $qtbase; do - if [[ -d "$pkg/mkspecs" ]]; then - ${lndir}/bin/lndir -silent "$pkg/mkspecs" "$out/mkspecs" - - for dir in bin include lib share; do - if [[ -d "$pkg/$dir" ]]; then - ${lndir}/bin/lndir -silent "$pkg/$dir" "$out/$dir" - fi - done - fi -done -'' + postBuild = '' + rm "$out/bin/qmake" + cp "${qtbase.dev}/bin/qmake" "$out/bin" + cat >"$out/bin/qt.conf" <<EOF + [Paths] + Prefix = $out + Plugins = lib/qt5/plugins + Imports = lib/qt5/imports + Qml2Imports = lib/qt5/qml + Documentation = share/doc/qt5 + EOF + ''; +}