jolt 0.9.419__py3-none-any.whl → 0.9.430__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- jolt/cache.py +19 -0
- jolt/cli.py +3 -2
- jolt/filesystem.py +2 -2
- jolt/log.py +12 -2
- jolt/pkgs/abseil.py +42 -0
- jolt/pkgs/asio.py +25 -0
- jolt/pkgs/autoconf.py +41 -0
- jolt/pkgs/automake.py +41 -0
- jolt/pkgs/b2.py +31 -0
- jolt/pkgs/boost.py +111 -0
- jolt/pkgs/boringssl.py +32 -0
- jolt/pkgs/busybox.py +39 -0
- jolt/pkgs/bzip2.py +43 -0
- jolt/pkgs/cares.py +29 -0
- jolt/pkgs/catch2.py +36 -0
- jolt/pkgs/cbindgen.py +17 -0
- jolt/pkgs/cista.py +19 -0
- jolt/pkgs/clang.py +44 -0
- jolt/pkgs/cli11.py +23 -0
- jolt/pkgs/cmake.py +48 -0
- jolt/pkgs/cpython.py +196 -0
- jolt/pkgs/crun.py +29 -0
- jolt/pkgs/curl.py +38 -0
- jolt/pkgs/dbus.py +18 -0
- jolt/pkgs/double_conversion.py +24 -0
- jolt/pkgs/fastfloat.py +21 -0
- jolt/pkgs/ffmpeg.py +28 -0
- jolt/pkgs/flatbuffers.py +29 -0
- jolt/pkgs/fmt.py +27 -0
- jolt/pkgs/fstree.py +20 -0
- jolt/pkgs/gflags.py +18 -0
- jolt/pkgs/glib.py +18 -0
- jolt/pkgs/glog.py +25 -0
- jolt/pkgs/glslang.py +21 -0
- jolt/pkgs/golang.py +16 -11
- jolt/pkgs/googlebenchmark.py +18 -0
- jolt/pkgs/googletest.py +46 -0
- jolt/pkgs/gperf.py +15 -0
- jolt/pkgs/grpc.py +73 -0
- jolt/pkgs/hdf5.py +19 -0
- jolt/pkgs/help2man.py +14 -0
- jolt/pkgs/inja.py +28 -0
- jolt/pkgs/jsoncpp.py +31 -0
- jolt/pkgs/libarchive.py +43 -0
- jolt/pkgs/libcap.py +44 -0
- jolt/pkgs/libdrm.py +44 -0
- jolt/pkgs/libedit.py +42 -0
- jolt/pkgs/libevent.py +31 -0
- jolt/pkgs/libexpat.py +27 -0
- jolt/pkgs/libfastjson.py +21 -0
- jolt/pkgs/libffi.py +16 -0
- jolt/pkgs/libglvnd.py +30 -0
- jolt/pkgs/libogg.py +28 -0
- jolt/pkgs/libpciaccess.py +18 -0
- jolt/pkgs/libseccomp.py +21 -0
- jolt/pkgs/libtirpc.py +24 -0
- jolt/pkgs/libtool.py +42 -0
- jolt/pkgs/libunwind.py +35 -0
- jolt/pkgs/libva.py +18 -0
- jolt/pkgs/libvorbis.py +33 -0
- jolt/pkgs/libxml2.py +35 -0
- jolt/pkgs/libxslt.py +17 -0
- jolt/pkgs/libyajl.py +16 -0
- jolt/pkgs/llvm.py +81 -0
- jolt/pkgs/lua.py +54 -0
- jolt/pkgs/lz4.py +26 -0
- jolt/pkgs/m4.py +14 -0
- jolt/pkgs/make.py +17 -0
- jolt/pkgs/mesa.py +81 -0
- jolt/pkgs/meson.py +17 -0
- jolt/pkgs/mstch.py +28 -0
- jolt/pkgs/mysql.py +60 -0
- jolt/pkgs/nasm.py +49 -0
- jolt/pkgs/ncurses.py +30 -0
- jolt/pkgs/ng_log.py +25 -0
- jolt/pkgs/ninja.py +45 -0
- jolt/pkgs/nlohmann_json.py +25 -0
- jolt/pkgs/nodejs.py +19 -11
- jolt/pkgs/opencv.py +24 -0
- jolt/pkgs/openjdk.py +26 -0
- jolt/pkgs/openssl.py +103 -0
- jolt/pkgs/paho.py +76 -0
- jolt/pkgs/patchelf.py +16 -0
- jolt/pkgs/perl.py +42 -0
- jolt/pkgs/pkgconfig.py +64 -0
- jolt/pkgs/poco.py +39 -0
- jolt/pkgs/protobuf.py +77 -0
- jolt/pkgs/pugixml.py +27 -0
- jolt/pkgs/python.py +19 -0
- jolt/pkgs/qt.py +35 -0
- jolt/pkgs/rapidjson.py +26 -0
- jolt/pkgs/rapidyaml.py +28 -0
- jolt/pkgs/re2.py +30 -0
- jolt/pkgs/re2c.py +17 -0
- jolt/pkgs/readline.py +15 -0
- jolt/pkgs/rust.py +41 -0
- jolt/pkgs/sdl.py +28 -0
- jolt/pkgs/simdjson.py +27 -0
- jolt/pkgs/soci.py +46 -0
- jolt/pkgs/spdlog.py +29 -0
- jolt/pkgs/spirv_llvm.py +21 -0
- jolt/pkgs/spirv_tools.py +24 -0
- jolt/pkgs/sqlite.py +83 -0
- jolt/pkgs/ssl.py +12 -0
- jolt/pkgs/texinfo.py +15 -0
- jolt/pkgs/tomlplusplus.py +22 -0
- jolt/pkgs/wayland.py +26 -0
- jolt/pkgs/x11.py +58 -0
- jolt/pkgs/xerces_c.py +20 -0
- jolt/pkgs/xorg.py +360 -0
- jolt/pkgs/xz.py +29 -0
- jolt/pkgs/yamlcpp.py +30 -0
- jolt/pkgs/zeromq.py +47 -0
- jolt/pkgs/zlib.py +69 -0
- jolt/pkgs/zstd.py +33 -0
- jolt/plugins/autotools.py +66 -0
- jolt/plugins/cmake.py +74 -6
- jolt/plugins/cxxinfo.py +7 -0
- jolt/plugins/fetch.py +141 -0
- jolt/plugins/git.py +33 -11
- jolt/plugins/libtool.py +63 -0
- jolt/plugins/meson.py +61 -0
- jolt/plugins/ninja.py +236 -17
- jolt/plugins/pkgconfig.py +219 -0
- jolt/plugins/python.py +137 -0
- jolt/plugins/rust.py +25 -0
- jolt/plugins/selfdeploy/setup.py +1 -0
- jolt/tasks.py +79 -14
- jolt/tools.py +86 -42
- jolt/utils.py +6 -0
- jolt/version.py +1 -1
- {jolt-0.9.419.dist-info → jolt-0.9.430.dist-info}/METADATA +19 -2
- jolt-0.9.430.dist-info/RECORD +207 -0
- jolt-0.9.419.dist-info/RECORD +0 -92
- {jolt-0.9.419.dist-info → jolt-0.9.430.dist-info}/WHEEL +0 -0
- {jolt-0.9.419.dist-info → jolt-0.9.430.dist-info}/entry_points.txt +0 -0
- {jolt-0.9.419.dist-info → jolt-0.9.430.dist-info}/top_level.txt +0 -0
jolt/pkgs/qt.py
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
from jolt import attributes, Parameter, BooleanParameter
|
|
2
|
+
from jolt.pkgs import cmake, dbus, ninja, libglvnd, protobuf
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_dbus_{system}")
|
|
8
|
+
@attributes.requires("requires_git")
|
|
9
|
+
@attributes.requires("requires_{system}_gl_{gl}")
|
|
10
|
+
@attributes.requires("requires_ninja")
|
|
11
|
+
@attributes.requires("requires_protobuf")
|
|
12
|
+
@attributes.system
|
|
13
|
+
@cmake.options("options_{system}_gl_{gl}")
|
|
14
|
+
@cmake.requires()
|
|
15
|
+
@cmake.use_ninja()
|
|
16
|
+
class Qt(cmake.CMake):
|
|
17
|
+
name = "qt"
|
|
18
|
+
version = Parameter("6.10.1", help="Qt version.")
|
|
19
|
+
gl = BooleanParameter(True, help="Enable OpenGL support.")
|
|
20
|
+
webengine = BooleanParameter(False, help="Enable WebEngine module.")
|
|
21
|
+
|
|
22
|
+
generator = "Ninja"
|
|
23
|
+
requires_dbus_linux = ["dbus"]
|
|
24
|
+
requires_git = ["git:path={buildroot}/git-qt,url=https://github.com/qt/qt5.git,rev=v{version},submodules=true"]
|
|
25
|
+
requires_ninja = ["ninja"]
|
|
26
|
+
requires_linux_gl_true = ["libglvnd"]
|
|
27
|
+
requires_protobuf = ["protobuf"]
|
|
28
|
+
srcdir = "{git[qt5]}"
|
|
29
|
+
|
|
30
|
+
options = [
|
|
31
|
+
"BUILD_qtwebengine={webengine[ON,OFF]}",
|
|
32
|
+
]
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
TaskRegistry.get().add_task_class(Qt)
|
jolt/pkgs/rapidjson.py
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
from jolt import attributes, Parameter
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@cmake.requires()
|
|
9
|
+
@cmake.use_ninja()
|
|
10
|
+
class RapidJSON(cmake.CMake):
|
|
11
|
+
name = "rapidjson"
|
|
12
|
+
version = Parameter("24b5e7a", help="rapidjson version.")
|
|
13
|
+
options = ["CMAKE_POLICY_VERSION_MINIMUM=3.5"]
|
|
14
|
+
requires_git = ["git:url=https://github.com/Tencent/rapidjson.git,rev={version}"]
|
|
15
|
+
srcdir = "{git[rapidjson]}"
|
|
16
|
+
options = [
|
|
17
|
+
"RAPIDJSON_BUILD_EXAMPLES=OFF",
|
|
18
|
+
"RAPIDJSON_BUILD_TESTS=OFF",
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
def publish(self, artifact, tools):
|
|
22
|
+
super().publish(artifact, tools)
|
|
23
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
TaskRegistry.get().add_task_class(RapidJSON)
|
jolt/pkgs/rapidyaml.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.plugins import cmake, git
|
|
3
|
+
from jolt.tasks import TaskRegistry
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@attributes.requires("requires_src")
|
|
7
|
+
@cmake.requires()
|
|
8
|
+
@cmake.use_ninja()
|
|
9
|
+
class RapidYAML(cmake.CMake):
|
|
10
|
+
name = "rapidyaml"
|
|
11
|
+
version = Parameter("0.7.0", help="RapidYAML version.")
|
|
12
|
+
shared = BooleanParameter(False, help="Build shared libraries.")
|
|
13
|
+
requires_src = ["git:url=https://github.com/biojppm/rapidyaml.git,rev=v{version},submodules=true"]
|
|
14
|
+
srcdir = "{git[rapidyaml]}"
|
|
15
|
+
options = [
|
|
16
|
+
"BUILD_SHARED_LIBS={shared[ON,OFF]}",
|
|
17
|
+
"RYML_BUILD_TESTS=OFF",
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
def publish(self, artifact, tools):
|
|
21
|
+
super().publish(artifact, tools)
|
|
22
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
23
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
24
|
+
artifact.cxxinfo.libraries.append("ryml")
|
|
25
|
+
artifact.cxxinfo.libraries.append("c4core")
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
TaskRegistry.get().add_task_class(RapidYAML)
|
jolt/pkgs/re2.py
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_abseil")
|
|
8
|
+
@attributes.requires("requires_git")
|
|
9
|
+
@cmake.requires()
|
|
10
|
+
@cmake.use_ninja()
|
|
11
|
+
class RE2(cmake.CMake):
|
|
12
|
+
name = "re2"
|
|
13
|
+
version = Parameter("2025-11-05", help="re2 version.")
|
|
14
|
+
shared = BooleanParameter(False, help="Build shared libraries.")
|
|
15
|
+
requires_abseil = ["abseil:shared={shared}"]
|
|
16
|
+
requires_git = ["git:url=https://github.com/google/re2.git,rev={version}"]
|
|
17
|
+
srcdir = "{git[re2]}"
|
|
18
|
+
options = [
|
|
19
|
+
"BUILD_SHARED_LIBS={shared[ON,OFF]}",
|
|
20
|
+
"RE2_BUILD_TESTING=OFF",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
def publish(self, artifact, tools):
|
|
24
|
+
super().publish(artifact, tools)
|
|
25
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
26
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
27
|
+
artifact.cxxinfo.libraries.append("re2")
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
TaskRegistry.get().add_task_class(RE2)
|
jolt/pkgs/re2c.py
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from jolt import attributes, Parameter
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@cmake.requires()
|
|
9
|
+
@cmake.use_ninja()
|
|
10
|
+
class Re2c(cmake.CMake):
|
|
11
|
+
name = "re2c"
|
|
12
|
+
version = Parameter("4.4", help="re2c version.")
|
|
13
|
+
requires_git = ["git:url=https://github.com/skvadrik/re2c.git,rev={version}"]
|
|
14
|
+
srcdir = "{git[re2c]}"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
TaskRegistry.get().add_task_class(Re2c)
|
jolt/pkgs/readline.py
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from jolt import Parameter, attributes
|
|
2
|
+
from jolt.plugins import autotools, fetch, pkgconfig
|
|
3
|
+
from jolt.tasks import TaskRegistry
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@attributes.requires("requires_src")
|
|
7
|
+
@pkgconfig.to_cxxinfo(["readline"])
|
|
8
|
+
class Readline(autotools.Autotools):
|
|
9
|
+
name = "readline"
|
|
10
|
+
version = Parameter("8.2", help="Readline version.")
|
|
11
|
+
requires_src = ["fetch:alias=src,url=https://ftpmirror.gnu.org/gnu/readline/readline-{version}.tar.gz"]
|
|
12
|
+
srcdir = "{fetch[src]}/readline-{version}"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
TaskRegistry.get().add_task_class(Readline)
|
jolt/pkgs/rust.py
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
from jolt import Download, Parameter, attributes
|
|
2
|
+
from jolt.pkgs import rust
|
|
3
|
+
from jolt.plugins import git, rust
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.attribute("triple", "triple_{system}_{arch}")
|
|
8
|
+
@attributes.arch
|
|
9
|
+
@attributes.system
|
|
10
|
+
class Rust(Download):
|
|
11
|
+
name = "rust"
|
|
12
|
+
version = Parameter("1.92.0", help="Rust version.")
|
|
13
|
+
url = "https://static.rust-lang.org/dist/rust-{version}-{triple}.tar.xz"
|
|
14
|
+
collect = [{"files": "*", "cwd": "rust-{version}-{triple}"}]
|
|
15
|
+
components = ["cargo", "rustc", "rust-std-{triple}"]
|
|
16
|
+
|
|
17
|
+
triple_linux_x86_64 = "x86_64-unknown-linux-gnu"
|
|
18
|
+
triple_windows_x86_64 = "x86_64-pc-windows-msvc"
|
|
19
|
+
triple_darwin_x86_64 = "x86_64-apple-darwin"
|
|
20
|
+
|
|
21
|
+
def publish(self, artifact, tools):
|
|
22
|
+
self.installdir = tools.builddir("install")
|
|
23
|
+
with tools.cwd(self._extractdir, "rust-{version}-{triple}"):
|
|
24
|
+
for component in tools.expand(self.components):
|
|
25
|
+
artifact.collect("*", cwd=component)
|
|
26
|
+
artifact.environ.PATH.append("bin")
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
@attributes.requires("requires_git")
|
|
30
|
+
@attributes.requires("requires_rust")
|
|
31
|
+
class RustBindgen(rust.Rust):
|
|
32
|
+
name = "rust-bindgen"
|
|
33
|
+
version = Parameter("0.72.1", help="Rust Bindgen version.")
|
|
34
|
+
|
|
35
|
+
requires_git = ["git:url=https://github.com/rust-lang/rust-bindgen.git,rev=v{version}"]
|
|
36
|
+
requires_rust = ["rust"]
|
|
37
|
+
srcdir = "{git[rust-bindgen]}/bindgen-cli"
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
TaskRegistry.get().add_task_class(Rust)
|
|
41
|
+
TaskRegistry.get().add_task_class(RustBindgen)
|
jolt/pkgs/sdl.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
from jolt import BooleanParameter, Parameter, attributes
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import cmake, git
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@attributes.system
|
|
9
|
+
@cmake.requires()
|
|
10
|
+
@cmake.use_ninja()
|
|
11
|
+
class SDL(cmake.CMake):
|
|
12
|
+
name = "sdl"
|
|
13
|
+
version = Parameter("3.2.28", help="SDL version.")
|
|
14
|
+
shared = BooleanParameter(False, help="Build shared library")
|
|
15
|
+
requires_git = ["git:url=https://github.com/libsdl-org/SDL.git"]
|
|
16
|
+
srcdir = "{git[SDL]}"
|
|
17
|
+
|
|
18
|
+
def publish(self, artifact, tools):
|
|
19
|
+
super().publish(artifact, tools)
|
|
20
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
21
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
22
|
+
if self.system == "windows":
|
|
23
|
+
artifact.cxxinfo.libraries.append("SDL2{shared[,-static]}")
|
|
24
|
+
else:
|
|
25
|
+
artifact.cxxinfo.libraries.append("SDL2")
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
TaskRegistry.get().add_task_class(SDL)
|
jolt/pkgs/simdjson.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@cmake.requires()
|
|
9
|
+
@cmake.use_ninja()
|
|
10
|
+
class Simdjson(cmake.CMake):
|
|
11
|
+
name = "simdjson"
|
|
12
|
+
version = Parameter("4.2.4", help="simdjson version.")
|
|
13
|
+
shared = BooleanParameter(False, help="Build shared libraries.")
|
|
14
|
+
requires_git = ["git:url=https://github.com/simdjson/simdjson.git,rev=v{version}"]
|
|
15
|
+
srcdir = "{git[simdjson]}"
|
|
16
|
+
options = [
|
|
17
|
+
"BUILD_SHARED_LIBS={shared[ON,OFF]}",
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
def publish(self, artifact, tools):
|
|
21
|
+
super().publish(artifact, tools)
|
|
22
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
23
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
24
|
+
artifact.cxxinfo.libraries.append("simdjson")
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
TaskRegistry.get().add_task_class(Simdjson)
|
jolt/pkgs/soci.py
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.pkgs import boost, cmake, mysql, sqlite
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_boost_{boost[on,off]}")
|
|
8
|
+
@attributes.requires("requires_git")
|
|
9
|
+
@attributes.requires("requires_mysql_{mysql[on,off]}")
|
|
10
|
+
@attributes.requires("requires_sqlite_{sqlite[on,off]}")
|
|
11
|
+
@cmake.requires()
|
|
12
|
+
@cmake.use_ninja()
|
|
13
|
+
class Soci(cmake.CMake):
|
|
14
|
+
name = "soci"
|
|
15
|
+
version = Parameter("4.1.2", help="Soci version")
|
|
16
|
+
shared = BooleanParameter(False, help="Build shared libraries")
|
|
17
|
+
boost = BooleanParameter(False, help="Enable boost support")
|
|
18
|
+
mysql = BooleanParameter(True, help="Enable MySQL support")
|
|
19
|
+
sqlite = BooleanParameter(True, help="Enable sqlite support")
|
|
20
|
+
|
|
21
|
+
requires_boost_on = ["boost"]
|
|
22
|
+
requires_git = ["git:url=https://github.com/SOCI/soci.git,rev=v{version}"]
|
|
23
|
+
requires_mysql_on = ["libmysqlclient"]
|
|
24
|
+
requires_sqlite_on = ["sqlite"]
|
|
25
|
+
srcdir = "{git[soci]}"
|
|
26
|
+
options = [
|
|
27
|
+
"SOCI_TESTS=OFF",
|
|
28
|
+
"SOCI_SHARED={shared[ON,OFF]}",
|
|
29
|
+
"SOCI_SQLITE3={sqlite[ON,OFF]}",
|
|
30
|
+
"SOCI_MYSQL={mysql[ON,OFF]}",
|
|
31
|
+
"WITH_BOOST={boost[ON,OFF]}",
|
|
32
|
+
]
|
|
33
|
+
|
|
34
|
+
def publish(self, artifact, tools):
|
|
35
|
+
super().publish(artifact, tools)
|
|
36
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
37
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
38
|
+
if self.sqlite:
|
|
39
|
+
artifact.cxxinfo.libraries.append("soci_sqlite3")
|
|
40
|
+
if self.mysql:
|
|
41
|
+
artifact.cxxinfo.libraries.append("soci_mysql")
|
|
42
|
+
artifact.cxxinfo.libraries.append("soci_odbc")
|
|
43
|
+
artifact.cxxinfo.libraries.append("soci_core")
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
TaskRegistry.get().add_task_class(Soci)
|
jolt/pkgs/spdlog.py
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@cmake.requires()
|
|
9
|
+
@cmake.use_ninja()
|
|
10
|
+
class Spdlog(cmake.CMake):
|
|
11
|
+
name = "spdlog"
|
|
12
|
+
version = Parameter("1.16.0", help="spdlog version.")
|
|
13
|
+
shared = BooleanParameter(False, help="Build shared libraries.")
|
|
14
|
+
requires_git = ["git:url=https://github.com/gabime/spdlog.git,rev=v{version}"]
|
|
15
|
+
srcdir = "{git[spdlog]}"
|
|
16
|
+
options = [
|
|
17
|
+
"BUILD_SHARED_LIBS={shared[ON,OFF]}",
|
|
18
|
+
"SPDLOG_BUILD_BENCH=OFF",
|
|
19
|
+
"SPDLOG_BUILD_TESTS=OFF",
|
|
20
|
+
]
|
|
21
|
+
|
|
22
|
+
def publish(self, artifact, tools):
|
|
23
|
+
super().publish(artifact, tools)
|
|
24
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
25
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
26
|
+
artifact.cxxinfo.libraries.append("spdlog")
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
TaskRegistry.get().add_task_class(Spdlog)
|
jolt/pkgs/spirv_llvm.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from jolt import attributes, Parameter
|
|
2
|
+
from jolt.pkgs import cmake, llvm, spirv_tools
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@attributes.requires("requires_llvm")
|
|
9
|
+
@attributes.requires("requires_spirv_tools")
|
|
10
|
+
@cmake.requires()
|
|
11
|
+
@cmake.use_ninja()
|
|
12
|
+
class SpirvLLVM(cmake.CMake):
|
|
13
|
+
name = "spirv-llvm-translator"
|
|
14
|
+
version = Parameter("21.1.3", help="SPIRV-LLVM version.")
|
|
15
|
+
requires_git = ["git:url=https://github.com/KhronosGroup/SPIRV-LLVM-Translator.git,rev=v{version}"]
|
|
16
|
+
requires_llvm = ["llvm"]
|
|
17
|
+
requires_spirv_tools = ["spirv-tools"]
|
|
18
|
+
srcdir = "{git[SPIRV-LLVM-Translator]}"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
TaskRegistry.get().add_task_class(SpirvLLVM)
|
jolt/pkgs/spirv_tools.py
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@cmake.requires()
|
|
9
|
+
@cmake.use_ninja()
|
|
10
|
+
class SpirvTools(cmake.CMake):
|
|
11
|
+
name = "spirv-tools"
|
|
12
|
+
version = Parameter("2024.4", help="SPIRV-Tools version.")
|
|
13
|
+
tests = BooleanParameter(False, help="Build tests.")
|
|
14
|
+
requires_git = ["git:url=https://github.com/KhronosGroup/SPIRV-Tools.git,rev=v{version}"]
|
|
15
|
+
srcdir = "{git[SPIRV-Tools]}"
|
|
16
|
+
options = ["SPIRV_SKIP_TESTS={tests[OFF,ON]}"]
|
|
17
|
+
|
|
18
|
+
def run(self, deps, tools):
|
|
19
|
+
with tools.cwd(self.srcdir):
|
|
20
|
+
tools.run("python3 utils/git-sync-deps")
|
|
21
|
+
super().run(deps, tools)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
TaskRegistry.get().add_task_class(SpirvTools)
|
jolt/pkgs/sqlite.py
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
from jolt import BooleanParameter, attributes, Alias, Parameter, Task
|
|
2
|
+
from jolt.plugins import git, autotools
|
|
3
|
+
from jolt.tasks import TaskRegistry
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@attributes.requires("requires_git")
|
|
7
|
+
@autotools.requires()
|
|
8
|
+
class SQLitePosix(autotools.Autotools):
|
|
9
|
+
name = "sqlite/posix"
|
|
10
|
+
version = Parameter("3.51.1", help="sqlite version.")
|
|
11
|
+
shared = BooleanParameter(False, help="Build shared libraries.")
|
|
12
|
+
requires_git = ["git:url=https://github.com/sqlite/sqlite.git,rev=version-{version}"]
|
|
13
|
+
srcdir = "{git[sqlite]}"
|
|
14
|
+
options = [
|
|
15
|
+
"--{shared[enable,disable]}-shared",
|
|
16
|
+
]
|
|
17
|
+
|
|
18
|
+
def publish(self, artifact, tools):
|
|
19
|
+
super().publish(artifact, tools)
|
|
20
|
+
with tools.cwd(self.srcdir):
|
|
21
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
22
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
23
|
+
artifact.cxxinfo.libraries.append("sqlite3")
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
@attributes.common_metadata()
|
|
27
|
+
@attributes.requires("requires_git")
|
|
28
|
+
class SQLiteWin32(Task):
|
|
29
|
+
name = "sqlite/win32"
|
|
30
|
+
version = Parameter("3.51.1", help="sqlite version.")
|
|
31
|
+
shared = BooleanParameter(True, help="Build shared libraries.")
|
|
32
|
+
requires_git = ["git:clean=true,url=https://github.com/sqlite/sqlite.git,rev=version-{version}"]
|
|
33
|
+
srcdir = "{git[sqlite]}"
|
|
34
|
+
|
|
35
|
+
def run(self, deps, tools):
|
|
36
|
+
self.srcdir = tools.expand_path(self.srcdir)
|
|
37
|
+
with tools.cwd(self.srcdir):
|
|
38
|
+
tools.run("nmake -f Makefile.msc sqlite3.exe sqlite3.dll")
|
|
39
|
+
tools.write_file(
|
|
40
|
+
"sqlite3.pc",
|
|
41
|
+
"""
|
|
42
|
+
prefix=${{pcfiledir}}/../..
|
|
43
|
+
exec_prefix=${{prefix}}/bin
|
|
44
|
+
libdir=${{prefix}}/lib
|
|
45
|
+
includedir=${{prefix}}/include
|
|
46
|
+
|
|
47
|
+
Name: SQLite
|
|
48
|
+
Description: SQL database engine
|
|
49
|
+
Version: {version}-{identity}
|
|
50
|
+
Libs: -L${{libdir}} -lsqlite3
|
|
51
|
+
Cflags: -I${{includedir}}
|
|
52
|
+
""")
|
|
53
|
+
|
|
54
|
+
def publish(self, artifact, tools):
|
|
55
|
+
with tools.cwd(self.srcdir):
|
|
56
|
+
if self.shared:
|
|
57
|
+
artifact.collect("sqlite3.dll", "bin/")
|
|
58
|
+
artifact.collect("sqlite3.lib", "lib/")
|
|
59
|
+
else:
|
|
60
|
+
artifact.collect("libsqlite3.lib", "lib/")
|
|
61
|
+
artifact.collect("sqlite3.exe", "bin/")
|
|
62
|
+
artifact.collect("sqlite*.h", "include/")
|
|
63
|
+
artifact.collect("sqlite3.pc", "lib/pkgconfig/")
|
|
64
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
65
|
+
artifact.cxxinfo.libpaths.append("lib")
|
|
66
|
+
artifact.cxxinfo.libraries.append("sqlite3")
|
|
67
|
+
artifact.environ.CMAKE_PREFIX_PATH.append(".")
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
@attributes.requires("requires_{system}")
|
|
71
|
+
@attributes.system
|
|
72
|
+
class SQLite(Alias):
|
|
73
|
+
name = "sqlite"
|
|
74
|
+
version = Parameter("3.51.1", help="sqlite version.")
|
|
75
|
+
shared = BooleanParameter(False, help="Build shared libraries.")
|
|
76
|
+
requires_darwin = ["sqlite/posix:shared={shared},version={version}"]
|
|
77
|
+
requires_linux = requires_darwin
|
|
78
|
+
requires_windows = ["sqlite/win32:shared={shared},version={version}"]
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
TaskRegistry.get().add_task_class(SQLite)
|
|
82
|
+
TaskRegistry.get().add_task_class(SQLitePosix)
|
|
83
|
+
TaskRegistry.get().add_task_class(SQLiteWin32)
|
jolt/pkgs/ssl.py
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from jolt import Alias, BooleanParameter
|
|
2
|
+
from jolt.pkgs import boringssl, openssl
|
|
3
|
+
from jolt.tasks import TaskRegistry
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class VirtualSsl(Alias):
|
|
7
|
+
name = "virtual/ssl"
|
|
8
|
+
shared = BooleanParameter(True, help="Use shared libraries.")
|
|
9
|
+
requires = ["openssl:shared={shared}"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
TaskRegistry.get().add_task_class(VirtualSsl)
|
jolt/pkgs/texinfo.py
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from jolt import attributes
|
|
2
|
+
from jolt.plugins import autotools, fetch
|
|
3
|
+
from jolt.tasks import TaskRegistry
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@attributes.common_metadata()
|
|
7
|
+
@attributes.requires("requires_src")
|
|
8
|
+
class Texinfo(autotools.Autotools):
|
|
9
|
+
name = "texinfo"
|
|
10
|
+
version = "7.2"
|
|
11
|
+
requires_src = ["fetch:alias=src,url=http://ftpmirror.gnu.org/texinfo/texinfo-{version}.tar.xz"]
|
|
12
|
+
srcdir = "{fetch[src]}/texinfo-{version}"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
TaskRegistry.get().add_task_class(Texinfo)
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.pkgs import cmake
|
|
3
|
+
from jolt.plugins import git, cmake
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_git")
|
|
8
|
+
@cmake.requires()
|
|
9
|
+
@cmake.use_ninja()
|
|
10
|
+
class TomlPlusPlus(cmake.CMake):
|
|
11
|
+
name = "tomlplusplus"
|
|
12
|
+
version = Parameter("3.4.0", help="TomlPlusPlus version.")
|
|
13
|
+
tests = BooleanParameter(False, help="Build tests.")
|
|
14
|
+
requires_git = ["git:url=https://github.com/marzer/tomlplusplus.git,rev=v{version}"]
|
|
15
|
+
srcdir = "{git[tomlplusplus]}"
|
|
16
|
+
|
|
17
|
+
def publish(self, artifact, tools):
|
|
18
|
+
super().publish(artifact, tools)
|
|
19
|
+
artifact.cxxinfo.incpaths.append("include")
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
TaskRegistry.get().add_task_class(TomlPlusPlus)
|
jolt/pkgs/wayland.py
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
from jolt import attributes, Parameter
|
|
2
|
+
from jolt.pkgs import libexpat, libffi, libxml2
|
|
3
|
+
from jolt.plugins import git, meson
|
|
4
|
+
from jolt.tasks import TaskRegistry
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@attributes.requires("requires_expat")
|
|
8
|
+
@attributes.requires("requires_git")
|
|
9
|
+
@attributes.requires("requires_libffi")
|
|
10
|
+
@attributes.requires("requires_libxml2")
|
|
11
|
+
@meson.requires()
|
|
12
|
+
class Wayland(meson.Meson):
|
|
13
|
+
name = "wayland"
|
|
14
|
+
version = Parameter("1.24.0", help="Wayland version.")
|
|
15
|
+
requires_expat = ["libexpat"]
|
|
16
|
+
requires_git = ["git:url=https://gitlab.freedesktop.org/wayland/wayland.git,rev={version}"]
|
|
17
|
+
requires_libffi = ["libffi"]
|
|
18
|
+
requires_libxml2 = ["libxml2"]
|
|
19
|
+
srcdir = "{git[wayland]}"
|
|
20
|
+
options = [
|
|
21
|
+
"documentation=false",
|
|
22
|
+
"tests=false",
|
|
23
|
+
]
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
TaskRegistry.get().add_task_class(Wayland)
|
jolt/pkgs/x11.py
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
from jolt import Alias
|
|
2
|
+
from jolt.tasks import TaskRegistry
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GlProto(Alias):
|
|
6
|
+
name = "glproto"
|
|
7
|
+
requires = ["xorg/glproto"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Libx11(Alias):
|
|
11
|
+
name = "libx11"
|
|
12
|
+
requires = ["xorg/libx11"]
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class Libxext(Alias):
|
|
16
|
+
name = "libxext"
|
|
17
|
+
requires = ["xorg/libxext"]
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class Libxshmfence(Alias):
|
|
21
|
+
name = "libxshmfence"
|
|
22
|
+
requires = ["xorg/libxshmfence"]
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class LibXcb(Alias):
|
|
26
|
+
name = "libxcb"
|
|
27
|
+
requires = ["xorg/libxcb"]
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class LibX11Xcb(Alias):
|
|
31
|
+
name = "libx11-xcb"
|
|
32
|
+
requires = ["xorg/libx11-xcb"]
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class Xproto(Alias):
|
|
36
|
+
name = "xproto"
|
|
37
|
+
requires = ["xorg/xproto"]
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class LibXrandr(Alias):
|
|
41
|
+
name = "libxrandr"
|
|
42
|
+
requires = ["xorg/libxrandr"]
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class LibXxf86vm(Alias):
|
|
46
|
+
name = "libxxf86vm"
|
|
47
|
+
requires = ["xorg/libxxf86vm"]
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
TaskRegistry.get().add_task_class(GlProto)
|
|
51
|
+
TaskRegistry.get().add_task_class(Libx11)
|
|
52
|
+
TaskRegistry.get().add_task_class(LibX11Xcb)
|
|
53
|
+
TaskRegistry.get().add_task_class(LibXcb)
|
|
54
|
+
TaskRegistry.get().add_task_class(Libxext)
|
|
55
|
+
TaskRegistry.get().add_task_class(LibXrandr)
|
|
56
|
+
TaskRegistry.get().add_task_class(LibXxf86vm)
|
|
57
|
+
TaskRegistry.get().add_task_class(Libxshmfence)
|
|
58
|
+
TaskRegistry.get().add_task_class(Xproto)
|
jolt/pkgs/xerces_c.py
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
from jolt import attributes, BooleanParameter, Parameter
|
|
2
|
+
from jolt.plugins import git, cmake
|
|
3
|
+
from jolt.tasks import TaskRegistry
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@attributes.requires("requires_git")
|
|
7
|
+
@cmake.requires()
|
|
8
|
+
@cmake.use_ninja()
|
|
9
|
+
class XercesC(cmake.CMake):
|
|
10
|
+
name = "xerces-c"
|
|
11
|
+
version = Parameter("3.3.0", help="Xerces-C version.")
|
|
12
|
+
shared = BooleanParameter(False, help="Build shared libraries")
|
|
13
|
+
requires_git = ["git:url=https://github.com/apache/xerces-c.git,rev=v{version}"]
|
|
14
|
+
srcdir = "{git[xerces-c]}"
|
|
15
|
+
options = [
|
|
16
|
+
"BUILD_SHARED_LIBS={shared[ON,OFF]}",
|
|
17
|
+
]
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
TaskRegistry.get().add_task_class(XercesC)
|