Hello!

On Mon, Aug 01, 2016 at 11:10:34PM +0200, Andreas Enge wrote:
> Sorry for the long message, which follows my own path in trying to debug
> this mess. To quickly summarise it:
> I think we need to modify the qtbase package to drop the
> NO_DEFAULT_PATH from Qt5Config.cmake.

I think that the attached patch solves the problem. Now the kwindowsystem
package fails as follows:
-- Found XCB: 
/gnu/store/jsy847sch7lnxjppkn1s1as22dbx74fx-libxcb-1.11/lib/libxcb.so;/gnu/store/3f6ysnalwhc73hj68c2vy9nc5zq8f3vr-xcb-util-keysyms-0.4.0/lib/libxcb-keysyms.so
 (found version "1.11") found components:  XCB KEYSYMS 
CMake Error at 
/gnu/store/kmbklh40857lxqvb8xvp6x9yvlfava79-extra-cmake-modules-5.24.0/share/ECM/modules/ECMPoQmTools.cmake:131
 (find_package):
  Could not find a package configuration file provided by "Qt5LinguistTools"
  with any of the following names:

    Qt5LinguistToolsConfig.cmake
    qt5linguisttools-config.cmake

  Add the installation prefix of "Qt5LinguistTools" to CMAKE_PREFIX_PATH or
  set "Qt5LinguistTools_DIR" to a directory containing one of the above
  files.  If "Qt5LinguistTools" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  
/gnu/store/kmbklh40857lxqvb8xvp6x9yvlfava79-extra-cmake-modules-5.24.0/share/ECM/modules/ECMPoQmTools.cmake:207
 (ecm_process_po_files_as_qm)
  CMakeLists.txt:64 (ecm_install_po_files_as_qm)

Otherwise said, it goes beyond the line where it failed previously. I am just
surprised it does not print anything about Qt5X11Extras. In any case, the
CMakeCache.txt file in the build directory now contains the following lines:
   //The directory containing a CMake configuration file for Qt5X11Extras.
   
Qt5X11Extras_DIR:PATH=/gnu/store/wlzvy1427jx3fjm9yj1yr4vv9fi065hc-qtx11extras-5.6.1-1/lib/cmake/Qt5X11Extras

I think that before continuing work on KDE, it may be a good idea to package
the missing Qt modules. (Well, I think we just need qttools here; which
makes me think that we might also want to add them as native inputs to
cmake-extra-modules before enabling tests, if we manage to do this.)

Andreas

>From 2a4591e2eed1f0f5d88fe0a944cc7d294f5f37ab Mon Sep 17 00:00:00 2001
From: Andreas Enge <andr...@enge.fr>
Date: Mon, 1 Aug 2016 23:54:43 +0200
Subject: [PATCH] gnu: qtbase: Modify .cmake files to enable modules in
 different packages.

* gnu/packages/qt.scm (qtbase)[arguments]: In the configure phase, modify
.cmake and .cmake.in files so that find_package honors CMAKE_PREFIX_PATH.
---
 gnu/packages/qt.scm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index f246550..d1701c6 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -393,6 +393,13 @@ developers using C++ or QML, a CSS & JavaScript like 
language.")
                  (("/bin/pwd") (which "pwd")))
                (substitute* "src/corelib/global/global.pri"
                  (("/bin/ls") (which "ls")))
+               ;; The configuration files for other Qt5 packages are searched
+               ;; through a call to "find_package" in Qt5Config.cmake, which
+               ;; disables the use of CMAKE_PREFIX_PATH via the parameter
+               ;; "NO_DEFAULT_PATH". Re-enable it so that the different
+               ;; components can be installed in different places.
+               (substitute* (find-files "." ".*\\.cmake")
+                 (("NO_DEFAULT_PATH") ""))
                ;; do not pass "--enable-fast-install", which makes the
                ;; configure process fail
                (zero? (system*
-- 
2.9.1

Reply via email to