From b49b9da3ce990d4420145dc1a4dd43fd8fa71ee0 Mon Sep 17 00:00:00 2001 From: Bernd Amend Date: Mon, 4 Sep 2017 00:54:34 +0200 Subject: [PATCH] cmake: add withQt5 option and make it the default --- .../tools/build-managers/cmake/default.nix | 11 ++++++++--- pkgs/top-level/all-packages.nix | 5 +++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index 2668489e58b2..a912b04d217f 100644 --- a/pkgs/development/tools/build-managers/cmake/default.nix +++ b/pkgs/development/tools/build-managers/cmake/default.nix @@ -6,8 +6,12 @@ , useSharedLibraries ? (!isBootstrap && !stdenv.isCygwin) , useNcurses ? false, ncurses , useQt4 ? false, qt4 +, withQt5 ? false, qtbase }: +assert withQt5 -> useQt4 == false; +assert useQt4 -> withQt5 == false; + with stdenv.lib; let @@ -18,7 +22,7 @@ let in stdenv.mkDerivation rec { - name = "cmake-${os isBootstrap "boot-"}${os useNcurses "cursesUI-"}${os useQt4 "qt4UI-"}${version}"; + name = "cmake-${os isBootstrap "boot-"}${os useNcurses "cursesUI-"}${os withQt5 "qt5UI-"}${os useQt4 "qt4UI-"}${version}"; inherit majorVersion; @@ -46,7 +50,8 @@ stdenv.mkDerivation rec { [ setupHook pkgconfig ] ++ optionals useSharedLibraries [ bzip2 curl expat libarchive xz zlib libuv rhash ] ++ optional useNcurses ncurses - ++ optional useQt4 qt4; + ++ optional useQt4 qt4 + ++ optional withQt5 qtbase; propagatedBuildInputs = optional stdenv.isDarwin ps; @@ -63,7 +68,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--docdir=share/doc/${name}" ] ++ (if useSharedLibraries then [ "--no-system-jsoncpp" "--system-libs" ] else [ "--no-system-libs" ]) # FIXME: cleanup - ++ optional useQt4 "--qt-gui" + ++ optional (useQt4 || withQt5) "--qt-gui" ++ optionals (!useNcurses) [ "--" "-DBUILD_CursesDialog=OFF" ]; dontUseCmakeConfigure = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9c0671ef80ab..cb5e45afbcb7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6882,13 +6882,14 @@ with pkgs; inherit (darwin) ps; }; - cmake = callPackage ../development/tools/build-managers/cmake { + cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake { inherit (darwin) ps; }; cmakeCurses = cmake.override { useNcurses = true; }; - cmakeWithGui = cmakeCurses.override { useQt4 = true; }; + cmakeWithGui = cmakeCurses.override { withQt5 = true; }; + cmakeWithQt4Gui = cmakeCurses.override { useQt4 = true; }; # Does not actually depend on Qt 5 inherit (kdeFrameworks) extra-cmake-modules kapidox kdoctools;