All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas De Schampheleire <patrickdepinguin@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCHv2 1/1] package/cereal: new package
Date: Mon, 23 Dec 2019 16:10:59 +0100	[thread overview]
Message-ID: <20191223151100.31067-1-patrickdepinguin@gmail.com> (raw)

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

             reply	other threads:[~2019-12-23 15:10 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-23 15:10 Thomas De Schampheleire [this message]
2019-12-25 22:04 ` [Buildroot] [PATCHv2 1/1] package/cereal: new package Thomas Petazzoni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191223151100.31067-1-patrickdepinguin@gmail.com \
    --to=patrickdepinguin@gmail.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.