nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
fork

Configure Feed

Select the types of activity you want to include in your feed.

libsForQt5.qttools: Add option for building qdoc (#245379)

authored by

K900 and committed by
GitHub
8d4d6a52 727c8491

+128 -14
+53
pkgs/development/libraries/qt-5/modules/qttools-QT_HOST_DATA-refs.patch
··· 1 + From b54dd2923448f2ae7402cf2364f40337d6c3cb6d Mon Sep 17 00:00:00 2001 2 + From: OPNA2608 <opna2608@protonmail.com> 3 + Date: Wed, 7 Aug 2024 22:47:00 +0200 4 + Subject: [PATCH] Patch QT_HOST_DATA references 5 + 6 + --- 7 + src/linguist/linguist.pro | 2 +- 8 + src/qdoc/qdoc.pro | 2 +- 9 + src/qtattributionsscanner/qtattributionsscanner.pro | 2 +- 10 + 3 files changed, 3 insertions(+), 3 deletions(-) 11 + 12 + diff --git a/src/linguist/linguist.pro b/src/linguist/linguist.pro 13 + index 7638c7710..bd8798818 100644 14 + --- a/src/linguist/linguist.pro 15 + +++ b/src/linguist/linguist.pro 16 + @@ -47,7 +47,7 @@ contains(CMAKE_BIN_DIR, "^\\.\\./.*") { 17 + load(qt_build_paths) 18 + 19 + cmake_linguist_config_file.input = $$PWD/Qt5LinguistToolsConfig.cmake.in 20 + -cmake_linguist_config_version_file.input = $$[QT_HOST_DATA/src]/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in 21 + +cmake_linguist_config_version_file.input = @qtbaseDev@/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in 22 + cmake_linguist_macros_file.input = $$PWD/Qt5LinguistToolsMacros.cmake 23 + CMAKE_PACKAGE_VERSION = $$MODULE_VERSION 24 + cmake_linguist_config_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5LinguistTools/Qt5LinguistToolsConfig.cmake 25 + diff --git a/src/qdoc/qdoc.pro b/src/qdoc/qdoc.pro 26 + index db4b25cf1..19592d50b 100644 27 + --- a/src/qdoc/qdoc.pro 28 + +++ b/src/qdoc/qdoc.pro 29 + @@ -151,7 +151,7 @@ load(qt_build_paths) 30 + equals(QMAKE_HOST.os, Windows): CMAKE_BIN_SUFFIX = ".exe" 31 + 32 + cmake_qdoc_config_file.input = $$PWD/Qt5DocToolsConfig.cmake.in 33 + -cmake_qdoc_config_version_file.input = $$[QT_HOST_DATA/src]/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in 34 + +cmake_qdoc_config_version_file.input = @qtbaseDev@/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in 35 + CMAKE_PACKAGE_VERSION = $$MODULE_VERSION 36 + cmake_qdoc_config_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5DocTools/Qt5DocToolsConfig.cmake 37 + cmake_qdoc_config_version_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5DocTools/Qt5DocToolsConfigVersion.cmake 38 + diff --git a/src/qtattributionsscanner/qtattributionsscanner.pro b/src/qtattributionsscanner/qtattributionsscanner.pro 39 + index d645a22a9..5d4239f83 100644 40 + --- a/src/qtattributionsscanner/qtattributionsscanner.pro 41 + +++ b/src/qtattributionsscanner/qtattributionsscanner.pro 42 + @@ -51,7 +51,7 @@ load(qt_build_paths) 43 + equals(QMAKE_HOST.os, Windows): CMAKE_BIN_SUFFIX = ".exe" 44 + 45 + cmake_qattributionsscanner_config_file.input = $$PWD/Qt5AttributionsScannerTools.cmake.in 46 + -cmake_qattributionsscanner_config_version_file.input = $$[QT_HOST_DATA/src]/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in 47 + +cmake_qattributionsscanner_config_version_file.input = @qtbaseDev@/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in 48 + CMAKE_PACKAGE_VERSION = $$MODULE_VERSION 49 + cmake_qattributionsscanner_config_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5AttributionsScannerTools/Qt5AttributionsScannerToolsConfig.cmake 50 + cmake_qattributionsscanner_config_version_file.output = $$MODULE_BASE_OUTDIR/lib/cmake/Qt5AttributionsScannerTools/Qt5AttributionsScannerToolsConfigVersion.cmake 51 + -- 52 + 2.44.1 53 +
+34
pkgs/development/libraries/qt-5/modules/qttools-libclang-main-header.patch
··· 1 + From a1fb301a0b9b59f420454be1ebeb05ce0547da2c Mon Sep 17 00:00:00 2001 2 + From: OPNA2608 <opna2608@protonmail.com> 3 + Date: Fri, 6 Sep 2024 14:20:05 +0200 4 + Subject: [PATCH] Patch includedir for libclang main header 5 + 6 + --- 7 + src/qdoc/configure.pri | 4 ++-- 8 + 1 file changed, 2 insertions(+), 2 deletions(-) 9 + 10 + diff --git a/src/qdoc/configure.pri b/src/qdoc/configure.pri 11 + index 4f3d77603..8fe8bc439 100644 12 + --- a/src/qdoc/configure.pri 13 + +++ b/src/qdoc/configure.pri 14 + @@ -71,7 +71,7 @@ defineTest(qtConfTest_libclang) { 15 + LLVM_INSTALL_DIR = $$system("$$candidate --prefix 2>$$QMAKE_SYSTEM_NULL_DEVICE") 16 + !isEmpty(LLVM_INSTALL_DIR) { 17 + CLANG_INCLUDEPATH = $$system("$$candidate --includedir 2>/dev/null") 18 + - LIBCLANG_MAIN_HEADER = $$CLANG_INCLUDEPATH/clang-c/Index.h 19 + + LIBCLANG_MAIN_HEADER = @libclangDev@/include/clang-c/Index.h 20 + !exists($$LIBCLANG_MAIN_HEADER) { 21 + !isEmpty(LLVM_INSTALL_DIR): \ 22 + qtLog("Cannot find libclang's main header file, candidate: $${LIBCLANG_MAIN_HEADER}.") 23 + @@ -121,7 +121,7 @@ defineTest(qtConfTest_libclang) { 24 + return(false) 25 + } 26 + 27 + - LIBCLANG_MAIN_HEADER = $$CLANG_INCLUDEPATH/clang-c/Index.h 28 + + LIBCLANG_MAIN_HEADER = @libclangDev@/include/clang-c/Index.h 29 + !exists($$LIBCLANG_MAIN_HEADER) { 30 + !isEmpty(LLVM_INSTALL_DIR): \ 31 + qtLog("Cannot find libclang's main header file, candidate: $${LIBCLANG_MAIN_HEADER}.") 32 + -- 33 + 2.44.1 34 +
+41 -14
pkgs/development/libraries/qt-5/modules/qttools.nix
··· 1 - { qtModule, stdenv, lib, qtbase, qtdeclarative }: 1 + { 2 + qtModule, 3 + stdenv, 4 + lib, 5 + qtbase, 6 + qtdeclarative, 7 + substituteAll, 8 + llvmPackages, 9 + }: 2 10 3 11 qtModule { 4 12 pname = "qttools"; 5 - propagatedBuildInputs = [ qtbase qtdeclarative ]; 6 - outputs = [ "out" "dev" "bin" ]; 7 13 8 - # fixQtBuiltinPaths overwrites a builtin path we should keep 9 - postPatch = '' 10 - sed -i "src/linguist/linguist.pro" \ 11 - -e '/^cmake_linguist_config_version_file.input =/ s|$$\[QT_HOST_DATA.*\]|${lib.getDev qtbase}|' 12 - sed -i "src/qtattributionsscanner/qtattributionsscanner.pro" \ 13 - -e '/^cmake_qattributionsscanner_config_version_file.input =/ s|$$\[QT_HOST_DATA.*\]|${lib.getDev qtbase}|' 14 - ''; 14 + outputs = [ 15 + "out" 16 + "dev" 17 + "bin" 18 + ]; 19 + 20 + buildInputs = with llvmPackages; [ 21 + libclang 22 + libllvm 23 + ]; 24 + 25 + propagatedBuildInputs = [ 26 + qtbase 27 + qtdeclarative 28 + ]; 29 + 30 + patches = [ 31 + # fixQtBuiltinPaths overwrites builtin paths we should keep 32 + (substituteAll { 33 + src = ./qttools-QT_HOST_DATA-refs.patch; 34 + qtbaseDev = lib.getDev qtbase; 35 + }) 36 + 37 + (substituteAll { 38 + src = ./qttools-libclang-main-header.patch; 39 + libclangDev = lib.getDev llvmPackages.libclang; 40 + }) 41 + ]; 15 42 16 43 devTools = [ 17 44 "bin/qcollectiongenerator" ··· 59 32 "bin/qthelpconverter" 60 33 "bin/lprodump" 61 34 "bin/qdistancefieldgenerator" 62 - ] ++ lib.optionals stdenv.isDarwin [ 63 - "bin/macdeployqt" 64 - ]; 35 + ] ++ lib.optionals stdenv.isDarwin [ "bin/macdeployqt" ]; 65 36 66 - env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && qtdeclarative != null) ''-DNIXPKGS_QMLIMPORTSCANNER="${qtdeclarative.dev}/bin/qmlimportscanner"''; 37 + env.NIX_CFLAGS_COMPILE = lib.optionalString ( 38 + stdenv.isDarwin && qtdeclarative != null 39 + ) ''-DNIXPKGS_QMLIMPORTSCANNER="${qtdeclarative.dev}/bin/qmlimportscanner"''; 67 40 68 41 setupHook = ../hooks/qttools-setup-hook.sh; 69 42 }