summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWouter Deconinck <wdconinc@gmail.com>2024-10-12 14:49:23 -0500
committerGitHub <noreply@github.com>2024-10-12 21:49:23 +0200
commit389b1824e9209d6c445b581c5abfa6c79386ce8a (patch)
treedd9422f4c2f1004cb2398bf9bdb8ba22dda008ce
parente65be13056b1b71d1c5fe92bdf58d3713cd76473 (diff)
downloadspack-389b1824e9209d6c445b581c5abfa6c79386ce8a.tar.gz
spack-389b1824e9209d6c445b581c5abfa6c79386ce8a.tar.bz2
spack-389b1824e9209d6c445b581c5abfa6c79386ce8a.tar.xz
spack-389b1824e9209d6c445b581c5abfa6c79386ce8a.zip
gtkplus: build_system={autotools,meson} (#46869)
* gtkplus: build_system={autotools,meson} * gtkplus: fix style, fix spelling * gtkplus: setup_dependent_build_environment in mixin * gtkplus: swap setup_dependent_{run,build}_environment
-rw-r--r--var/spack/repos/builtin/packages/gtkplus/package.py41
1 files changed, 24 insertions, 17 deletions
diff --git a/var/spack/repos/builtin/packages/gtkplus/package.py b/var/spack/repos/builtin/packages/gtkplus/package.py
index 05496cccba..0db55334b0 100644
--- a/var/spack/repos/builtin/packages/gtkplus/package.py
+++ b/var/spack/repos/builtin/packages/gtkplus/package.py
@@ -6,7 +6,7 @@
from spack.package import *
-class Gtkplus(MesonPackage):
+class Gtkplus(AutotoolsPackage, MesonPackage):
"""The GTK+ package contains libraries used for creating graphical user
interfaces for applications."""
@@ -15,6 +15,12 @@ class Gtkplus(MesonPackage):
license("LGPL-2.0-or-later")
+ build_system(
+ conditional("autotools", when="@:3.24.35"),
+ conditional("meson", when="@3.24.9:"),
+ default="autotools",
+ )
+
version("3.24.41", sha256="47da61487af3087a94bc49296fd025ca0bc02f96ef06c556e7c8988bd651b6fa")
version("3.24.29", sha256="f57ec4ade8f15cab0c23a80dcaee85b876e70a8823d9105f067ce335a8268caa")
version("3.24.26", sha256="2cc1b2dc5cad15d25b6abd115c55ffd8331e8d4677745dd3ce6db725b4fff1e9")
@@ -45,8 +51,8 @@ class Gtkplus(MesonPackage):
variant("cups", default=False, description="enable cups support")
# See meson.build for version requirements
- depends_on("meson@0.48.0:", when="@3.24:", type="build")
- depends_on("ninja", when="@3.24:", type="build")
+ depends_on("meson@0.48.0:", when="build_system=meson", type="build")
+ depends_on("ninja", when="build_system=meson", type="build")
# Needed to build man pages:
# depends_on('docbook-xml', when='@3.24:', type='build')
# depends_on('docbook-xsl', when='@3.24:', type='build')
@@ -92,14 +98,20 @@ class Gtkplus(MesonPackage):
def setup_run_environment(self, env):
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
- def setup_dependent_build_environment(self, env, dependent_spec):
+ def setup_dependent_run_environment(self, env, dependent_spec):
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
- def setup_dependent_run_environment(self, env, dependent_spec):
+
+class BuildEnvironment:
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
+
+class MesonBuilder(BuildEnvironment, spack.build_systems.meson.MesonBuilder):
+
def meson_args(self):
args = []
@@ -114,6 +126,13 @@ class Gtkplus(MesonPackage):
return args
+ def check(self):
+ """All build time checks open windows in the X server, don't do that"""
+ pass
+
+
+class AutotoolsBuilder(BuildEnvironment, spack.build_systems.autotools.AutotoolsBuilder):
+
def configure_args(self):
true = which("true")
args = [
@@ -129,18 +148,6 @@ class Gtkplus(MesonPackage):
args.append("--disable-cups")
return args
- @when("@:3.20.10")
- def meson(self, spec, prefix):
- configure(*self.configure_args())
-
- @when("@:3.20.10")
- def build(self, spec, prefix):
- make()
-
- @when("@:3.20.10")
- def install(self, spec, prefix):
- make("install")
-
def check(self):
"""All build time checks open windows in the X server, don't do that"""
pass