Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCHv2 1/1] package/cereal: new package
@ 2019-12-23 15:10 Thomas De Schampheleire
  2019-12-25 22:04 ` Thomas Petazzoni
  0 siblings, 1 reply; 2+ messages in thread
From: Thomas De Schampheleire @ 2019-12-23 15:10 UTC (permalink / raw)
  To: buildroot

From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
---
 DEVELOPERS                 |  1 +
 package/Config.in          |  1 +
 package/cereal/Config.in   | 20 ++++++++++++++++++++
 package/cereal/cereal.hash |  6 ++++++
 package/cereal/cereal.mk   | 18 ++++++++++++++++++
 5 files changed, 46 insertions(+)
 create mode 100644 package/cereal/Config.in
 create mode 100644 package/cereal/cereal.hash
 create mode 100644 package/cereal/cereal.mk


v2: update license info with bundled dependencies (Yann)

diff --git a/DEVELOPERS b/DEVELOPERS
index d9b4864b9f..a48af96961 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2325,6 +2325,7 @@ F:	package/civetweb/
 
 N:	Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
 F:	docs/manual/
+F:	package/cereal/
 F:	package/opkg-utils/
 F:	package/perl-convert-asn1/
 F:	package/perl-crypt-blowfish/
diff --git a/package/Config.in b/package/Config.in
index f304a8fbd3..5fb969da8a 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1721,6 +1721,7 @@ menu "Other"
 	source "package/boost/Config.in"
 	source "package/c-capnproto/Config.in"
 	source "package/capnproto/Config.in"
+	source "package/cereal/Config.in"
 	source "package/clang/Config.in"
 	source "package/clapack/Config.in"
 	source "package/classpath/Config.in"
diff --git a/package/cereal/Config.in b/package/cereal/Config.in
new file mode 100644
index 0000000000..3ac463c4fc
--- /dev/null
+++ b/package/cereal/Config.in
@@ -0,0 +1,20 @@
+config BR2_PACKAGE_CEREAL
+	bool "cereal"
+	depends on BR2_USE_WCHAR
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11
+	help
+	  cereal is a header-only C++11 serialization library.
+	  cereal takes arbitrary data types and reversibly turns them
+	  into different representations, such as compact binary
+	  encodings, XML or JSON. cereal was designed to be fast,
+	  light-weight, and easy to extend - it has no external
+	  dependencies and can be easily bundled with other code or used
+	  standalone.
+
+	  https://github.com/USCiLab/cereal
+
+comment "cereal needs a toolchain w/ C++, gcc >= 4.7, threads, wchar"
+	depends on !BR2_INSTALL_LIBSTDCPP  || !BR2_TOOLCHAIN_HAS_THREADS || \
+		!BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
diff --git a/package/cereal/cereal.hash b/package/cereal/cereal.hash
new file mode 100644
index 0000000000..ddaf54e7b4
--- /dev/null
+++ b/package/cereal/cereal.hash
@@ -0,0 +1,6 @@
+# Locally computed
+sha256 329ea3e3130b026c03a4acc50e168e7daff4e6e661bc6a7dfec0d77b570851d5  cereal-1.3.0.tar.gz
+sha256 18fd7618c44c9fe28b5f54cd19747df3c0472ed33e8507fea571e2acf6e72f34  LICENSE
+sha256 d9e523e8736ac0c68064c7ad312a222f285e82bf6c96a1b1c2cadaffff9fc64f  include/cereal/external/base64.hpp
+sha256 7fb69c707f0ed3a8b59b8f949f0928a9cc06d67bc15d599094693703ff70ea26  include/cereal/external/rapidjson/rapidjson.h
+sha256 794bf3b2ecf5cf0c740ac6c524d66ce6284c4b1de1f983d21a242b8abbeb9720  include/cereal/external/rapidxml/license.txt
diff --git a/package/cereal/cereal.mk b/package/cereal/cereal.mk
new file mode 100644
index 0000000000..3811fdf32f
--- /dev/null
+++ b/package/cereal/cereal.mk
@@ -0,0 +1,18 @@
+################################################################################
+#
+# cereal
+#
+################################################################################
+
+CEREAL_VERSION = 1.3.0
+CEREAL_SITE = $(call github,USCiLab,cereal,v$(CEREAL_VERSION))
+# For licensing, see also: https://github.com/USCiLab/cereal/issues/609
+CEREAL_LICENSE = BSD-3-Clause (cereal), Zlib (base64.hpp), MIT (rapidjson), BSL-1.0 or MIT (rapidxml)
+CEREAL_LICENSE_FILES = LICENSE include/cereal/external/base64.hpp include/cereal/external/rapidjson/rapidjson.h include/cereal/external/rapidxml/license.txt
+CEREAL_INSTALL_STAGING = YES
+CEREAL_INSTALL_TARGET = NO
+CEREAL_CONF_OPTS = \
+	-DTHREAD_SAFE=ON \
+	-DJUST_INSTALL_CEREAL=ON
+
+$(eval $(cmake-package))
-- 
2.24.1

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

* [Buildroot] [PATCHv2 1/1] package/cereal: new package
  2019-12-23 15:10 [Buildroot] [PATCHv2 1/1] package/cereal: new package Thomas De Schampheleire
@ 2019-12-25 22:04 ` Thomas Petazzoni
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Petazzoni @ 2019-12-25 22:04 UTC (permalink / raw)
  To: buildroot

On Mon, 23 Dec 2019 16:10:59 +0100
Thomas De Schampheleire <patrickdepinguin@gmail.com> wrote:

> From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
> 
> Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
> ---
>  DEVELOPERS                 |  1 +
>  package/Config.in          |  1 +
>  package/cereal/Config.in   | 20 ++++++++++++++++++++
>  package/cereal/cereal.hash |  6 ++++++
>  package/cereal/cereal.mk   | 18 ++++++++++++++++++
>  5 files changed, 46 insertions(+)
>  create mode 100644 package/cereal/Config.in
>  create mode 100644 package/cereal/cereal.hash
>  create mode 100644 package/cereal/cereal.mk

Applied to master, thanks.

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

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

end of thread, other threads:[~2019-12-25 22:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-23 15:10 [Buildroot] [PATCHv2 1/1] package/cereal: new package Thomas De Schampheleire
2019-12-25 22:04 ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox