All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF
@ 2019-05-02 18:51 Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 1/7] package/luajit: bump to version 2.1.x developpment version for aarch64 Jugurtha BELKALEM
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

eBPF is the lastest Linux tracer and considered to
be a modern systemTap. However, eBPF programs are
written in a flavour of C language (which is tedious).
BCC allows to write eBPF scripts in Python and C which
makes troubleshooting a system and identifying
bottelenecks easier.
More information is available at :
https://github.com/iovisor/bcc/blob/master/README.md.

Jugurtha BELKALEM (5):
  package/luajit: bump to version 2.1.x developpment version for aarch64
  package/python-pytest: new package
  package/python-pytest-runner: new package
  package/python-traittypes: new package
  package/python-bcc: new package

Romain Naour (2):
  package/llvm: add BPF backend
  package/bcc: new package

 DEVELOPERS                                         |  6 +++
 package/Config.in                                  |  5 +++
 ...CMake-Allow-to-disable-building-man-pages.patch | 35 +++++++++++++++
 package/bcc/0002-fix-aarch64-cross-compile.patch   | 38 ++++++++++++++++
 package/bcc/Config.in                              | 51 ++++++++++++++++++++++
 package/bcc/bcc.hash                               |  3 ++
 package/bcc/bcc.mk                                 | 23 ++++++++++
 package/llvm/Config.in                             |  6 +++
 package/llvm/llvm.mk                               |  5 +++
 package/luajit/Config.in                           |  2 +-
 package/luajit/luajit.hash                         |  1 +
 package/luajit/luajit.mk                           |  6 +++
 ...e-pytest-runner-a-conditional-requirement.patch | 47 ++++++++++++++++++++
 package/python-bcc/Config.in                       | 11 +++++
 package/python-bcc/python-bcc.hash                 |  3 ++
 package/python-bcc/python-bcc.mk                   | 15 +++++++
 .../0001-Remove-setuptools_scm-dependency.patch    | 29 ++++++++++++
 package/python-pytest-runner/Config.in             |  9 ++++
 .../python-pytest-runner/python-pytest-runner.hash |  3 ++
 .../python-pytest-runner/python-pytest-runner.mk   | 15 +++++++
 package/python-pytest/Config.in                    |  8 ++++
 package/python-pytest/python-pytest.hash           |  5 +++
 package/python-pytest/python-pytest.mk             | 15 +++++++
 package/python-traittypes/Config.in                |  7 +++
 package/python-traittypes/python-traittypes.hash   |  5 +++
 package/python-traittypes/python-traittypes.mk     | 14 ++++++
 26 files changed, 366 insertions(+), 1 deletion(-)
 create mode 100644 package/bcc/0001-CMake-Allow-to-disable-building-man-pages.patch
 create mode 100644 package/bcc/0002-fix-aarch64-cross-compile.patch
 create mode 100644 package/bcc/Config.in
 create mode 100644 package/bcc/bcc.hash
 create mode 100644 package/bcc/bcc.mk
 create mode 100644 package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch
 create mode 100644 package/python-bcc/Config.in
 create mode 100644 package/python-bcc/python-bcc.hash
 create mode 100644 package/python-bcc/python-bcc.mk
 create mode 100644 package/python-pytest-runner/0001-Remove-setuptools_scm-dependency.patch
 create mode 100644 package/python-pytest-runner/Config.in
 create mode 100644 package/python-pytest-runner/python-pytest-runner.hash
 create mode 100644 package/python-pytest-runner/python-pytest-runner.mk
 create mode 100644 package/python-pytest/Config.in
 create mode 100644 package/python-pytest/python-pytest.hash
 create mode 100644 package/python-pytest/python-pytest.mk
 create mode 100644 package/python-traittypes/Config.in
 create mode 100644 package/python-traittypes/python-traittypes.hash
 create mode 100644 package/python-traittypes/python-traittypes.mk

-- 
2.7.4

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 1/7] package/luajit: bump to version 2.1.x developpment version for aarch64
  2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
@ 2019-05-02 18:51 ` Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 2/7] package/python-pytest: new package Jugurtha BELKALEM
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

luajit 2.0.5 has not been updated since 2017, it
lacks aarch64 support.
An upgrade to version 2.1.0-beta3 is required to
get aarch64 which allows to execute bcc (ebpf's front
end tool) on arm64 architectures.

Luajit 2.0.1-beta3 is not a release version:
https://github.com/LuaJIT/LuaJIT which why we
kept luajit 2.0.5 version and the upgrade is
only made when aarch64 is encountered.

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

---
Changes V1 => V2 :
Removing luajit patch for aarch64
as this patch should be in
bcc package.
---
 package/luajit/Config.in   | 2 +-
 package/luajit/luajit.hash | 1 +
 package/luajit/luajit.mk   | 6 ++++++
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/package/luajit/Config.in b/package/luajit/Config.in
index 88c5bcb..9ecf6b4 100644
--- a/package/luajit/Config.in
+++ b/package/luajit/Config.in
@@ -1,6 +1,6 @@
 config BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
 	bool
-	default y if BR2_i386 || \
+	default y if BR2_i386 || BR2_aarch64 || \
 		(BR2_x86_64 && BR2_HOSTARCH='x86_64') || \
 		BR2_powerpc || BR2_arm || BR2_armeb || \
 		((BR2_mips || BR2_mipsel) && !BR2_MIPS_SOFT_FLOAT && \
diff --git a/package/luajit/luajit.hash b/package/luajit/luajit.hash
index 7e2d87e..1737cca 100644
--- a/package/luajit/luajit.hash
+++ b/package/luajit/luajit.hash
@@ -2,4 +2,5 @@
 md5 48353202cbcacab84ee41a5a70ea0a2c    LuaJIT-2.0.5.tar.gz
 
 # Locally calculated
+sha256 ad5077bd861241bf5e50ae4bf543d291c5fcffab95ccc3218401131f503e45bd luajit-f0e865dd4861520258299d0f2a56491bd9d602e1.tar.gz
 sha256 accb335aa3102f80d31caa2c2508fbcb795314106493519a367f13a87d0e87de  COPYRIGHT
diff --git a/package/luajit/luajit.mk b/package/luajit/luajit.mk
index 5b08a42..181cf1c 100644
--- a/package/luajit/luajit.mk
+++ b/package/luajit/luajit.mk
@@ -4,9 +4,15 @@
 #
 ################################################################################
 
+ifeq ($(BR2_aarch64),y)
+LUAJIT_VERSION = f0e865dd4861520258299d0f2a56491bd9d602e1
+LUAJIT_SITE = $(call github,luajit,luajit,$(LUAJIT_VERSION))
+else
 LUAJIT_VERSION = 2.0.5
 LUAJIT_SOURCE = LuaJIT-$(LUAJIT_VERSION).tar.gz
 LUAJIT_SITE = http://luajit.org/download
+endif
+
 LUAJIT_LICENSE = MIT
 LUAJIT_LICENSE_FILES = COPYRIGHT
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 2/7] package/python-pytest: new package
  2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 1/7] package/luajit: bump to version 2.1.x developpment version for aarch64 Jugurtha BELKALEM
@ 2019-05-02 18:51 ` Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 3/7] package/python-pytest-runner: " Jugurtha BELKALEM
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

bcc requires python-bcc which itself
requires python-pytest.
The pytest framework makes it easy to write
small tests, yet scales to support complex
functional testing for applications and libraries.

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
---
 DEVELOPERS                               |  3 +++
 package/Config.in                        |  1 +
 package/python-pytest/Config.in          |  8 ++++++++
 package/python-pytest/python-pytest.hash |  5 +++++
 package/python-pytest/python-pytest.mk   | 15 +++++++++++++++
 5 files changed, 32 insertions(+)
 create mode 100644 package/python-pytest/Config.in
 create mode 100644 package/python-pytest/python-pytest.hash
 create mode 100644 package/python-pytest/python-pytest.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 6ccb0af..f6d5d3e 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1224,6 +1224,9 @@ F:	package/python-sentry-sdk/
 F:	package/python-websockets/
 F:	package/python-xlib/
 
+N:	Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+F:	package/python-pytest
+
 N:	Joshua Henderson <joshua.henderson@microchip.com>
 F:	package/qt5/qt5wayland/
 
diff --git a/package/Config.in b/package/Config.in
index f592e74..2a0aca9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1015,6 +1015,7 @@ menu "External python modules"
 	source "package/python-pysocks/Config.in"
 	source "package/python-pytablereader/Config.in"
 	source "package/python-pytablewriter/Config.in"
+	source "package/python-pytest/Config.in"
 	source "package/python-pytrie/Config.in"
 	source "package/python-pytz/Config.in"
 	source "package/python-pyudev/Config.in"
diff --git a/package/python-pytest/Config.in b/package/python-pytest/Config.in
new file mode 100644
index 0000000..7db5493
--- /dev/null
+++ b/package/python-pytest/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_PYTHON_PYTEST
+	bool "python-pytest"
+	help
+	  The pytest framework makes it easy to write small tests,
+	  yet scales to support complex functional testing for
+	  applications and libraries.
+
+	  https://pypi.org/project/pytest/
diff --git a/package/python-pytest/python-pytest.hash b/package/python-pytest/python-pytest.hash
new file mode 100644
index 0000000..43f9f98
--- /dev/null
+++ b/package/python-pytest/python-pytest.hash
@@ -0,0 +1,5 @@
+# sha256 from https://pypi.org/project/pytest/#files
+sha256 b7802283b70ca24d7119b32915efa7c409982f59913c1a6c0640aacf118b95f5 pytest-4.4.1.tar.gz
+
+# Locally calculated
+sha256	4be38574daf05665b6194e4fd84c5ef6ce7c3a2810308a5222d5cdffc2d04d18 LICENSE
diff --git a/package/python-pytest/python-pytest.mk b/package/python-pytest/python-pytest.mk
new file mode 100644
index 0000000..665951f
--- /dev/null
+++ b/package/python-pytest/python-pytest.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# python-pytest
+#
+################################################################################
+
+PYTHON_PYTEST_VERSION = 4.4.1
+PYTHON_PYTEST_SOURCE = pytest-$(PYTHON3_PYTEST_VERSION).tar.gz
+PYTHON_PYTEST_SITE = https://files.pythonhosted.org/packages/2b/b1/c9a84f79fc3bad226a9085289da11ecdd9bd2779a2c654195962b37d4110/
+PYTHON_PYTEST_LICENSE = MIT
+PYTHON_PYTEST_LICENSE_FILES = LICENSE
+PYTHON_PYTEST_SETUP_TYPE = setuptools
+PYTHON_PYTEST_DEPENDENCIES = python-setuptools-scm
+
+$(eval $(python-package))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 3/7] package/python-pytest-runner: new package
  2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 1/7] package/luajit: bump to version 2.1.x developpment version for aarch64 Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 2/7] package/python-pytest: new package Jugurtha BELKALEM
@ 2019-05-02 18:51 ` Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 4/7] package/python-traittypes: " Jugurtha BELKALEM
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

bcc needs this package because
python-bcc and python-pytest require this package
to work.
Setup scripts can use pytest-runner
to add setup.py test support for pytest runner.

python-bcc requires host pytest-runner
to compile properly.

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

---
---
 DEVELOPERS                                         |  1 +
 package/Config.in                                  |  1 +
 .../0001-Remove-setuptools_scm-dependency.patch    | 29 ++++++++++++++++++++++
 package/python-pytest-runner/Config.in             |  9 +++++++
 .../python-pytest-runner/python-pytest-runner.hash |  3 +++
 .../python-pytest-runner/python-pytest-runner.mk   | 15 +++++++++++
 6 files changed, 58 insertions(+)
 create mode 100644 package/python-pytest-runner/0001-Remove-setuptools_scm-dependency.patch
 create mode 100644 package/python-pytest-runner/Config.in
 create mode 100644 package/python-pytest-runner/python-pytest-runner.hash
 create mode 100644 package/python-pytest-runner/python-pytest-runner.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index f6d5d3e..d4370db 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1226,6 +1226,7 @@ F:	package/python-xlib/
 
 N:	Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
 F:	package/python-pytest
+F:	package/python-pytest-runner
 
 N:	Joshua Henderson <joshua.henderson@microchip.com>
 F:	package/qt5/qt5wayland/
diff --git a/package/Config.in b/package/Config.in
index 2a0aca9..4fcf4f7 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1016,6 +1016,7 @@ menu "External python modules"
 	source "package/python-pytablereader/Config.in"
 	source "package/python-pytablewriter/Config.in"
 	source "package/python-pytest/Config.in"
+	source "package/python-pytest-runner/Config.in"
 	source "package/python-pytrie/Config.in"
 	source "package/python-pytz/Config.in"
 	source "package/python-pyudev/Config.in"
diff --git a/package/python-pytest-runner/0001-Remove-setuptools_scm-dependency.patch b/package/python-pytest-runner/0001-Remove-setuptools_scm-dependency.patch
new file mode 100644
index 0000000..d67da8c
--- /dev/null
+++ b/package/python-pytest-runner/0001-Remove-setuptools_scm-dependency.patch
@@ -0,0 +1,29 @@
+From d04d8da1c410e97e023c300d6606dee46741ae28 Mon Sep 17 00:00:00 2001
+From: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+Date: Thu, 2 May 2019 16:41:34 +0200
+Subject: [PATCH] Remove setuptools_scm dependency
+
+setuptools_scm is an optional dependency of
+pytest-runner.
+
+Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+
+---
+ host-python-pytest-runner-4.4/setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/host-python-pytest-runner-4.4/setup.py b/host-python-pytest-runner-4.4/setup.py
+index b72262c..0396741 100644
+--- a/setup.py
++++ b/setup.py
+@@ -55,7 +55,7 @@ params = dict(
+ 		],
+ 	},
+ 	setup_requires=[
+-		'setuptools_scm>=1.15.0',
+ 	],
+ 	classifiers=[
+ 		"Development Status :: 5 - Production/Stable",
+-- 
+2.7.4
+
diff --git a/package/python-pytest-runner/Config.in b/package/python-pytest-runner/Config.in
new file mode 100644
index 0000000..01dea9d
--- /dev/null
+++ b/package/python-pytest-runner/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_PYTHON_PYTEST_RUNNER
+	bool "python-pytest-runner"
+	depends on BR2_PACKAGE_PYTHON3
+	select BR2_PACKAGE_PYTHON_SETUPTOOLS_SCM
+	help
+	  Setup scripts can use pytest-runner to add setup.py
+	  test support for pytest runner.
+
+	  https://pypi.org/project/pytest-runner/
diff --git a/package/python-pytest-runner/python-pytest-runner.hash b/package/python-pytest-runner/python-pytest-runner.hash
new file mode 100644
index 0000000..da76c50
--- /dev/null
+++ b/package/python-pytest-runner/python-pytest-runner.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 00ad6cd754ce55b01b868a6d00b77161e4d2006b3918bde882376a0a884d0df4  pytest-runner-4.4.tar.gz
+sha256 a55e2ffe9b44998e621d51d8c094bed09acc4b5236ee73d7df395a33ba3c18fd  LICENSE
diff --git a/package/python-pytest-runner/python-pytest-runner.mk b/package/python-pytest-runner/python-pytest-runner.mk
new file mode 100644
index 0000000..ffebea5
--- /dev/null
+++ b/package/python-pytest-runner/python-pytest-runner.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# python-pytest-runner
+#
+################################################################################
+
+PYTHON_PYTEST_RUNNER_VERSION = 4.4
+PYTHON_PYTEST_RUNNER_SOURCE = pytest-runner-$(PYTHON_PYTEST_RUNNER_VERSION).tar.gz
+PYTHON_PYTEST_RUNNER_SITE = https://files.pythonhosted.org/packages/15/0a/1e73c3a3d3f4f5faf5eacac4e55675c1627b15d84265b80b8fef3f8a3fb5
+PYTHON_PYTEST_RUNNER_LICENSE = MIT
+PYTHON_PYTEST_RUNNER_LICENSE_FILES = LICENSE
+PYTHON_PYTEST_RUNNER_SETUP_TYPE = setuptools
+
+$(eval $(python-package))
+$(eval $(host-python-package))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 4/7] package/python-traittypes: new package
  2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
                   ` (2 preceding siblings ...)
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 3/7] package/python-pytest-runner: " Jugurtha BELKALEM
@ 2019-05-02 18:51 ` Jugurtha BELKALEM
  2019-05-03  6:22   ` Yegor Yefremov
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 5/7] package/llvm: add BPF backend Jugurtha BELKALEM
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

bcc requires this package which is used to add
custom trait types for scientific computing.

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

---
Changes v1 => v2:
Correcting typos, adding #runtime
comment and fixing License name.
---
 DEVELOPERS                                       |  1 +
 package/Config.in                                |  1 +
 package/python-traittypes/Config.in              |  7 +++++++
 package/python-traittypes/python-traittypes.hash |  5 +++++
 package/python-traittypes/python-traittypes.mk   | 14 ++++++++++++++
 5 files changed, 28 insertions(+)
 create mode 100644 package/python-traittypes/Config.in
 create mode 100644 package/python-traittypes/python-traittypes.hash
 create mode 100644 package/python-traittypes/python-traittypes.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index d4370db..dc83571 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1227,6 +1227,7 @@ F:	package/python-xlib/
 N:	Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
 F:	package/python-pytest
 F:	package/python-pytest-runner
+F:	package/python-traittypes
 
 N:	Joshua Henderson <joshua.henderson@microchip.com>
 F:	package/qt5/qt5wayland/
diff --git a/package/Config.in b/package/Config.in
index 4fcf4f7..4918ec5 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1073,6 +1073,7 @@ menu "External python modules"
 	source "package/python-toml/Config.in"
 	source "package/python-tornado/Config.in"
 	source "package/python-traitlets/Config.in"
+	source "package/python-traittypes/Config.in"
 	source "package/python-treq/Config.in"
 	source "package/python-twisted/Config.in"
 	source "package/python-txaio/Config.in"
diff --git a/package/python-traittypes/Config.in b/package/python-traittypes/Config.in
new file mode 100644
index 0000000..0688f80
--- /dev/null
+++ b/package/python-traittypes/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_PYTHON_TRAITTYPES
+	bool "python-traittypes"
+	select BR2_PACKAGE_PYTHON_TRAITLETS # runtime
+	help
+	  Custom trait types for scientific computing.
+
+	  https://pypi.org/project/traittypes/
diff --git a/package/python-traittypes/python-traittypes.hash b/package/python-traittypes/python-traittypes.hash
new file mode 100644
index 0000000..a94b256
--- /dev/null
+++ b/package/python-traittypes/python-traittypes.hash
@@ -0,0 +1,5 @@
+# sha256 from https://pypi.org/project/traittypes/#files
+sha256	be6fa26294733e7489822ded4ae25da5b4824a8a7a0e0c2dccfde596e3489bd6 traittypes-0.2.1.tar.gz
+
+# Locally calculated
+sha256	221976dfad5db283a2669efe8607e24c9c9aecca8453d6beba045e665c2f88a1 LICENSE
diff --git a/package/python-traittypes/python-traittypes.mk b/package/python-traittypes/python-traittypes.mk
new file mode 100644
index 0000000..d360e2d
--- /dev/null
+++ b/package/python-traittypes/python-traittypes.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-traittypes
+#
+################################################################################
+
+PYTHON_TRAITTYPES_VERSION = 0.2.1
+PYTHON_TRAITTYPES_SOURCE = traittypes-$(PYTHON_TRAITTYPES_VERSION).tar.gz
+PYTHON_TRAITTYPES_SITE = https://files.pythonhosted.org/packages/8a/71/0578e44d2110f93c2136eb705f5b11e706e1e8ea3acaaaeac043bd40d8fd
+PYTHON_TRAITTYPES_LICENSE = BSD-3-Clause
+PYTHON_TRAITTYPES_LICENSE_FILES = LICENSE
+PYTHON_TRAITTYPES_SETUP_TYPE = distutils
+
+$(eval $(python-package))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 5/7] package/llvm: add BPF backend
  2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
                   ` (3 preceding siblings ...)
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 4/7] package/python-traittypes: " Jugurtha BELKALEM
@ 2019-05-02 18:51 ` Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 6/7] package/python-bcc: new package Jugurtha BELKALEM
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 7/7] package/bcc: " Jugurtha BELKALEM
  6 siblings, 0 replies; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

From: Romain Naour <romain.naour@smile.fr>

The BPF backend is needed for bcc tool.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
Cc: Valentin Korenblit <valentinkorenblit@gmail.com>
---
 package/llvm/Config.in | 6 ++++++
 package/llvm/llvm.mk   | 5 +++++
 2 files changed, 11 insertions(+)

diff --git a/package/llvm/Config.in b/package/llvm/Config.in
index 83e9466..72d920e 100644
--- a/package/llvm/Config.in
+++ b/package/llvm/Config.in
@@ -35,6 +35,12 @@ config BR2_PACKAGE_LLVM_AMDGPU
 	  Build AMDGPU target. Select this option if you are going
 	  to install mesa3d with llvm and use Gallium Radeon driver.
 
+config BR2_PACKAGE_LLVM_BPF
+	bool "BPF backend"
+	help
+	  Build BPF target. Select this option if you are going
+	  to install bcc on the target.
+
 endif
 
 comment "llvm needs a toolchain w/ wchar, threads, C++, gcc >= 4.8, host gcc >= 4.8, dynamic library"
diff --git a/package/llvm/llvm.mk b/package/llvm/llvm.mk
index 3c62285..ad4f3c4 100644
--- a/package/llvm/llvm.mk
+++ b/package/llvm/llvm.mk
@@ -61,6 +61,11 @@ ifeq ($(BR2_PACKAGE_LLVM_AMDGPU),y)
 LLVM_TARGETS_TO_BUILD += AMDGPU
 endif
 
+# Build BPF backend
+ifeq ($(BR2_PACKAGE_LLVM_BPF),y)
+LLVM_TARGETS_TO_BUILD += BPF
+endif
+
 # Use native llvm-tblgen from host-llvm (needed for cross-compilation)
 LLVM_CONF_OPTS += -DLLVM_TABLEGEN=$(HOST_DIR)/bin/llvm-tblgen
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 6/7] package/python-bcc: new package
  2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
                   ` (4 preceding siblings ...)
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 5/7] package/llvm: add BPF backend Jugurtha BELKALEM
@ 2019-05-02 18:51 ` Jugurtha BELKALEM
  2019-05-03  6:37   ` Yegor Yefremov
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 7/7] package/bcc: " Jugurtha BELKALEM
  6 siblings, 1 reply; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

bcc python wrapper required by bcc to
work properly.

audit package is used by python-bcc
to map system calls to their correspending
numbers in various architectures
that are different from x86_64.

python-bcc requires host-python-pytest-runner
to compile properly.

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

---
Changes v1 => v2:
- Correcting typos and adding #runtime
comment.
- Invoke pytest-runner only when neccessary.

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
---
 DEVELOPERS                                         |  1 +
 package/Config.in                                  |  1 +
 ...e-pytest-runner-a-conditional-requirement.patch | 47 ++++++++++++++++++++++
 package/python-bcc/Config.in                       | 11 +++++
 package/python-bcc/python-bcc.hash                 |  3 ++
 package/python-bcc/python-bcc.mk                   | 15 +++++++
 6 files changed, 78 insertions(+)
 create mode 100644 package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch
 create mode 100644 package/python-bcc/Config.in
 create mode 100644 package/python-bcc/python-bcc.hash
 create mode 100644 package/python-bcc/python-bcc.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index dc83571..35451d5 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1225,6 +1225,7 @@ F:	package/python-websockets/
 F:	package/python-xlib/
 
 N:	Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+F:	package/python-bcc
 F:	package/python-pytest
 F:	package/python-pytest-runner
 F:	package/python-traittypes
diff --git a/package/Config.in b/package/Config.in
index 4918ec5..38d5321 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -832,6 +832,7 @@ menu "External python modules"
 	source "package/python-backports-abc/Config.in"
 	source "package/python-backports-shutil-get-terminal-size/Config.in"
 	source "package/python-backports-ssl-match-hostname/Config.in"
+	source "package/python-bcc/Config.in"
 	source "package/python-bcrypt/Config.in"
 	source "package/python-beautifulsoup4/Config.in"
 	source "package/python-bitstring/Config.in"
diff --git a/package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch b/package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch
new file mode 100644
index 0000000..219e850
--- /dev/null
+++ b/package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch
@@ -0,0 +1,47 @@
+From e7c8912e5e59de50fe359fe2e03f179c25c2dfbf Mon Sep 17 00:00:00 2001
+From: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+Date: Thu, 2 May 2019 17:18:16 +0200
+Subject: [PATCH] Make pytest runner a conditional requirement
+
+Check for pytest-runner only if setup.py was invoked with 'test'
+argument.
+
+Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+---
+ python-bcc-0.1.10/setup.py | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/setup.py b/python-bcc-0.1.10/setup.py
+index c27e9a9..9a91e04 100644
+--- a/setup.py
++++ b/setup.py
+@@ -4,6 +4,7 @@
+ """The setup script."""
+ 
+ from setuptools import setup, find_packages
++import sys
+ 
+ with open('README.rst') as readme_file:
+     readme = readme_file.read()
+@@ -17,7 +18,8 @@ requirements = [
+     'traittypes',
+ ]
+ 
+-setup_requirements = ['pytest-runner', ]
++needs_pytest = set(['pytest', 'test', 'ptr']).intersection(sys.argv)
++pytest_runner = ['pytest-runner'] if needs_pytest else []
+ 
+ test_requirements = [
+     'pytest',
+@@ -46,7 +48,7 @@ setup(
+     keywords='bcc',
+     name='bcc',
+     packages=find_packages(include=['bcc']),
+-    setup_requires=setup_requirements,
++    setup_requires=pytest_runner,
+     test_suite='tests',
+     tests_require=test_requirements,
+     url='https://github.com/willsheffler/bcc',
+-- 
+2.7.4
+
diff --git a/package/python-bcc/Config.in b/package/python-bcc/Config.in
new file mode 100644
index 0000000..a007bc9
--- /dev/null
+++ b/package/python-bcc/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_PYTHON_BCC
+	bool "python-bcc"
+	depends on BR2_PACKAGE_PYTHON3
+	select BR2_PACKAGE_AUDIT  # runtime
+	select BR2_PACKAGE_PYTHON_PYTEST_RUNNER
+	select BR2_PACKAGE_PYTHON_TRAITLETS # runtime
+	select BR2_PACKAGE_PYTHON_TRAITTYPES
+	help
+	  Python3 wrappers for BPF Compiler Collection (BCC).
+
+	  https://pypi.org/project/bcc/
diff --git a/package/python-bcc/python-bcc.hash b/package/python-bcc/python-bcc.hash
new file mode 100644
index 0000000..29caac9
--- /dev/null
+++ b/package/python-bcc/python-bcc.hash
@@ -0,0 +1,3 @@
+# locally calculated
+sha256 a6f41ae67a8b697979d26bbc719fc9ea1b8bb47bdebb44b08fc0d5d308ae12b3  bcc-0.1.10.tar.gz
+sha256 c6386f8304dfdbfc5184f2f01c9b9f45c7cef27cf4ffdf9e138372487f7a9c2b  LICENSE
diff --git a/package/python-bcc/python-bcc.mk b/package/python-bcc/python-bcc.mk
new file mode 100644
index 0000000..5327e5e
--- /dev/null
+++ b/package/python-bcc/python-bcc.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# python-bcc
+#
+################################################################################
+
+PYTHON_BCC_VERSION = 0.1.10
+PYTHON_BCC_SOURCE = bcc-$(PYTHON_BCC_VERSION).tar.gz
+PYTHON_BCC_SITE = https://files.pythonhosted.org/packages/38/dc/3ca34874926789f8df53f3c1d1c38e77ebf876f43760e8745316bb8bd1c0
+PYTHON_BCC_LICENSE = Apache-2.0
+PYTHON_BCC_LICENSE_FILES = LICENSE
+PYTHON_BCC_SETUP_TYPE = setuptools
+PYTHON_BCC_DEPENDENCIES = host-python-pytest-runner
+
+$(eval $(python-package))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 7/7] package/bcc: new package
  2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
                   ` (5 preceding siblings ...)
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 6/7] package/python-bcc: new package Jugurtha BELKALEM
@ 2019-05-02 18:51 ` Jugurtha BELKALEM
  6 siblings, 0 replies; 10+ messages in thread
From: Jugurtha BELKALEM @ 2019-05-02 18:51 UTC (permalink / raw)
  To: buildroot

From: Romain Naour <romain.naour@smile.fr>

bcc is a front-end tool for eBPF :
https://github.com/iovisor/bcc/blob/master/README.md.
eBPF is the most powerful Linux tracer, and bcc
allows to write eBPF scripts in C and PYTHON3.

bcc can help to troubleshoot issues quickly on
embedded systems (as long as Linux kernel
version >= 4.1).

bcc can also make it easy to create observabilty tools,
SDN configuration, ddos mitigation, intrusion detection
and secure containers. More information is available at:
http://www.brendangregg.com/ebpf.html.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
---
---
 package/Config.in                                  |  1 +
 ...CMake-Allow-to-disable-building-man-pages.patch | 35 +++++++++++++++
 package/bcc/0002-fix-aarch64-cross-compile.patch   | 38 ++++++++++++++++
 package/bcc/Config.in                              | 51 ++++++++++++++++++++++
 package/bcc/bcc.hash                               |  3 ++
 package/bcc/bcc.mk                                 | 23 ++++++++++
 6 files changed, 151 insertions(+)
 create mode 100644 package/bcc/0001-CMake-Allow-to-disable-building-man-pages.patch
 create mode 100644 package/bcc/0002-fix-aarch64-cross-compile.patch
 create mode 100644 package/bcc/Config.in
 create mode 100644 package/bcc/bcc.hash
 create mode 100644 package/bcc/bcc.mk

diff --git a/package/Config.in b/package/Config.in
index 38d5321..b2fa28d 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -79,6 +79,7 @@ menu "Compressors and decompressors"
 endmenu
 
 menu "Debugging, profiling and benchmark"
+	source "package/bcc/Config.in"
 	source "package/blktrace/Config.in"
 	source "package/bonnie/Config.in"
 	source "package/cache-calibrator/Config.in"
diff --git a/package/bcc/0001-CMake-Allow-to-disable-building-man-pages.patch b/package/bcc/0001-CMake-Allow-to-disable-building-man-pages.patch
new file mode 100644
index 0000000..c5c87d5
--- /dev/null
+++ b/package/bcc/0001-CMake-Allow-to-disable-building-man-pages.patch
@@ -0,0 +1,35 @@
+From a99f097aedbf964356e62c0c4bba1257f108c3eb Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 7 Dec 2018 22:36:21 +0100
+Subject: [PATCH] CMake: Allow to disable building man pages
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ CMakeLists.txt | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bb3f53b9..5e95d555 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -19,6 +19,7 @@ include(cmake/FindCompilerFlag.cmake)
+ option(ENABLE_LLVM_SHARED "Enable linking LLVM as a shared library" OFF)
+ option(ENABLE_CLANG_JIT "Enable Loading BPF through Clang Frontend" ON)
+ option(ENABLE_USDT "Enable User-level Statically Defined Tracing" ON)
++option(ENABLE_MAN "Build man pages" ON)
+ CMAKE_DEPENDENT_OPTION(ENABLE_CPP_API "Enable C++ API" ON "ENABLE_USDT" OFF)
+ 
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
+@@ -88,7 +89,9 @@ add_subdirectory(src)
+ add_subdirectory(introspection)
+ if(ENABLE_CLANG_JIT)
+ add_subdirectory(examples)
++if(ENABLE_MAN)
+ add_subdirectory(man)
++endif(ENABLE_MAN)
+ add_subdirectory(tests)
+ add_subdirectory(tools)
+ endif(ENABLE_CLANG_JIT)
+-- 
+2.14.5
+
diff --git a/package/bcc/0002-fix-aarch64-cross-compile.patch b/package/bcc/0002-fix-aarch64-cross-compile.patch
new file mode 100644
index 0000000..896ad6a
--- /dev/null
+++ b/package/bcc/0002-fix-aarch64-cross-compile.patch
@@ -0,0 +1,38 @@
+From 4198c9589f9285c2f4e656159e28a3f19e280a7b Mon Sep 17 00:00:00 2001
+From: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+Date: Thu, 2 May 2019 11:06:23 +0200
+Subject: [PATCH] luajit: fix aarch64 cross-compile
+
+Unlike CMAKE_SYSTEM_PROCESSOR which identifies aarch64
+as a valid architecture, luajit does not recognize it.
+luajit defines aarch64 as arm64.
+
+Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+---
+ src/lua/CMakeLists.txt | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/src/lua/CMakeLists.txt b/src/lua/CMakeLists.txt
+index 7541d48..59415b0 100644
+--- a/src/lua/CMakeLists.txt
++++ b/src/lua/CMakeLists.txt
+@@ -13,9 +13,15 @@ if (LUAJIT_LIBRARIES AND LUAJIT)
+ 		DEPENDS ${SRC_LUA} ${CMAKE_CURRENT_SOURCE_DIR}/squishy
+ 	)
+ 
++	if (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
++		SET (LUAJIT_TARGET_ARCH arm64)
++	else()
++		SET (LUAJIT_TARGET_ARCH ${CMAKE_SYSTEM_PROCESSOR})
++	endif()
++
+ 	ADD_CUSTOM_COMMAND(
+ 		OUTPUT bcc.o
+-		COMMAND ${LUAJIT} -bg bcc.lua bcc.o
++		COMMAND ${LUAJIT} -bg bcc.lua -a ${LUAJIT_TARGET_ARCH} bcc.o
+ 		DEPENDS bcc.lua
+ 	)
+ 
+-- 
+2.7.4
+
diff --git a/package/bcc/Config.in b/package/bcc/Config.in
new file mode 100644
index 0000000..4efcb94
--- /dev/null
+++ b/package/bcc/Config.in
@@ -0,0 +1,51 @@
+config BR2_PACKAGE_BCC
+	bool "bcc"
+	depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
+	depends on BR2_TOOLCHAIN_USES_GLIBC # hardcode GNU tuple (x86_64-unknown-linux-gnu)
+	depends on BR2_LINUX_KERNEL # needs kernel sources on the target
+	depends on BR2_HOST_GCC_AT_LEAST_4_8 # clang
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # clang
+	depends on BR2_TOOLCHAIN_HAS_THREADS # clang
+	depends on BR2_INSTALL_LIBSTDCPP # clang
+	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # clang
+	depends on !BR2_STATIC_LIBS # clang, luajit
+	depends on BR2_USE_WCHAR # clang
+	select BR2_PACKAGE_CLANG
+	select BR2_PACKAGE_ELFUTILS
+	select BR2_PACKAGE_FLEX # needs FlexLexer.h
+	select BR2_PACKAGE_LLVM_BPF
+	select BR2_PACKAGE_LUAJIT
+	select BR2_PACKAGE_PYTHON_BCC # wrappers for BPF
+	help
+	  BPF Compiler Collection (BCC)
+
+	  BCC is a toolkit for creating efficient kernel tracing and
+	  manipulation programs, and includes several useful tools and
+	  examples. It makes use of extended BPF (Berkeley Packet
+	  Filters), formally known as eBPF, a new feature that was
+	  first added to Linux 3.15. Much of what BCC uses requires
+	  Linux 4.1 and above.
+
+	  Note: Before using bcc, you need to copy the kernel source
+	  code to the target. By default bcc use:
+	  "/lib/module/<kernel version>/build". That's because the
+	  clang frontend build eBPF code at runtime.
+
+	  https://github.com/iovisor/bcc
+
+comment "bcc needs a Linux kernel to be built"
+	depends on !BR2_LINUX_KERNEL
+
+comment "bcc needs a glibc toolchain w/ wchar, threads, C++, gcc >= 4.8, host gcc >= 4.8, dynamic library"
+	depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
+	depends on BR2_LINUX_KERNEL
+	depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_TOOLCHAIN_HAS_THREADS \
+		|| !BR2_INSTALL_LIBSTDCPP || !BR2_HOST_GCC_AT_LEAST_4_8 \
+		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || BR2_STATIC_LIBS \
+		|| !BR2_USE_WCHAR
+
+comment "bcc needs a toolchain not affected by GCC bug 64735"
+	depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
+	depends on BR2_LINUX_KERNEL
+	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
diff --git a/package/bcc/bcc.hash b/package/bcc/bcc.hash
new file mode 100644
index 0000000..19eccb3
--- /dev/null
+++ b/package/bcc/bcc.hash
@@ -0,0 +1,3 @@
+# locally calculated
+sha256 269949a47f9ed2ff01b5ebca20ec4a52341f7ff14b033b9dc1669b72a87af042  bcc-v0.8.0.tar.gz
+sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1  LICENSE.txt
diff --git a/package/bcc/bcc.mk b/package/bcc/bcc.mk
new file mode 100644
index 0000000..e8f53eb
--- /dev/null
+++ b/package/bcc/bcc.mk
@@ -0,0 +1,23 @@
+################################################################################
+#
+# bcc
+#
+################################################################################
+
+BCC_VERSION = v0.8.0
+BCC_SITE = $(call github,iovisor,bcc,$(BCC_VERSION))
+BCC_LICENSE = Apache-2.0
+BCC_LICENSE_FILES = LICENSE.txt
+# libbcc.so and libbpf.so
+BCC_INSTALL_STAGING = YES
+
+BCC_DEPENDENCIES = host-bison host-flex host-luajit clang elfutils flex llvm luajit
+
+# ENABLE_LLVM_SHARED=ON to use llvm.so.
+# Force REVISION otherwise bcc will use git describe to generate a version number.
+BCC_CONF_OPTS = -DENABLE_LLVM_SHARED=ON \
+	-DREVISION=$(BCC_VERSION) \
+	-DENABLE_CLANG_JIT=ON \
+	-DENABLE_MAN=OFF
+
+$(eval $(cmake-package))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 4/7] package/python-traittypes: new package
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 4/7] package/python-traittypes: " Jugurtha BELKALEM
@ 2019-05-03  6:22   ` Yegor Yefremov
  0 siblings, 0 replies; 10+ messages in thread
From: Yegor Yefremov @ 2019-05-03  6:22 UTC (permalink / raw)
  To: buildroot

On Thu, May 2, 2019 at 8:53 PM Jugurtha BELKALEM
<jugurtha.belkalem@smile.fr> wrote:
>
> bcc requires this package which is used to add
> custom trait types for scientific computing.
>
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>

>
> ---
> Changes v1 => v2:
> Correcting typos, adding #runtime
> comment and fixing License name.
> ---
>  DEVELOPERS                                       |  1 +
>  package/Config.in                                |  1 +
>  package/python-traittypes/Config.in              |  7 +++++++
>  package/python-traittypes/python-traittypes.hash |  5 +++++
>  package/python-traittypes/python-traittypes.mk   | 14 ++++++++++++++
>  5 files changed, 28 insertions(+)
>  create mode 100644 package/python-traittypes/Config.in
>  create mode 100644 package/python-traittypes/python-traittypes.hash
>  create mode 100644 package/python-traittypes/python-traittypes.mk
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index d4370db..dc83571 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1227,6 +1227,7 @@ F:        package/python-xlib/
>  N:     Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
>  F:     package/python-pytest
>  F:     package/python-pytest-runner
> +F:     package/python-traittypes
>
>  N:     Joshua Henderson <joshua.henderson@microchip.com>
>  F:     package/qt5/qt5wayland/
> diff --git a/package/Config.in b/package/Config.in
> index 4fcf4f7..4918ec5 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1073,6 +1073,7 @@ menu "External python modules"
>         source "package/python-toml/Config.in"
>         source "package/python-tornado/Config.in"
>         source "package/python-traitlets/Config.in"
> +       source "package/python-traittypes/Config.in"
>         source "package/python-treq/Config.in"
>         source "package/python-twisted/Config.in"
>         source "package/python-txaio/Config.in"
> diff --git a/package/python-traittypes/Config.in b/package/python-traittypes/Config.in
> new file mode 100644
> index 0000000..0688f80
> --- /dev/null
> +++ b/package/python-traittypes/Config.in
> @@ -0,0 +1,7 @@
> +config BR2_PACKAGE_PYTHON_TRAITTYPES
> +       bool "python-traittypes"
> +       select BR2_PACKAGE_PYTHON_TRAITLETS # runtime
> +       help
> +         Custom trait types for scientific computing.
> +
> +         https://pypi.org/project/traittypes/
> diff --git a/package/python-traittypes/python-traittypes.hash b/package/python-traittypes/python-traittypes.hash
> new file mode 100644
> index 0000000..a94b256
> --- /dev/null
> +++ b/package/python-traittypes/python-traittypes.hash
> @@ -0,0 +1,5 @@
> +# sha256 from https://pypi.org/project/traittypes/#files
> +sha256 be6fa26294733e7489822ded4ae25da5b4824a8a7a0e0c2dccfde596e3489bd6 traittypes-0.2.1.tar.gz
> +
> +# Locally calculated
> +sha256 221976dfad5db283a2669efe8607e24c9c9aecca8453d6beba045e665c2f88a1 LICENSE
> diff --git a/package/python-traittypes/python-traittypes.mk b/package/python-traittypes/python-traittypes.mk
> new file mode 100644
> index 0000000..d360e2d
> --- /dev/null
> +++ b/package/python-traittypes/python-traittypes.mk
> @@ -0,0 +1,14 @@
> +################################################################################
> +#
> +# python-traittypes
> +#
> +################################################################################
> +
> +PYTHON_TRAITTYPES_VERSION = 0.2.1
> +PYTHON_TRAITTYPES_SOURCE = traittypes-$(PYTHON_TRAITTYPES_VERSION).tar.gz
> +PYTHON_TRAITTYPES_SITE = https://files.pythonhosted.org/packages/8a/71/0578e44d2110f93c2136eb705f5b11e706e1e8ea3acaaaeac043bd40d8fd
> +PYTHON_TRAITTYPES_LICENSE = BSD-3-Clause
> +PYTHON_TRAITTYPES_LICENSE_FILES = LICENSE
> +PYTHON_TRAITTYPES_SETUP_TYPE = distutils
> +
> +$(eval $(python-package))
> --
> 2.7.4
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Buildroot] [PATCH v2 6/7] package/python-bcc: new package
  2019-05-02 18:51 ` [Buildroot] [PATCH v2 6/7] package/python-bcc: new package Jugurtha BELKALEM
@ 2019-05-03  6:37   ` Yegor Yefremov
  0 siblings, 0 replies; 10+ messages in thread
From: Yegor Yefremov @ 2019-05-03  6:37 UTC (permalink / raw)
  To: buildroot

Hi Jugurtha,

On Thu, May 2, 2019 at 8:53 PM Jugurtha BELKALEM
<jugurtha.belkalem@smile.fr> wrote:
>
> bcc python wrapper required by bcc to
> work properly.
>
> audit package is used by python-bcc
> to map system calls to their correspending

s/correspending/corresponding

> numbers in various architectures
> that are different from x86_64.
>
> python-bcc requires host-python-pytest-runner
> to compile properly.

With your patch it should compile without host-python-pytest-runner.
So you don't need to add these packages.

>
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
>
> ---
> Changes v1 => v2:
> - Correcting typos and adding #runtime
> comment.
> - Invoke pytest-runner only when neccessary.
>
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> ---
>  DEVELOPERS                                         |  1 +
>  package/Config.in                                  |  1 +
>  ...e-pytest-runner-a-conditional-requirement.patch | 47 ++++++++++++++++++++++
>  package/python-bcc/Config.in                       | 11 +++++
>  package/python-bcc/python-bcc.hash                 |  3 ++
>  package/python-bcc/python-bcc.mk                   | 15 +++++++
>  6 files changed, 78 insertions(+)
>  create mode 100644 package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch
>  create mode 100644 package/python-bcc/Config.in
>  create mode 100644 package/python-bcc/python-bcc.hash
>  create mode 100644 package/python-bcc/python-bcc.mk
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index dc83571..35451d5 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1225,6 +1225,7 @@ F:        package/python-websockets/
>  F:     package/python-xlib/
>
>  N:     Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> +F:     package/python-bcc
>  F:     package/python-pytest
>  F:     package/python-pytest-runner
>  F:     package/python-traittypes
> diff --git a/package/Config.in b/package/Config.in
> index 4918ec5..38d5321 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -832,6 +832,7 @@ menu "External python modules"
>         source "package/python-backports-abc/Config.in"
>         source "package/python-backports-shutil-get-terminal-size/Config.in"
>         source "package/python-backports-ssl-match-hostname/Config.in"
> +       source "package/python-bcc/Config.in"
>         source "package/python-bcrypt/Config.in"
>         source "package/python-beautifulsoup4/Config.in"
>         source "package/python-bitstring/Config.in"
> diff --git a/package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch b/package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch
> new file mode 100644
> index 0000000..219e850
> --- /dev/null
> +++ b/package/python-bcc/0001-Make-pytest-runner-a-conditional-requirement.patch
> @@ -0,0 +1,47 @@
> +From e7c8912e5e59de50fe359fe2e03f179c25c2dfbf Mon Sep 17 00:00:00 2001
> +From: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> +Date: Thu, 2 May 2019 17:18:16 +0200
> +Subject: [PATCH] Make pytest runner a conditional requirement
> +
> +Check for pytest-runner only if setup.py was invoked with 'test'
> +argument.
> +
> +Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> +---
> + python-bcc-0.1.10/setup.py | 6 ++++--
> + 1 file changed, 4 insertions(+), 2 deletions(-)
> +
> +diff --git a/setup.py b/python-bcc-0.1.10/setup.py
> +index c27e9a9..9a91e04 100644
> +--- a/setup.py
> ++++ b/setup.py
> +@@ -4,6 +4,7 @@
> + """The setup script."""
> +
> + from setuptools import setup, find_packages
> ++import sys
> +
> + with open('README.rst') as readme_file:
> +     readme = readme_file.read()
> +@@ -17,7 +18,8 @@ requirements = [
> +     'traittypes',
> + ]
> +
> +-setup_requirements = ['pytest-runner', ]
> ++needs_pytest = set(['pytest', 'test', 'ptr']).intersection(sys.argv)
> ++pytest_runner = ['pytest-runner'] if needs_pytest else []
> +
> + test_requirements = [
> +     'pytest',
> +@@ -46,7 +48,7 @@ setup(
> +     keywords='bcc',
> +     name='bcc',
> +     packages=find_packages(include=['bcc']),
> +-    setup_requires=setup_requirements,
> ++    setup_requires=pytest_runner,
> +     test_suite='tests',
> +     tests_require=test_requirements,
> +     url='https://github.com/willsheffler/bcc',
> +--
> +2.7.4

Could you make a pull request with this patch here
https://github.com/willsheffler/bcc?

> diff --git a/package/python-bcc/Config.in b/package/python-bcc/Config.in
> new file mode 100644
> index 0000000..a007bc9
> --- /dev/null
> +++ b/package/python-bcc/Config.in
> @@ -0,0 +1,11 @@
> +config BR2_PACKAGE_PYTHON_BCC
> +       bool "python-bcc"
> +       depends on BR2_PACKAGE_PYTHON3
> +       select BR2_PACKAGE_AUDIT  # runtime
> +       select BR2_PACKAGE_PYTHON_PYTEST_RUNNER

remove this dependecy

> +       select BR2_PACKAGE_PYTHON_TRAITLETS # runtime
> +       select BR2_PACKAGE_PYTHON_TRAITTYPES

# runtime missing

> +       help
> +         Python3 wrappers for BPF Compiler Collection (BCC).
> +
> +         https://pypi.org/project/bcc/
> diff --git a/package/python-bcc/python-bcc.hash b/package/python-bcc/python-bcc.hash
> new file mode 100644
> index 0000000..29caac9
> --- /dev/null
> +++ b/package/python-bcc/python-bcc.hash
> @@ -0,0 +1,3 @@
> +# locally calculated
> +sha256 a6f41ae67a8b697979d26bbc719fc9ea1b8bb47bdebb44b08fc0d5d308ae12b3  bcc-0.1.10.tar.gz
> +sha256 c6386f8304dfdbfc5184f2f01c9b9f45c7cef27cf4ffdf9e138372487f7a9c2b  LICENSE
> diff --git a/package/python-bcc/python-bcc.mk b/package/python-bcc/python-bcc.mk
> new file mode 100644
> index 0000000..5327e5e
> --- /dev/null
> +++ b/package/python-bcc/python-bcc.mk
> @@ -0,0 +1,15 @@
> +################################################################################
> +#
> +# python-bcc
> +#
> +################################################################################
> +
> +PYTHON_BCC_VERSION = 0.1.10
> +PYTHON_BCC_SOURCE = bcc-$(PYTHON_BCC_VERSION).tar.gz
> +PYTHON_BCC_SITE = https://files.pythonhosted.org/packages/38/dc/3ca34874926789f8df53f3c1d1c38e77ebf876f43760e8745316bb8bd1c0
> +PYTHON_BCC_LICENSE = Apache-2.0
> +PYTHON_BCC_LICENSE_FILES = LICENSE
> +PYTHON_BCC_SETUP_TYPE = setuptools
> +PYTHON_BCC_DEPENDENCIES = host-python-pytest-runner

remove this dependency

> +
> +$(eval $(python-package))
> --
> 2.7.4
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-05-03  6:37 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-02 18:51 [Buildroot] [PATCH v2 0/7] bcc front end tool for eBPF Jugurtha BELKALEM
2019-05-02 18:51 ` [Buildroot] [PATCH v2 1/7] package/luajit: bump to version 2.1.x developpment version for aarch64 Jugurtha BELKALEM
2019-05-02 18:51 ` [Buildroot] [PATCH v2 2/7] package/python-pytest: new package Jugurtha BELKALEM
2019-05-02 18:51 ` [Buildroot] [PATCH v2 3/7] package/python-pytest-runner: " Jugurtha BELKALEM
2019-05-02 18:51 ` [Buildroot] [PATCH v2 4/7] package/python-traittypes: " Jugurtha BELKALEM
2019-05-03  6:22   ` Yegor Yefremov
2019-05-02 18:51 ` [Buildroot] [PATCH v2 5/7] package/llvm: add BPF backend Jugurtha BELKALEM
2019-05-02 18:51 ` [Buildroot] [PATCH v2 6/7] package/python-bcc: new package Jugurtha BELKALEM
2019-05-03  6:37   ` Yegor Yefremov
2019-05-02 18:51 ` [Buildroot] [PATCH v2 7/7] package/bcc: " Jugurtha BELKALEM

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.