[v7,3/4] package/python-pybind11: new host package

Message ID 20200321190241.3590-4-jagan@amarulasolutions.com
State New
Headers show
Series
  • package/python-scipy: new package
Related show

Commit Message

Jagan Teki March 21, 2020, 7:02 p.m. UTC
Add python-pybind11 package with 2.4.3 release version.

Cc: Esben Haabendal <esben@geanix.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
Changes for v7:
- update the commit message
- fix sha256 value of pybind11 LICENCE

 DEVELOPERS                                   |  1 +
 package/Config.in.host                       |  1 +
 package/python-pybind11/Config.in.host       |  7 +++++++
 package/python-pybind11/python-pybind11.hash |  5 +++++
 package/python-pybind11/python-pybind11.mk   | 14 ++++++++++++++
 5 files changed, 28 insertions(+)
 create mode 100644 package/python-pybind11/Config.in.host
 create mode 100644 package/python-pybind11/python-pybind11.hash
 create mode 100644 package/python-pybind11/python-pybind11.mk

Comments

Asaf Kahlon March 25, 2020, 7:19 a.m. UTC | #1
Hello,

On Sat, Mar 21, 2020 at 9:03 PM Jagan Teki <jagan@amarulasolutions.com> wrote:
>
> Add python-pybind11 package with 2.4.3 release version.
>
> Cc: Esben Haabendal <esben@geanix.com>
> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
> ---
> Changes for v7:
> - update the commit message
> - fix sha256 value of pybind11 LICENCE
>
>  DEVELOPERS                                   |  1 +
>  package/Config.in.host                       |  1 +
>  package/python-pybind11/Config.in.host       |  7 +++++++
>  package/python-pybind11/python-pybind11.hash |  5 +++++
>  package/python-pybind11/python-pybind11.mk   | 14 ++++++++++++++
>  5 files changed, 28 insertions(+)
>  create mode 100644 package/python-pybind11/Config.in.host
>  create mode 100644 package/python-pybind11/python-pybind11.hash
>  create mode 100644 package/python-pybind11/python-pybind11.mk

I don't think pybind11 should be a host package. It's a header-only library
and the headers are used to compile target sources (in your case - scipy).
The headers should be only installed to the staging dir (like spdlog,
for example).
You can take a look here as a reference:
https://patchwork.ozlabs.org/patch/1202657/

>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index a2c6da208b..308a59b264 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1151,6 +1151,7 @@ F:        configs/orangepi_win_defconfig
>  F:     configs/orangepi_zero_plus2_defconfig
>  F:     configs/pine64_defconfig
>  F:     configs/pine64_sopine_defconfig
> +F:     package/python-pybind11
>
>  N:     James Hilliard <james.hilliard1@gmail.com>
>  F:     package/gensio/
> diff --git a/package/Config.in.host b/package/Config.in.host
> index dfea478868..d63bf54aa7 100644
> --- a/package/Config.in.host
> +++ b/package/Config.in.host
> @@ -57,6 +57,7 @@ menu "Host utilities"
>         source "package/python/Config.in.host"
>         source "package/python-cython/Config.in.host"
>         source "package/python-lxml/Config.in.host"
> +       source "package/python-pybind11/Config.in.host"
>         source "package/python-six/Config.in.host"
>         source "package/python-xlrd/Config.in.host"
>         source "package/python3/Config.in.host"
> diff --git a/package/python-pybind11/Config.in.host b/package/python-pybind11/Config.in.host
> new file mode 100644
> index 0000000000..e4164efd9d
> --- /dev/null
> +++ b/package/python-pybind11/Config.in.host
> @@ -0,0 +1,7 @@
> +config BR2_PACKAGE_HOST_PYTHON_PYBIND11
> +       bool "host python-pybind11"
> +       help
> +         Python module for Seamless operability between
> +         C++11 and Python.
> +
> +         https://github.com/pybind/pybind11
> diff --git a/package/python-pybind11/python-pybind11.hash b/package/python-pybind11/python-pybind11.hash
> new file mode 100644
> index 0000000000..880b678b94
> --- /dev/null
> +++ b/package/python-pybind11/python-pybind11.hash
> @@ -0,0 +1,5 @@
> +# md5, sha256 from https://pypi.python.org/pypi/pybind11/json
> +md5  23fdca8191b16ce3e7f38fb9e4252b2d  pybind11-2.4.3.tar.gz
> +sha256  72e6def53fb491f7f4e92692029d2e7bb5a0783314f20d80222735ff10a75758  pybind11-2.4.3.tar.gz
> +# sha256 for LICENSE is locally computed
> +sha256  9a37ea54aa3cf12c7f3292799f20822ffd4b9b7142b36a7a9997b28c39264dc9  LICENSE
> diff --git a/package/python-pybind11/python-pybind11.mk b/package/python-pybind11/python-pybind11.mk
> new file mode 100644
> index 0000000000..833ec92c86
> --- /dev/null
> +++ b/package/python-pybind11/python-pybind11.mk
> @@ -0,0 +1,14 @@
> +################################################################################
> +#
> +# python-pybind11
> +#
> +################################################################################
> +
> +PYTHON_PYBIND11_VERSION = 2.4.3
> +PYTHON_PYBIND11_SOURCE = pybind11-$(PYTHON_PYBIND11_VERSION).tar.gz
> +PYTHON_PYBIND11_SITE = https://pypi.python.org/packages/aa/91/deb6743e79e22ab01502296570b39b8404f10cc507a6692d612a7fee8d51
> +PYTHON_PYBIND11_SETUP_TYPE = setuptools
> +PYTHON_PYBIND11_LICENSE = BSD
> +PYTHON_PYBIND11_LICENSE_FILES = LICENSE
> +
> +$(eval $(host-python-package))
> --
> 2.17.1
>
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Regards,
Asaf.
Jagan Teki April 1, 2020, 3:21 p.m. UTC | #2
Hi Asaf,

On Wed, Mar 25, 2020 at 12:50 PM Asaf Kahlon <asafka7@gmail.com> wrote:
>
> Hello,
>
> On Sat, Mar 21, 2020 at 9:03 PM Jagan Teki <jagan@amarulasolutions.com> wrote:
> >
> > Add python-pybind11 package with 2.4.3 release version.
> >
> > Cc: Esben Haabendal <esben@geanix.com>
> > Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
> > ---
> > Changes for v7:
> > - update the commit message
> > - fix sha256 value of pybind11 LICENCE
> >
> >  DEVELOPERS                                   |  1 +
> >  package/Config.in.host                       |  1 +
> >  package/python-pybind11/Config.in.host       |  7 +++++++
> >  package/python-pybind11/python-pybind11.hash |  5 +++++
> >  package/python-pybind11/python-pybind11.mk   | 14 ++++++++++++++
> >  5 files changed, 28 insertions(+)
> >  create mode 100644 package/python-pybind11/Config.in.host
> >  create mode 100644 package/python-pybind11/python-pybind11.hash
> >  create mode 100644 package/python-pybind11/python-pybind11.mk
>
> I don't think pybind11 should be a host package. It's a header-only library
> and the headers are used to compile target sources (in your case - scipy).
> The headers should be only installed to the staging dir (like spdlog,
> for example).
> You can take a look here as a reference:
> https://patchwork.ozlabs.org/patch/1202657/

Thanks for commenting on this.

Please check this build log[1], it look phbind11 host package required
to build scipy. Let me know if I miss anything?

[1] https://gist.github.com/openedev/19eb3dcf1e56bd267a72b30417d1b3b4

Jagan.
Adam Duskett April 3, 2020, 7:04 a.m. UTC | #3
Hello;

Feel free to also add my patch which tests pybind11 into your series:
https://patchwork.ozlabs.org/patch/1202658/

On Wed, Apr 1, 2020 at 8:22 AM Jagan Teki <jagan@amarulasolutions.com> wrote:
>
> Hi Asaf,
>
> On Wed, Mar 25, 2020 at 12:50 PM Asaf Kahlon <asafka7@gmail.com> wrote:
> >
> > Hello,
> >
> > On Sat, Mar 21, 2020 at 9:03 PM Jagan Teki <jagan@amarulasolutions.com> wrote:
> > >
> > > Add python-pybind11 package with 2.4.3 release version.
> > >
> > > Cc: Esben Haabendal <esben@geanix.com>
> > > Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
> > > ---
> > > Changes for v7:
> > > - update the commit message
> > > - fix sha256 value of pybind11 LICENCE
> > >
> > >  DEVELOPERS                                   |  1 +
> > >  package/Config.in.host                       |  1 +
> > >  package/python-pybind11/Config.in.host       |  7 +++++++
> > >  package/python-pybind11/python-pybind11.hash |  5 +++++
> > >  package/python-pybind11/python-pybind11.mk   | 14 ++++++++++++++
> > >  5 files changed, 28 insertions(+)
> > >  create mode 100644 package/python-pybind11/Config.in.host
> > >  create mode 100644 package/python-pybind11/python-pybind11.hash
> > >  create mode 100644 package/python-pybind11/python-pybind11.mk
> >
> > I don't think pybind11 should be a host package. It's a header-only library
> > and the headers are used to compile target sources (in your case - scipy).
> > The headers should be only installed to the staging dir (like spdlog,
> > for example).
> > You can take a look here as a reference:
> > https://patchwork.ozlabs.org/patch/1202657/
>
> Thanks for commenting on this.
>
> Please check this build log[1], it look phbind11 host package required
> to build scipy. Let me know if I miss anything?
>
> [1] https://gist.github.com/openedev/19eb3dcf1e56bd267a72b30417d1b3b4
>
> Jagan.
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Jagan Teki April 3, 2020, 2:03 p.m. UTC | #4
On Fri, Apr 3, 2020 at 12:35 PM Adam Duskett <aduskett@gmail.com> wrote:
>
> Hello;
>
> Feel free to also add my patch which tests pybind11 into your series:
> https://patchwork.ozlabs.org/patch/1202658/

As I said, this patch used pybind11 for host so are these tests common
across host vs target? How can I test them?

Jagan.
Adam Duskett April 5, 2020, 6:41 p.m. UTC | #5
Hello;

On Fri, Apr 3, 2020 at 7:03 AM Jagan Teki <jagan@amarulasolutions.com> wrote:
>
> On Fri, Apr 3, 2020 at 12:35 PM Adam Duskett <aduskett@gmail.com> wrote:
> >
> > Hello;
> >
> > Feel free to also add my patch which tests pybind11 into your series:
> > https://patchwork.ozlabs.org/patch/1202658/
>
> As I said, this patch used pybind11 for host so are these tests common
> across host vs target? How can I test them?
>
The test compiles a simple C program and then uses a python program
with pybind11
to ensure that pybind11 is working properly.

Adam
> Jagan.

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index a2c6da208b..308a59b264 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1151,6 +1151,7 @@  F:	configs/orangepi_win_defconfig
 F:	configs/orangepi_zero_plus2_defconfig
 F:	configs/pine64_defconfig
 F:	configs/pine64_sopine_defconfig
+F:	package/python-pybind11
 
 N:	James Hilliard <james.hilliard1@gmail.com>
 F:	package/gensio/
diff --git a/package/Config.in.host b/package/Config.in.host
index dfea478868..d63bf54aa7 100644
--- a/package/Config.in.host
+++ b/package/Config.in.host
@@ -57,6 +57,7 @@  menu "Host utilities"
 	source "package/python/Config.in.host"
 	source "package/python-cython/Config.in.host"
 	source "package/python-lxml/Config.in.host"
+	source "package/python-pybind11/Config.in.host"
 	source "package/python-six/Config.in.host"
 	source "package/python-xlrd/Config.in.host"
 	source "package/python3/Config.in.host"
diff --git a/package/python-pybind11/Config.in.host b/package/python-pybind11/Config.in.host
new file mode 100644
index 0000000000..e4164efd9d
--- /dev/null
+++ b/package/python-pybind11/Config.in.host
@@ -0,0 +1,7 @@ 
+config BR2_PACKAGE_HOST_PYTHON_PYBIND11
+	bool "host python-pybind11"
+	help
+	  Python module for Seamless operability between
+	  C++11 and Python.
+
+	  https://github.com/pybind/pybind11
diff --git a/package/python-pybind11/python-pybind11.hash b/package/python-pybind11/python-pybind11.hash
new file mode 100644
index 0000000000..880b678b94
--- /dev/null
+++ b/package/python-pybind11/python-pybind11.hash
@@ -0,0 +1,5 @@ 
+# md5, sha256 from https://pypi.python.org/pypi/pybind11/json
+md5  23fdca8191b16ce3e7f38fb9e4252b2d  pybind11-2.4.3.tar.gz
+sha256  72e6def53fb491f7f4e92692029d2e7bb5a0783314f20d80222735ff10a75758  pybind11-2.4.3.tar.gz
+# sha256 for LICENSE is locally computed
+sha256  9a37ea54aa3cf12c7f3292799f20822ffd4b9b7142b36a7a9997b28c39264dc9  LICENSE
diff --git a/package/python-pybind11/python-pybind11.mk b/package/python-pybind11/python-pybind11.mk
new file mode 100644
index 0000000000..833ec92c86
--- /dev/null
+++ b/package/python-pybind11/python-pybind11.mk
@@ -0,0 +1,14 @@ 
+################################################################################
+#
+# python-pybind11
+#
+################################################################################
+
+PYTHON_PYBIND11_VERSION = 2.4.3
+PYTHON_PYBIND11_SOURCE = pybind11-$(PYTHON_PYBIND11_VERSION).tar.gz
+PYTHON_PYBIND11_SITE = https://pypi.python.org/packages/aa/91/deb6743e79e22ab01502296570b39b8404f10cc507a6692d612a7fee8d51
+PYTHON_PYBIND11_SETUP_TYPE = setuptools
+PYTHON_PYBIND11_LICENSE = BSD
+PYTHON_PYBIND11_LICENSE_FILES = LICENSE
+
+$(eval $(host-python-package))