From 66c08044a3f78d862d665e305658ecaca3fa6b8b Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Mon, 22 Jul 2024 07:38:46 -0500 Subject: [PATCH] geant4: support Qt5 and Qt6 (#45352) * geant4: support qt5 and qt6 * geant4: update conflict msg --- var/spack/repos/builtin/packages/geant4/package.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/var/spack/repos/builtin/packages/geant4/package.py b/var/spack/repos/builtin/packages/geant4/package.py index a894a47f585943..2de7ab7b861665 100644 --- a/var/spack/repos/builtin/packages/geant4/package.py +++ b/var/spack/repos/builtin/packages/geant4/package.py @@ -166,8 +166,13 @@ def std_when(values): depends_on("libxmu", when="+x11") depends_on("motif", when="+motif") with when("+qt"): - depends_on("qt@5: +opengl") - depends_on("qt@5.9:", when="@11.2:") + depends_on("qmake") + with when("^[virtuals=qmake] qt-base"): + depends_on("qt-base +accessibility +gui +opengl") + with when("^[virtuals=qmake] qt"): + depends_on("qt@5: +opengl") + depends_on("qt@5.9:", when="@11.2:") + conflicts("@:11.1 ^[virtuals=qmake] qt-base", msg="Qt6 not supported before 11.2") # As released, 10.0.4 has inconsistently capitalised filenames # in the cmake files; this patch also enables cxxstd 14 @@ -307,7 +312,9 @@ def cmake_args(self): if "+qt" in spec: options.append(self.define("GEANT4_USE_QT", True)) - options.append(self.define("QT_QMAKE_EXECUTABLE", spec["qt"].prefix.bin.qmake)) + if "^[virtuals=qmake] qt-base" in spec: + options.append(self.define("GEANT4_USE_QT_QT6", True)) + options.append(self.define("QT_QMAKE_EXECUTABLE", spec["qmake"].prefix.bin.qmake)) options.append(self.define_from_variant("GEANT4_USE_VTK", "vtk"))