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
This commit is contained in:
parent
e65be13056
commit
389b1824e9
@ -6,7 +6,7 @@
|
|||||||
from spack.package import *
|
from spack.package import *
|
||||||
|
|
||||||
|
|
||||||
class Gtkplus(MesonPackage):
|
class Gtkplus(AutotoolsPackage, MesonPackage):
|
||||||
"""The GTK+ package contains libraries used for creating graphical user
|
"""The GTK+ package contains libraries used for creating graphical user
|
||||||
interfaces for applications."""
|
interfaces for applications."""
|
||||||
|
|
||||||
@ -15,6 +15,12 @@ class Gtkplus(MesonPackage):
|
|||||||
|
|
||||||
license("LGPL-2.0-or-later")
|
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.41", sha256="47da61487af3087a94bc49296fd025ca0bc02f96ef06c556e7c8988bd651b6fa")
|
||||||
version("3.24.29", sha256="f57ec4ade8f15cab0c23a80dcaee85b876e70a8823d9105f067ce335a8268caa")
|
version("3.24.29", sha256="f57ec4ade8f15cab0c23a80dcaee85b876e70a8823d9105f067ce335a8268caa")
|
||||||
version("3.24.26", sha256="2cc1b2dc5cad15d25b6abd115c55ffd8331e8d4677745dd3ce6db725b4fff1e9")
|
version("3.24.26", sha256="2cc1b2dc5cad15d25b6abd115c55ffd8331e8d4677745dd3ce6db725b4fff1e9")
|
||||||
@ -45,8 +51,8 @@ class Gtkplus(MesonPackage):
|
|||||||
variant("cups", default=False, description="enable cups support")
|
variant("cups", default=False, description="enable cups support")
|
||||||
|
|
||||||
# See meson.build for version requirements
|
# See meson.build for version requirements
|
||||||
depends_on("meson@0.48.0:", when="@3.24:", type="build")
|
depends_on("meson@0.48.0:", when="build_system=meson", type="build")
|
||||||
depends_on("ninja", when="@3.24:", type="build")
|
depends_on("ninja", when="build_system=meson", type="build")
|
||||||
# Needed to build man pages:
|
# Needed to build man pages:
|
||||||
# depends_on('docbook-xml', when='@3.24:', type='build')
|
# depends_on('docbook-xml', when='@3.24:', type='build')
|
||||||
# depends_on('docbook-xsl', when='@3.24:', type='build')
|
# depends_on('docbook-xsl', when='@3.24:', type='build')
|
||||||
@ -92,13 +98,19 @@ def patch(self):
|
|||||||
def setup_run_environment(self, env):
|
def setup_run_environment(self, env):
|
||||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
||||||
|
|
||||||
|
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"))
|
||||||
|
|
||||||
|
|
||||||
|
class BuildEnvironment:
|
||||||
|
|
||||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
||||||
|
|
||||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
|
||||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
class MesonBuilder(BuildEnvironment, spack.build_systems.meson.MesonBuilder):
|
||||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
|
||||||
|
|
||||||
def meson_args(self):
|
def meson_args(self):
|
||||||
args = []
|
args = []
|
||||||
@ -114,6 +126,13 @@ def meson_args(self):
|
|||||||
|
|
||||||
return args
|
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):
|
def configure_args(self):
|
||||||
true = which("true")
|
true = which("true")
|
||||||
args = [
|
args = [
|
||||||
@ -129,18 +148,6 @@ def configure_args(self):
|
|||||||
args.append("--disable-cups")
|
args.append("--disable-cups")
|
||||||
return args
|
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):
|
def check(self):
|
||||||
"""All build time checks open windows in the X server, don't do that"""
|
"""All build time checks open windows in the X server, don't do that"""
|
||||||
pass
|
pass
|
||||||
|
Loading…
Reference in New Issue
Block a user