[Buildroot] [git commit] package/protozero: new package
From: Arnout Vandecappelle (Essensium/Mind) <hidden>
Date: 2021-04-15 19:48:15
Subsystem:
the rest · Maintainer:
Linus Torvalds
commit: https://git.buildroot.net/buildroot/commit/?id=fceec335681422ea317cd16c9d9608479f287ce3 branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master Minimalistic protocol buffer decoder and encoder in C++. Designed for high performance. Suitable for writing zero copy parsers and encoders with minimal need for run-time allocation of memory. Low-level: this is designed to be a building block for writing a very customized decoder for a stable protobuf schema. If your protobuf schema is changing frequently or lazy decoding is not critical for your application then this approach offers no value: just use the C++ API that can be generated with the Google Protobufs protoc program. https://github.com/mapbox/protozero Signed-off-by: Maxim Kochetkov <redacted> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <redacted> --- DEVELOPERS | 1 + package/Config.in | 1 + package/protozero/Config.in | 20 ++++++++++++++++++++ package/protozero/protozero.hash | 4 ++++ package/protozero/protozero.mk | 17 +++++++++++++++++ 5 files changed, 43 insertions(+)
diff --git a/DEVELOPERS b/DEVELOPERS
index 1348b8eb91..9390daa2fa 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS@@ -1840,6 +1840,7 @@ N: Max Filippov <jcmvbkbc@gmail.com> F: arch/Config.in.xtensa N: Maxim Kochetkov <fido_max@inbox.ru> +F: package/protozero/ F: package/timescaledb/ N: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
diff --git a/package/Config.in b/package/Config.in
index ea0e9edc3e..c5014faba1 100644
--- a/package/Config.in
+++ b/package/Config.in@@ -1966,6 +1966,7 @@ endif source "package/poco/Config.in" source "package/protobuf/Config.in" source "package/protobuf-c/Config.in" + source "package/protozero/Config.in" source "package/qhull/Config.in" source "package/qlibc/Config.in" source "package/riemann-c-client/Config.in"
diff --git a/package/protozero/Config.in b/package/protozero/Config.in
new file mode 100644
index 0000000000..19048dfe8d
--- /dev/null
+++ b/package/protozero/Config.in@@ -0,0 +1,20 @@ +config BR2_PACKAGE_PROTOZERO + bool "protozero" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 + help + Minimalistic protocol buffer decoder and encoder in C++. + Designed for high performance. Suitable for writing zero copy + parsers and encoders with minimal need for run-time allocation + of memory. + Low-level: this is designed to be a building block for writing + a very customized decoder for a stable protobuf schema. If + your protobuf schema is changing frequently or lazy decoding + is not critical for your application then this approach offers + no value: just use the C++ API that can be generated with + the Google Protobufs protoc program. + + https://github.com/mapbox/protozero + +comment "protozero needs a toolchain w/ C++, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
diff --git a/package/protozero/protozero.hash b/package/protozero/protozero.hash
new file mode 100644
index 0000000000..5453e01ecf
--- /dev/null
+++ b/package/protozero/protozero.hash@@ -0,0 +1,4 @@ +# Locally calculated +sha256 beffbdfab060854fd770178a8db9c028b5b6ee4a059a2fed82c46390a85f3f31 protozero-1.7.0.tar.gz +sha256 1f4d477e3c2d74d8706c8f05437bd86804abe46853b1f233ce1549a4de76fa49 LICENSE.md +sha256 0d542e0c8804e39aa7f37eb00da5a762149dc682d7829451287e11b938e94594 LICENSE.from_folly
diff --git a/package/protozero/protozero.mk b/package/protozero/protozero.mk
new file mode 100644
index 0000000000..e4ce1a4730
--- /dev/null
+++ b/package/protozero/protozero.mk@@ -0,0 +1,17 @@ +################################################################################ +# +# protozero +# +################################################################################ + +PROTOZERO_VERSION = 1.7.0 +PROTOZERO_SITE = $(call github,mapbox,protozero,v$(PROTOZERO_VERSION)) +PROTOZERO_LICENSE = BSD-2-Clause, Apache-2.0 +PROTOZERO_LICENSE_FILES = LICENSE.md LICENSE.from_folly +PROTOZERO_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_PROTOBUF),y) +PROTOZERO_DEPENDENCIES += protobuf +endif + +$(eval $(cmake-package))