blob: db9a4cd5118b4b677fa4a561055df947522ea227 [file] [log] [blame]
Andrew Geissler595f6302022-01-24 19:11:47 +00001SUMMARY = "WSGI server implemented in Rust."
2DESCRIPTION = "Pyruvate is a reasonably fast, multithreaded, non-blocking \
3WSGI server implemented in Rust."
4HOMEPAGE = "https://gitlab.com/tschorr/pyruvate"
5BUGTRACKER = "https://gitlab.com/tschorr/pyruvate/-/issues"
6
7LICENSE = "GPL-2.0-only"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=051b48e640a6e2d795eac75542d9417c \
9 file://LICENSE.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
10
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050011SRC_URI += "\
12 git://gitlab.com/tschorr/pyruvate.git;protocol=https;branch=main \
13 file://0001-linux.rs-Define-consts-for-rv32-architecture.patch;patchdir=../cargo_home/bitbake/nix-0.23.1/ \
14"
Andrew Geissler595f6302022-01-24 19:11:47 +000015SRC_URI[sha256sum] = "10befedd97e73fc18b902d02aa3b24e8978aa162242c1b664849c886c0675899"
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050016SRCREV = "fcbe49cc1a06290e28a211022df759605bce980d"
Andrew Geissler595f6302022-01-24 19:11:47 +000017
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050018SRC_URI:append:mips = " file://0001-check-for-mips-targets-for-stat.st_dev-definitions.patch;patchdir=../cargo_home/bitbake/libsystemd-0.4.1/"
Andrew Geissler595f6302022-01-24 19:11:47 +000019
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050020S = "${WORKDIR}/git"
21
22inherit python_setuptools3_rust cargo-update-recipe-crates
Andrew Geissler9aee5002022-03-30 16:27:02 +000023
24PIP_INSTALL_DIST_PATH = "${S}/dist"
Andrew Geissler595f6302022-01-24 19:11:47 +000025
26# crossbeam-* -> std::sync::atomic AtomicI64, AtomicU64
27# not supported on mips/powerpc with 32-bit pointers
28# https://doc.rust-lang.org/std/sync/atomic/#portability
29RUSTFLAGS:append:mips = " --cfg crossbeam_no_atomic_64"
30RUSTFLAGS:append:mipsel = " --cfg crossbeam_no_atomic_64"
31RUSTFLAGS:append:powerpc = " --cfg crossbeam_no_atomic_64"
32RUSTFLAGS:append:riscv32 = " --cfg crossbeam_no_atomic_64"
33
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050034require ${BPN}-crates.inc
Andrew Geissler595f6302022-01-24 19:11:47 +000035
36# The following configs & dependencies are from setuptools extras_require.
37# These dependencies are optional, hence can be controlled via PACKAGECONFIG.
38# The upstream names may not correspond exactly to bitbake package names.
39#
40# Uncomment this line to enable all the optional features.
41#PACKAGECONFIG ?= "test"
42PACKAGECONFIG[test] = ",,,python3-pytest python3-requests"
43
44# WARNING: the following rdepends are determined through basic analysis of the
45# python sources, and might not be 100% accurate.
46RDEPENDS:${PN} += "python3-core"