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
|
# 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 Mosquitto(CMakePackage):
"""Mosquitto is an open source implementation of a server
for version 5.0, 3.1.1, and 3.1 of the MQTT protocol."""
homepage = "https://mosquitto.org"
git = "https://github.com/eclipse/mosquitto"
url = "https://mosquitto.org/files/source/mosquitto-2.0.14.tar.gz"
license("EPL-1.0 OR EPL-2.0")
version("2.0.14", sha256="d0dde8fdb12caf6e2426b4f28081919a2fce3448773bdb8af0d3cd5fe5776925")
version("1.6.15", sha256="5ff2271512f745bf1a451072cd3768a5daed71e90c5179fae12b049d6c02aa0f")
version("1.5.11", sha256="4a3b8a8f5505d27a7a966dd68bfd76f1e69feb51796d1b46b7271d1bb5a1a299")
version("1.4.15", sha256="7d3b3e245a3b4ec94b05678c8199c806359737949f4cfe0bf936184f6ca89a83")
version("1.3.5", sha256="16eb3dbef183827665feee9288362c7352cd016ba04ca0402a0ccf857d1c2ab2")
variant("tls", default=True, description="Build with TLS support")
variant("cjson", default=True, description="Build with cJSON support", when="@2.0.0:")
variant("static", default=False, description="Build with static libraries", when="@1.5.0:")
variant("c-ares", default=False, description="Build with c-ares support", when="@1.4.0:")
variant("websocket", default=False, description="Build with websocket support", when="@1.4.0:")
depends_on("openssl", when="+tls")
depends_on("cjson", when="+cjson")
depends_on("c-ares", when="+c-ares")
depends_on("libwebsockets", when="+websocket")
def cmake_args(self):
args = [
self.define("DOCUMENTATION", "no"),
self.define_from_variant("WITH_CJSON", "cjson"),
self.define_from_variant("WITH_TLS", "tls"),
self.define_from_variant("WITH_STATIC_LIBRARIES", "static"),
self.define_from_variant("WITH_SRV", "c-ares"),
self.define_from_variant("WITH_WEBSOCKETS", "websocket"),
]
return args
|