gnu: qttools-5: Patch path to qmake for the lprodump command.

This previously would lead to this cryptic error: "WARNING: Could not find
qmake spec 'default'", which turned out to be caused by lprodump erroneously
attempting to run 'qmake' from its own prefix (qmake is from the qtbase
package, not qttools).

* gnu/packages/qt.scm (qttools-5) [phases]
<patch-qmake>: New phase.

Change-Id: I6e9a2d35fec987451fd1e30b84a82023dbfd3316
This commit is contained in:
Maxim Cournoyer 2024-03-09 16:49:55 -05:00
parent d8c9d27ffb
commit 59ff9d0088
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -2171,7 +2171,18 @@ (define-public qttools-5
"1bkx2sc5hyldarc7w76ymv7dlcna3ib9r2kp67jdqcf856bnrx36")))) "1bkx2sc5hyldarc7w76ymv7dlcna3ib9r2kp67jdqcf856bnrx36"))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments qtsvg-5) (substitute-keyword-arguments (package-arguments qtsvg-5)
((#:tests? _ #f) #f))) ; TODO: Enable the tests ((#:tests? _ #f) #f) ; TODO: Enable the tests
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
(add-after 'unpack 'patch-qmake
(lambda* (#:key inputs #:allow-other-keys)
;; Adjust the default location of the 'qmake' command known to
;; the 'lprodump' command, which would otherwise look for it
;; in its own bindir.
(substitute* "src/linguist/lprodump/main.cpp"
(("app.applicationDirPath\\() \\+ QLatin1String\\(\"/qmake\")")
(format #f "QLatin1String(~s)"
(search-input-file inputs "bin/qmake"))))))))))
(native-inputs (list perl qtdeclarative-5 vulkan-headers)) (native-inputs (list perl qtdeclarative-5 vulkan-headers))
(inputs (list mesa qtbase-5)) (inputs (list mesa qtbase-5))
(synopsis "Qt Tools and Designer modules") (synopsis "Qt Tools and Designer modules")