All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v4 2/2] grpc: new package
  2018-11-29  6:17 Robert Rose
@ 2018-11-29  6:17 ` Robert Rose
  0 siblings, 0 replies; 7+ messages in thread
From: Robert Rose @ 2018-11-29  6:17 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Robert Rose <robertroyrose@gmail.com>
---
 DEVELOPERS                                    |  3 ++
 package/Config.in                             |  1 +
 .../0001-target-build-using-host-plugin.patch | 44 +++++++++++++++++++
 package/grpc/Config.in                        | 11 +++++
 package/grpc/grpc.hash                        |  5 +++
 package/grpc/grpc.mk                          | 36 +++++++++++++++
 6 files changed, 100 insertions(+)
 create mode 100644 package/grpc/0001-target-build-using-host-plugin.patch
 create mode 100644 package/grpc/Config.in
 create mode 100644 package/grpc/grpc.hash
 create mode 100644 package/grpc/grpc.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 53467da489..437614c190 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1772,6 +1772,9 @@ F:	package/subversion/
 N:	RJ Ascani <rj.ascani@gmail.com>
 F:	package/azmq/
 
+N:	Robert Rose <robertroyrose@gmail.com>
+F:	package/grpc
+
 N:	Rodrigo Rebello <rprebello@gmail.com>
 F:	package/chocolate-doom/
 F:	package/irssi/
diff --git a/package/Config.in b/package/Config.in
index b60e7700ad..2d0cc51797 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1495,6 +1495,7 @@ menu "Networking"
 	source "package/freeradius-client/Config.in"
 	source "package/geoip/Config.in"
 	source "package/glib-networking/Config.in"
+	source "package/grpc/Config.in"
 	source "package/gssdp/Config.in"
 	source "package/gupnp/Config.in"
 	source "package/gupnp-av/Config.in"
diff --git a/package/grpc/0001-target-build-using-host-plugin.patch b/package/grpc/0001-target-build-using-host-plugin.patch
new file mode 100644
index 0000000000..d4aee1b441
--- /dev/null
+++ b/package/grpc/0001-target-build-using-host-plugin.patch
@@ -0,0 +1,44 @@
+From aa18148e392ef28275a182db34397ccb66fb4617 Mon Sep 17 00:00:00 2001
+From: Robert Rose <robertroyrose@gmail.com>
+Date: Wed, 28 Nov 2018 09:41:52 -0800
+Subject: [PATCH 1/1] grpc: new package
+
+Signed-off-by: Robert Rose <robertroyrose@gmail.com>
+---
+ CMakeLists.txt | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fc76cf5..7a22b08 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -13108,6 +13108,18 @@ target_link_libraries(grpc_cli
+ endif (gRPC_BUILD_TESTS)
+ if (gRPC_BUILD_CODEGEN)
+ 
++if (gRPC_NATIVE_CPP_PLUGIN)
++
++add_executable(grpc_cpp_plugin
++  IMPORTED
++)
++
++set_property(TARGET grpc_cpp_plugin
++  PROPERTY IMPORTED_LOCATION ${gRPC_NATIVE_CPP_PLUGIN}
++)
++
++else()
++
+ add_executable(grpc_cpp_plugin
+   src/compiler/cpp_plugin.cc
+ )
+@@ -13143,6 +13155,7 @@ if (gRPC_INSTALL)
+     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
+   )
+ endif()
++endif()
+ 
+ endif (gRPC_BUILD_CODEGEN)
+ if (gRPC_BUILD_CODEGEN)
+-- 
+2.20.0.rc0.387.gc7a69e6b6c-goog
+
diff --git a/package/grpc/Config.in b/package/grpc/Config.in
new file mode 100644
index 0000000000..e4364c2fe6
--- /dev/null
+++ b/package/grpc/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_GRPC
+	bool "grpc"
+	select BR2_PACKAGE_C_ARES
+	select BR2_PACKAGE_OPENSSL
+	select BR2_PACKAGE_PROTOBUF
+	select BR2_PACKAGE_ZLIB
+	help
+	  A language-neutral, platform-neutral, open source, remote
+	  procedure call (RPC) system initially developed at Google.
+
+	  http://github.com/grpc/grpc
diff --git a/package/grpc/grpc.hash b/package/grpc/grpc.hash
new file mode 100644
index 0000000000..8a1df947fd
--- /dev/null
+++ b/package/grpc/grpc.hash
@@ -0,0 +1,5 @@
+# Locally computed
+sha256 a5342629fe1b689eceb3be4d4f167b04c70a84b9d61cf8b555e968bc500bdb5a grpc-v1.16.1.tar.gz
+sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
+
+
diff --git a/package/grpc/grpc.mk b/package/grpc/grpc.mk
new file mode 100644
index 0000000000..1aa5447386
--- /dev/null
+++ b/package/grpc/grpc.mk
@@ -0,0 +1,36 @@
+################################################################################
+#
+# grpc
+#
+################################################################################
+
+GRPC_VERSION = v1.16.1
+GRPC_SOURCE = grpc-$(GRPC_VERSION).tar.gz
+GRPC_SITE = $(call github,grpc,grpc,$(GRPC_VERSION))
+GRPC_LICENSE = Apache-2.0
+GRPC_LICENSE_FILES = LICENSE
+
+GRPC_INSTALL_STAGING = YES
+
+# Need to use host grpc_cpp_plugin during cross compilation.
+GRPC_DEPENDENCIES = c-ares host-grpc openssl protobuf zlib
+HOST_GRPC_DEPENDENCIES = host-c-ares host-openssl host-protobuf host-zlib
+
+GRPC_CONF_OPTS = \
+         -D_gRPC_CARES_LIBRARIES=cares \
+         -DgRPC_CARES_PROVIDER=none \
+         -DgRPC_PROTOBUF_PROVIDER=package \
+         -DgRPC_SSL_PROVIDER=package \
+         -DgRPC_ZLIB_PROVIDER=package \
+         -DgRPC_NATIVE_CPP_PLUGIN=$(HOST_DIR)/bin/grpc_cpp_plugin
+
+HOST_GRPC_CONF_OPTS = \
+         -D_gRPC_CARES_LIBRARIES=cares \
+         -DgRPC_CARES_PROVIDER=none \
+         -DgRPC_CARES_PROVIDER=none \
+         -DgRPC_PROTOBUF_PROVIDER=package \
+         -DgRPC_SSL_PROVIDER=package \
+         -DgRPC_ZLIB_PROVIDER=package
+
+$(eval $(cmake-package))
+$(eval $(host-cmake-package))
-- 
2.20.0.rc0.387.gc7a69e6b6c-goog

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

* [Buildroot] [PATCH v4 1/2] c-ares: support host build
@ 2018-11-29  6:21 Robert Rose
  2018-11-29  6:21 ` [Buildroot] [PATCH v4 2/2] grpc: new package Robert Rose
  2018-11-29 21:10 ` [Buildroot] [PATCH v4 1/2] c-ares: support host build Thomas Petazzoni
  0 siblings, 2 replies; 7+ messages in thread
From: Robert Rose @ 2018-11-29  6:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Robert Rose <robertroyrose@gmail.com>
---
 package/c-ares/c-ares.mk | 1 +
 1 file changed, 1 insertion(+)

diff --git a/package/c-ares/c-ares.mk b/package/c-ares/c-ares.mk
index 67254244a1..76e9687b37 100644
--- a/package/c-ares/c-ares.mk
+++ b/package/c-ares/c-ares.mk
@@ -15,3 +15,4 @@ C_ARES_LICENSE = MIT
 C_ARES_LICENSE_FILES = ares_mkquery.c
 
 $(eval $(autotools-package))
+$(eval $(host-autotools-package))
-- 
2.20.0.rc0.387.gc7a69e6b6c-goog

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

* [Buildroot] [PATCH v4 2/2] grpc: new package
  2018-11-29  6:21 [Buildroot] [PATCH v4 1/2] c-ares: support host build Robert Rose
@ 2018-11-29  6:21 ` Robert Rose
  2018-11-29 21:12   ` Thomas Petazzoni
  2018-11-29 21:10 ` [Buildroot] [PATCH v4 1/2] c-ares: support host build Thomas Petazzoni
  1 sibling, 1 reply; 7+ messages in thread
From: Robert Rose @ 2018-11-29  6:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Robert Rose <robertroyrose@gmail.com>
---
 DEVELOPERS                                    |  3 ++
 package/Config.in                             |  1 +
 .../0001-target-build-using-host-plugin.patch | 44 +++++++++++++++++++
 package/grpc/Config.in                        | 11 +++++
 package/grpc/grpc.hash                        |  5 +++
 package/grpc/grpc.mk                          | 36 +++++++++++++++
 6 files changed, 100 insertions(+)
 create mode 100644 package/grpc/0001-target-build-using-host-plugin.patch
 create mode 100644 package/grpc/Config.in
 create mode 100644 package/grpc/grpc.hash
 create mode 100644 package/grpc/grpc.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 53467da489..437614c190 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1772,6 +1772,9 @@ F:	package/subversion/
 N:	RJ Ascani <rj.ascani@gmail.com>
 F:	package/azmq/
 
+N:	Robert Rose <robertroyrose@gmail.com>
+F:	package/grpc
+
 N:	Rodrigo Rebello <rprebello@gmail.com>
 F:	package/chocolate-doom/
 F:	package/irssi/
diff --git a/package/Config.in b/package/Config.in
index b60e7700ad..2d0cc51797 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1495,6 +1495,7 @@ menu "Networking"
 	source "package/freeradius-client/Config.in"
 	source "package/geoip/Config.in"
 	source "package/glib-networking/Config.in"
+	source "package/grpc/Config.in"
 	source "package/gssdp/Config.in"
 	source "package/gupnp/Config.in"
 	source "package/gupnp-av/Config.in"
diff --git a/package/grpc/0001-target-build-using-host-plugin.patch b/package/grpc/0001-target-build-using-host-plugin.patch
new file mode 100644
index 0000000000..d4aee1b441
--- /dev/null
+++ b/package/grpc/0001-target-build-using-host-plugin.patch
@@ -0,0 +1,44 @@
+From aa18148e392ef28275a182db34397ccb66fb4617 Mon Sep 17 00:00:00 2001
+From: Robert Rose <robertroyrose@gmail.com>
+Date: Wed, 28 Nov 2018 09:41:52 -0800
+Subject: [PATCH 1/1] grpc: new package
+
+Signed-off-by: Robert Rose <robertroyrose@gmail.com>
+---
+ CMakeLists.txt | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fc76cf5..7a22b08 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -13108,6 +13108,18 @@ target_link_libraries(grpc_cli
+ endif (gRPC_BUILD_TESTS)
+ if (gRPC_BUILD_CODEGEN)
+ 
++if (gRPC_NATIVE_CPP_PLUGIN)
++
++add_executable(grpc_cpp_plugin
++  IMPORTED
++)
++
++set_property(TARGET grpc_cpp_plugin
++  PROPERTY IMPORTED_LOCATION ${gRPC_NATIVE_CPP_PLUGIN}
++)
++
++else()
++
+ add_executable(grpc_cpp_plugin
+   src/compiler/cpp_plugin.cc
+ )
+@@ -13143,6 +13155,7 @@ if (gRPC_INSTALL)
+     ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
+   )
+ endif()
++endif()
+ 
+ endif (gRPC_BUILD_CODEGEN)
+ if (gRPC_BUILD_CODEGEN)
+-- 
+2.20.0.rc0.387.gc7a69e6b6c-goog
+
diff --git a/package/grpc/Config.in b/package/grpc/Config.in
new file mode 100644
index 0000000000..e4364c2fe6
--- /dev/null
+++ b/package/grpc/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_GRPC
+	bool "grpc"
+	select BR2_PACKAGE_C_ARES
+	select BR2_PACKAGE_OPENSSL
+	select BR2_PACKAGE_PROTOBUF
+	select BR2_PACKAGE_ZLIB
+	help
+	  A language-neutral, platform-neutral, open source, remote
+	  procedure call (RPC) system initially developed at Google.
+
+	  http://github.com/grpc/grpc
diff --git a/package/grpc/grpc.hash b/package/grpc/grpc.hash
new file mode 100644
index 0000000000..8a1df947fd
--- /dev/null
+++ b/package/grpc/grpc.hash
@@ -0,0 +1,5 @@
+# Locally computed
+sha256 a5342629fe1b689eceb3be4d4f167b04c70a84b9d61cf8b555e968bc500bdb5a grpc-v1.16.1.tar.gz
+sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
+
+
diff --git a/package/grpc/grpc.mk b/package/grpc/grpc.mk
new file mode 100644
index 0000000000..1aa5447386
--- /dev/null
+++ b/package/grpc/grpc.mk
@@ -0,0 +1,36 @@
+################################################################################
+#
+# grpc
+#
+################################################################################
+
+GRPC_VERSION = v1.16.1
+GRPC_SOURCE = grpc-$(GRPC_VERSION).tar.gz
+GRPC_SITE = $(call github,grpc,grpc,$(GRPC_VERSION))
+GRPC_LICENSE = Apache-2.0
+GRPC_LICENSE_FILES = LICENSE
+
+GRPC_INSTALL_STAGING = YES
+
+# Need to use host grpc_cpp_plugin during cross compilation.
+GRPC_DEPENDENCIES = c-ares host-grpc openssl protobuf zlib
+HOST_GRPC_DEPENDENCIES = host-c-ares host-openssl host-protobuf host-zlib
+
+GRPC_CONF_OPTS = \
+         -D_gRPC_CARES_LIBRARIES=cares \
+         -DgRPC_CARES_PROVIDER=none \
+         -DgRPC_PROTOBUF_PROVIDER=package \
+         -DgRPC_SSL_PROVIDER=package \
+         -DgRPC_ZLIB_PROVIDER=package \
+         -DgRPC_NATIVE_CPP_PLUGIN=$(HOST_DIR)/bin/grpc_cpp_plugin
+
+HOST_GRPC_CONF_OPTS = \
+         -D_gRPC_CARES_LIBRARIES=cares \
+         -DgRPC_CARES_PROVIDER=none \
+         -DgRPC_CARES_PROVIDER=none \
+         -DgRPC_PROTOBUF_PROVIDER=package \
+         -DgRPC_SSL_PROVIDER=package \
+         -DgRPC_ZLIB_PROVIDER=package
+
+$(eval $(cmake-package))
+$(eval $(host-cmake-package))
-- 
2.20.0.rc0.387.gc7a69e6b6c-goog

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

* [Buildroot] [PATCH v4 1/2] c-ares: support host build
  2018-11-29  6:21 [Buildroot] [PATCH v4 1/2] c-ares: support host build Robert Rose
  2018-11-29  6:21 ` [Buildroot] [PATCH v4 2/2] grpc: new package Robert Rose
@ 2018-11-29 21:10 ` Thomas Petazzoni
  1 sibling, 0 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2018-11-29 21:10 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 28 Nov 2018 22:21:39 -0800, Robert Rose wrote:
> Signed-off-by: Robert Rose <robertroyrose@gmail.com>
> ---
>  package/c-ares/c-ares.mk | 1 +
>  1 file changed, 1 insertion(+)

Applied to next after extending the commit log, and re-adding Arnout
Acked-by.

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v4 2/2] grpc: new package
  2018-11-29  6:21 ` [Buildroot] [PATCH v4 2/2] grpc: new package Robert Rose
@ 2018-11-29 21:12   ` Thomas Petazzoni
  2018-12-03 16:00     ` Yann E. MORIN
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Petazzoni @ 2018-11-29 21:12 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 28 Nov 2018 22:21:40 -0800, Robert Rose wrote:
> Signed-off-by: Robert Rose <robertroyrose@gmail.com>
> ---
>  DEVELOPERS                                    |  3 ++
>  package/Config.in                             |  1 +
>  .../0001-target-build-using-host-plugin.patch | 44 +++++++++++++++++++
>  package/grpc/Config.in                        | 11 +++++
>  package/grpc/grpc.hash                        |  5 +++
>  package/grpc/grpc.mk                          | 36 +++++++++++++++
>  6 files changed, 100 insertions(+)
>  create mode 100644 package/grpc/0001-target-build-using-host-plugin.patch
>  create mode 100644 package/grpc/Config.in
>  create mode 100644 package/grpc/grpc.hash
>  create mode 100644 package/grpc/grpc.mk

Thanks for this new iteration. However, it's a pity that you didn't
reuse any of the improvements I had, and which I suggested you to
re-use for your next iteration.

So, I redid the same changes, and also improved the description of
0001-target-build-using-host-plugin.patch which was really not
sufficient.

Here is the list of changes I did:

    [Thomas:
     - add missing Config.in dependencies inherited from
       BR2_PACKAGE_PROTOBUF, as well as the corresponding Config.in
       comment
     - replace spaces by tabs in grpc.mk indentation
     - remove superfluous GRPC_SOURCE variable
     - improved patch description.]

After those changes, I applied this patch to next. Thanks for your
contribution!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v4 2/2] grpc: new package
  2018-11-29 21:12   ` Thomas Petazzoni
@ 2018-12-03 16:00     ` Yann E. MORIN
  2018-12-03 19:34       ` Matthew Weber
  0 siblings, 1 reply; 7+ messages in thread
From: Yann E. MORIN @ 2018-12-03 16:00 UTC (permalink / raw)
  To: buildroot

Robert, Thomas, All,

On 2018-11-29 22:12 +0100, Thomas Petazzoni spake thusly:
> On Wed, 28 Nov 2018 22:21:40 -0800, Robert Rose wrote:
> > Signed-off-by: Robert Rose <robertroyrose@gmail.com>
> > ---
> >  DEVELOPERS                                    |  3 ++
> >  package/Config.in                             |  1 +
> >  .../0001-target-build-using-host-plugin.patch | 44 +++++++++++++++++++
> >  package/grpc/Config.in                        | 11 +++++
> >  package/grpc/grpc.hash                        |  5 +++
> >  package/grpc/grpc.mk                          | 36 +++++++++++++++
> >  6 files changed, 100 insertions(+)
> >  create mode 100644 package/grpc/0001-target-build-using-host-plugin.patch
> >  create mode 100644 package/grpc/Config.in
> >  create mode 100644 package/grpc/grpc.hash
> >  create mode 100644 package/grpc/grpc.mk
> 
> Thanks for this new iteration. However, it's a pity that you didn't
> reuse any of the improvements I had, and which I suggested you to
> re-use for your next iteration.
> 
> So, I redid the same changes, and also improved the description of
> 0001-target-build-using-host-plugin.patch which was really not
> sufficient.
> 
> Here is the list of changes I did:
> 
>     [Thomas:
>      - add missing Config.in dependencies inherited from
>        BR2_PACKAGE_PROTOBUF, as well as the corresponding Config.in
>        comment
>      - replace spaces by tabs in grpc.mk indentation
>      - remove superfluous GRPC_SOURCE variable
>      - improved patch description.]

Itr also seems that grpc would somehow need gflags:

    CMake Warning at cmake/gflags.cmake:26 (message):
      gRPC_GFLAGS_PROVIDER is "module" but GFLAGS_ROOT_DIR is wrong

That's because the built-in copy of gflags is missing (good!) as it is
managed by a git submodule, and those are not retrieved when using the
github macro (good!). So, maybe extend HOST_GRPC_CONF_OPTS with:

    gRPC_GFLAGS_PROVIDER=none

Alternatively, you could make the existing gflags package a host
package, and use that?

Additionally, there is a similar issue with the 'benchmark' package:

    CMake Warning at cmake/benchmark.cmake:26 (message):
      gRPC_BENCHMARK_PROVIDER is "module" but BENCHMARK_ROOT_DIR is wrong

We don't have a benchmark package in Buildroot, so maybe extend
HOST_GRPC_CONF_OPTS with:

    gRPC_BENCHMARK_PROVIDER=none

Note that thes two issues should probably be also checked for, and fixed
for the target variant of grpc too.

Finally, we do have a bunch of autobuild failures:

    http://autobuild.buildroot.org/?reason=host-grpc-v1.16.1

Care to have a look, please?

Regards,
Yann E. MORIN.

> After those changes, I applied this patch to next. Thanks for your
> contribution!
> 
> Thomas
> -- 
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH v4 2/2] grpc: new package
  2018-12-03 16:00     ` Yann E. MORIN
@ 2018-12-03 19:34       ` Matthew Weber
  0 siblings, 0 replies; 7+ messages in thread
From: Matthew Weber @ 2018-12-03 19:34 UTC (permalink / raw)
  To: buildroot

Robert,


On Mon, Dec 3, 2018 at 10:00 AM Yann E. MORIN <yann.morin.1998@free.fr> wrote:
>
> Robert, Thomas, All,
>
> On 2018-11-29 22:12 +0100, Thomas Petazzoni spake thusly:
> > On Wed, 28 Nov 2018 22:21:40 -0800, Robert Rose wrote:
> > > Signed-off-by: Robert Rose <robertroyrose@gmail.com>
> > > ---
> > >  DEVELOPERS                                    |  3 ++
> > >  package/Config.in                             |  1 +
> > >  .../0001-target-build-using-host-plugin.patch | 44 +++++++++++++++++++
> > >  package/grpc/Config.in                        | 11 +++++
> > >  package/grpc/grpc.hash                        |  5 +++
> > >  package/grpc/grpc.mk                          | 36 +++++++++++++++
> > >  6 files changed, 100 insertions(+)
> > >  create mode 100644 package/grpc/0001-target-build-using-host-plugin.patch
> > >  create mode 100644 package/grpc/Config.in
> > >  create mode 100644 package/grpc/grpc.hash
> > >  create mode 100644 package/grpc/grpc.mk
> >
> > Thanks for this new iteration. However, it's a pity that you didn't
> > reuse any of the improvements I had, and which I suggested you to
> > re-use for your next iteration.
> >
> > So, I redid the same changes, and also improved the description of
> > 0001-target-build-using-host-plugin.patch which was really not
> > sufficient.
> >
> > Here is the list of changes I did:
> >
> >     [Thomas:
> >      - add missing Config.in dependencies inherited from
> >        BR2_PACKAGE_PROTOBUF, as well as the corresponding Config.in
> >        comment
> >      - replace spaces by tabs in grpc.mk indentation
> >      - remove superfluous GRPC_SOURCE variable
> >      - improved patch description.]
>
> Itr also seems that grpc would somehow need gflags:
>
>     CMake Warning at cmake/gflags.cmake:26 (message):
>       gRPC_GFLAGS_PROVIDER is "module" but GFLAGS_ROOT_DIR is wrong
>
> That's because the built-in copy of gflags is missing (good!) as it is
> managed by a git submodule, and those are not retrieved when using the
> github macro (good!). So, maybe extend HOST_GRPC_CONF_OPTS with:
>
>     gRPC_GFLAGS_PROVIDER=none
>
> Alternatively, you could make the existing gflags package a host
> package, and use that?
>
> Additionally, there is a similar issue with the 'benchmark' package:
>
>     CMake Warning at cmake/benchmark.cmake:26 (message):
>       gRPC_BENCHMARK_PROVIDER is "module" but BENCHMARK_ROOT_DIR is wrong
>
> We don't have a benchmark package in Buildroot, so maybe extend
> HOST_GRPC_CONF_OPTS with:
>
>     gRPC_BENCHMARK_PROVIDER=none
>
> Note that thes two issues should probably be also checked for, and fixed
> for the target variant of grpc too.
>
> Finally, we do have a bunch of autobuild failures:
>
>     http://autobuild.buildroot.org/?reason=host-grpc-v1.16.1
>

I was able to reproduce this in a non-sandboxed environment and it
looks like the "grpc_cpp_plugin" app is outputting that error, not the
'protoc' part of the command.

Output
----------------------
terminate called after throwing an instance of 'std::system_error'
  what():  Unknown error -1
Aborted (core dumped)

A quick strace and gdb run didn't get me much further.  It looks like
the libstdc++ is maybe having a memory allocation issue but I'll have
to work on getting more debug symbols (sort of a messy point to debug
when between host machine and buildroot host package builds).

Matt

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

end of thread, other threads:[~2018-12-03 19:34 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-29  6:21 [Buildroot] [PATCH v4 1/2] c-ares: support host build Robert Rose
2018-11-29  6:21 ` [Buildroot] [PATCH v4 2/2] grpc: new package Robert Rose
2018-11-29 21:12   ` Thomas Petazzoni
2018-12-03 16:00     ` Yann E. MORIN
2018-12-03 19:34       ` Matthew Weber
2018-11-29 21:10 ` [Buildroot] [PATCH v4 1/2] c-ares: support host build Thomas Petazzoni
  -- strict thread matches above, loose matches on Subject: below --
2018-11-29  6:17 Robert Rose
2018-11-29  6:17 ` [Buildroot] [PATCH v4 2/2] grpc: new package Robert Rose

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.