This is an ultra-fast replacement for the python3 asyncio event loop.

Signed-off-by: David Jander <[email protected]>
---
 rules/python3-uvloop.in   | 10 +++++++
 rules/python3-uvloop.make | 57 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+)
 create mode 100644 rules/python3-uvloop.in
 create mode 100644 rules/python3-uvloop.make

diff --git a/rules/python3-uvloop.in b/rules/python3-uvloop.in
new file mode 100644
index 000000000..6f937a31b
--- /dev/null
+++ b/rules/python3-uvloop.in
@@ -0,0 +1,10 @@
+## SECTION=python3
+
+config PYTHON3_UVLOOP
+       tristate
+       select PYTHON3
+       select HOST_CYTHON3
+       select LIBUV
+       prompt "python3-uvloop"
+       help
+         Ultra fast asyncio event loop
diff --git a/rules/python3-uvloop.make b/rules/python3-uvloop.make
new file mode 100644
index 000000000..caafa75e1
--- /dev/null
+++ b/rules/python3-uvloop.make
@@ -0,0 +1,57 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2019 by David Jander <[email protected]>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_PYTHON3_UVLOOP) += python3-uvloop
+
+#
+# Paths and names
+#
+PYTHON3_UVLOOP_VERSION := v0.16.0
+PYTHON3_UVLOOP_MD5     := d70d003f73f034e4fecdda2078fed6f3
+PYTHON3_UVLOOP         := python3-uvloop-$(PYTHON3_UVLOOP_VERSION)
+PYTHON3_UVLOOP_SUFFIX  := tar.gz
+PYTHON3_UVLOOP_URL     := 
https://github.com/MagicStack/uvloop/archive/$(PYTHON3_UVLOOP_VERSION).$(PYTHON3_UVLOOP_SUFFIX)
+PYTHON3_UVLOOP_SOURCE  := $(SRCDIR)/$(PYTHON3_UVLOOP).$(PYTHON3_UVLOOP_SUFFIX)
+PYTHON3_UVLOOP_DIR     := $(BUILDDIR)/$(PYTHON3_UVLOOP)
+PYTHON3_UVLOOP_LICENSE := Apache-2.0
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+PYTHON3_UVLOOP_CONF_TOOL       := python3
+PYTHON3_UVLOOP_MAKE_OPT                := build build_py build_ext 
--use-system-libuv
+PYTHON3_UVLOOP_INSTALL_OPT     := build_ext --use-system-libuv install 
--prefix=/usr
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/python3-uvloop.targetinstall:
+       @$(call targetinfo)
+
+       @$(call install_init, python3-uvloop)
+       @$(call install_fixup, python3-uvloop, PRIORITY, optional)
+       @$(call install_fixup, python3-uvloop, SECTION, base)
+       @$(call install_fixup, python3-uvloop, AUTHOR, "David Jander 
<[email protected]>")
+       @$(call install_fixup, python3-uvloop, DESCRIPTION, missing)
+
+       @$(call install_glob, python3-uvloop, 0, 0, -, \
+               /usr/lib/python$(PYTHON3_MAJORMINOR)/site-packages/uvloop, 
*.pyc)
+
+       @$(call install_glob, python3-uvloop, 0, 0, -, \
+               /usr/lib/python$(PYTHON3_MAJORMINOR)/site-packages/uvloop, *.so)
+
+       @$(call install_finish, python3-uvloop)
+
+       @$(call touch)
+
+# vim: syntax=make
-- 
2.32.0


Reply via email to