[Buildroot] [PATCH v2] azmq: Add new package
RJ Ascani
rj.ascani at gmail.com
Wed Aug 2 23:45:01 UTC 2017
Hi Arnout,
Thank you so much for the review. I'm not in any rush, so making it
into 2017.08 is not a necessity.
On Wed, Aug 2, 2017 at 3:29 PM, Arnout Vandecappelle <arnout at mind.be> wrote:
> Hi RJ,
>
> I'm not sure if we can still get this in 2017.08 since I have a few comments
> that I can't fix up myself...
>
> On 28-07-17 20:04, RJ Ascani wrote:
>> 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>
>
> We require the Signed-off-by to be a full, real name because it's a legal
> statement. It is a short way for you to assert that you are entitled to
> contribute the patch under buildroot's GPL license. See
> http://elinux.org/Developer_Certificate_Of_Origin for more details.
>
> The Author should be the same name, of course.
>
Just to be clear, it's my initials that are the issue? I've gone by RJ
my entire life so I didn't realize that would be an issue.
>
> [snip]
>> +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
>
> What is the upstream status of this patch? Please send it upstream if you
> didn't already do so.
>
Actually, I probably should have elaborated a bit more in the
explanation here. The reason I added this patch was actually because
there is a bug in building the tests under buildroot. Upstream is
missing a library that needs to be linked in their test
CMakeLists.txt. Since buildroot already forcibly tries to disable docs
and tests for cmake packages, I assumed it would be better to just
have the tests not even be built for buildroot. I'm not certain I
could get those conditionals into upstream, but I'm fairly certain I
could get the test bug patched upstream. Would it be preferable to: 1)
patch the actual test bug and let the tests build or 2) disable the
building of the tests entirely?
>> +
>> +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)
>
> I would expect that upstream would require BUILD_TESTING to be set to ON by
> default. Also, I think BUILD_TESTS is more common, but I have no data to back
> that up.
BUILD_TESTING is an actually a built-in for CTest (CMake's testing module).
>
>> ++ 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)
>
> Same here, of course.
>
>> ++ add_subdirectory(doc)
>> ++endif()
>> +
>> + install(DIRECTORY ${PROJECT_SOURCE_DIR}/azmq
>> + DESTINATION include)
> [snip]
>> 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
>
> So I would expect that we would need to pass an explicit -DBUILD_TESTING=OFF
> and -DBUILD_DOCS=OFF
>
Those are already added to the cmake configure command from
package/pkg-cmake.mk. Are you saying we should also add them as an
explicit option in AZMQ_CONF_OPTS?
> Regards,
> Arnout
>
>> +
>> +$(eval $(cmake-package))
>>
>
> --
> Arnout Vandecappelle arnout at mind be
> Senior Embedded Software Architect +32-16-286500
> Essensium/Mind http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
Thanks again!
-RJ
More information about the buildroot
mailing list