1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.package import *
class Wayland(MesonPackage, AutotoolsPackage):
"""Wayland is a project to define a protocol for a compositor to talk
to its clients as well as a library implementation of the protocol.
The compositor can be a standalone display server running on Linux
kernel modesetting and evdev input devices, an X application, or a
wayland client itself. The clients can be traditional applications,
X servers(rootless or fullscreen) or other display servers."""
homepage = "https://wayland.freedesktop.org/"
url = "https://gitlab.freedesktop.org/wayland/wayland/-/archive/1.18.0/wayland-1.18.0.tar.gz"
list_url = "https://gitlab.freedesktop.org/wayland/wayland/-/tags"
git = "https://gitlab.freedesktop.org/wayland/wayland/"
maintainers("wdconinc")
build_system(
conditional("autotools", when="@:1.19"),
conditional("meson", when="@1.18:"),
default="meson",
)
variant("doc", default=False, description="Build documentation")
license("MIT")
version("1.22.0", sha256="bbca9c906a8fb8992409ebf51812f19e2a784b2c169d4b784cdd753b4bb448ef")
version("1.21.0", sha256="53b7fa67142e653820030ec049971bcb5e84ac99e05cba5bcb9cb55f43fae4b3")
version("1.20.0", sha256="20523cd6f2c18c3c86725467157c6221e19de76fbfad944042a2d494af3c7a92")
version("1.19.0", sha256="4e3b889468b9a4c2d16fc6489e28d000641e67c45dc97c4f6d9ecd3e261c895f")
version("1.18.0", sha256="8d375719ebfa36b6f2968096fdf0bfa7d39ba110b7956c0032e395e7e012f332")
version("1.17.93", sha256="293536ad23bfed15fc34e2a63bbb511167e8b096c0eba35e805cb64d46ad62ae")
version("1.17.92", sha256="d944a7b999cfe6fee5327a2315c8e5891222c5a88a96e1ca73485978e4990512")
with when("build_system=autotools"):
depends_on("autoconf", type="build")
depends_on("automake", type="build")
depends_on("libtool", type="build")
depends_on("m4", type="build")
with when("build_system=meson"):
depends_on("meson@0.56.0:", type="build")
depends_on("pkgconfig", type="build")
depends_on("libxml2")
depends_on("chrpath")
depends_on("expat")
depends_on("libffi")
with when("+doc"):
depends_on("docbook-xsl", type="build")
depends_on("doxygen", type="build")
depends_on("xmlto", type="build")
depends_on("libxslt", type="build")
depends_on("graphviz+libgd", type="build")
@when("build_system=autotools")
def configure_args(self):
args = []
args.extend(self.enable_or_disable("documentation", variant="doc"))
return args
@when("build_system=meson")
def meson_args(self):
spec = self.spec
opt_bool = lambda c, o: "-D%s=%s" % (o, str(c).lower())
args = []
args.append(opt_bool("+doc" in spec, "documentation"))
return args
|