[Buildroot] [PATCH] azmq: Add new package
RJ Ascani
rj.ascani at gmail.com
Fri Jul 21 19:11:40 UTC 2017
The azmq library provides Boost Asio style bindings for ZeroMQ. This
library is built on top of ZeroMQ's standard C interface and is intended
to work well with C++ applications which use the Boost libraries in
general, and Asio in particular.
Signed-off-by: RJ Ascani <rj.ascani at gmail.com>
---
package/Config.in | 1 +
...Conditionally-disable-test-and-doc-builds.patch | 43 ++++++++++++++++++++++
package/azmq/Config.in | 28 ++++++++++++++
package/azmq/azmq.hash | 3 ++
package/azmq/azmq.mk | 18 +++++++++
5 files changed, 93 insertions(+)
create mode 100644 package/azmq/0001-Conditionally-disable-test-and-doc-builds.patch
create mode 100644 package/azmq/Config.in
create mode 100644 package/azmq/azmq.hash
create mode 100644 package/azmq/azmq.mk
diff --git a/package/Config.in b/package/Config.in
index d830cf743..38c196685 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1274,6 +1274,7 @@ menu "Networking"
source "package/alljoyn-base/Config.in"
source "package/alljoyn-tcl/Config.in"
source "package/alljoyn-tcl-base/Config.in"
+ source "package/azmq/Config.in"
source "package/azure-iot-sdk-c/Config.in"
source "package/batman-adv/Config.in"
source "package/c-ares/Config.in"
diff --git a/package/azmq/0001-Conditionally-disable-test-and-doc-builds.patch b/package/azmq/0001-Conditionally-disable-test-and-doc-builds.patch
new file mode 100644
index 000000000..2e6016a05
--- /dev/null
+++ b/package/azmq/0001-Conditionally-disable-test-and-doc-builds.patch
@@ -0,0 +1,43 @@
+From d960f93fb52e373f76cfedbee5f4fb0c5276856a Mon Sep 17 00:00:00 2001
+From: RJ Ascani <rj.ascani at gmail.com>
+Date: Thu, 20 Jul 2017 15:53:40 -0700
+Subject: [PATCH] Conditionally disable test and doc builds
+
+Signed-off-by: RJ Ascani <rj.ascani at gmail.com>
+---
+ CMakeLists.txt | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5b5b9cc..97006a4 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -49,7 +49,9 @@ include_directories(${Boost_INCLUDE_DIRS}
+ ${ZeroMQ_INCLUDE_DIRS}
+ ${PROJECT_SOURCE_DIR})
+
+-enable_testing()
++if (BUILD_TESTING)
++ enable_testing()
++endif()
+
+ macro(add_catch_test name)
+ if (TEST_REPORT_FORMAT)
+@@ -59,8 +61,12 @@ macro(add_catch_test name)
+ endif()
+ endmacro()
+
+-add_subdirectory(test)
+-add_subdirectory(doc)
++if (BUILD_TESTING)
++ add_subdirectory(test)
++endif()
++if (BUILD_DOC)
++ add_subdirectory(doc)
++endif()
+
+ install(DIRECTORY ${PROJECT_SOURCE_DIR}/azmq
+ DESTINATION include)
+--
+2.13.3
+
diff --git a/package/azmq/Config.in b/package/azmq/Config.in
new file mode 100644
index 000000000..422a05883
--- /dev/null
+++ b/package/azmq/Config.in
@@ -0,0 +1,28 @@
+config BR2_PACKAGE_AZMQ
+ bool "azmq"
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_TOOLCHAIN_HAS_ATOMIC
+ depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
+ depends on BR2_USE_WCHAR # boost
+ depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
+ select BR2_PACKAGE_ZEROMQ
+ select BR2_PACKAGE_BOOST
+ select BR2_PACKAGE_BOOST_CHRONO
+ select BR2_PACKAGE_BOOST_DATE_TIME
+ select BR2_PACKAGE_BOOST_LOG
+ select BR2_PACKAGE_BOOST_RANDOM
+ select BR2_PACKAGE_BOOST_REGEX
+ select BR2_PACKAGE_BOOST_SYSTEM
+ select BR2_PACKAGE_BOOST_THREAD
+ help
+ This library provides Boost Asio style bindings for ZeroMQ.
+
+ https://github.com/zeromq/azmq
+
+comment "azmq needs a toolchain w/ C++11, wchar and threads"
+ depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \
+ && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS)
+
+comment "azmq needs exception_ptr"
+ depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
diff --git a/package/azmq/azmq.hash b/package/azmq/azmq.hash
new file mode 100644
index 000000000..d3993f498
--- /dev/null
+++ b/package/azmq/azmq.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+# https://github.com/zeromq/azmq/archive/v1.0.tar.gz
+sha256 c204c731bcb7810ca3a2c5515e88974ef2ff8d0589e60a897dc238b369180e7b azmq-v1.0.tar.gz
diff --git a/package/azmq/azmq.mk b/package/azmq/azmq.mk
new file mode 100644
index 000000000..427ad0f5b
--- /dev/null
+++ b/package/azmq/azmq.mk
@@ -0,0 +1,18 @@
+################################################################################
+#
+# azmq
+#
+################################################################################
+
+AZMQ_VERSION = v1.0
+AZMQ_SITE = $(call github,zeromq,azmq,$(AZMQ_VERSION))
+AZMQ_DEPENDENCIES = boost zeromq
+AZMQ_LICENSE = BSL-1.0
+AZMQ_LICENSE_FILES = LICENSE-BOOST_1_0
+
+# AZMQ is a header only library, so it does not need to be installed on the
+# target.
+AZMQ_INSTALL_STAGING = YES
+AZMQ_INSTALL_TARGET = NO
+
+$(eval $(cmake-package))
--
2.13.3
More information about the buildroot
mailing list