at master 1.1 kB view raw
1{ 2 pkgsBuildBuild, 3 qtModule, 4 stdenv, 5 lib, 6 qtbase, 7 qtdeclarative, 8 cups, 9 llvmPackages, 10 # clang-based c++ parser for qdoc and lupdate 11 withClang ? false, 12}: 13 14qtModule { 15 pname = "qttools"; 16 buildInputs = lib.optionals withClang [ 17 llvmPackages.libclang 18 llvmPackages.llvm 19 ]; 20 propagatedBuildInputs = [ 21 qtbase 22 qtdeclarative 23 ] 24 ++ lib.optionals stdenv.hostPlatform.isDarwin [ cups ]; 25 cmakeFlags = lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [ 26 "-DQt6LinguistTools_DIR=${pkgsBuildBuild.qt6.qttools}/lib/cmake/Qt6LinguistTools" 27 "-DQt6ToolsTools_DIR=${pkgsBuildBuild.qt6.qttools}/lib/cmake/Qt6ToolsTools" 28 ]; 29 patches = [ 30 ./paths.patch 31 ]; 32 env.NIX_CFLAGS_COMPILE = toString [ 33 "-DNIX_OUTPUT_OUT=\"${placeholder "out"}\"" 34 ]; 35 postPatch = '' 36 substituteInPlace \ 37 src/qdoc/catch/CMakeLists.txt \ 38 src/qdoc/catch_generators/CMakeLists.txt \ 39 src/qdoc/catch_conversions/CMakeLists.txt \ 40 --replace ''\'''${CMAKE_INSTALL_INCLUDEDIR}' "$out/include" 41 ''; 42 postInstall = '' 43 mkdir -p "$dev" 44 ln -s "$out/bin" "$dev/bin" 45 ''; 46}