* [Buildroot] Opentracing-cpp package @ 2017-12-21 9:41 heyleke at gmail.com 2017-12-21 9:41 ` [Buildroot] [PATCH] Opentracing: add opentracing-cpp v1.2.0 package heyleke at gmail.com 0 siblings, 1 reply; 25+ messages in thread From: heyleke at gmail.com @ 2017-12-21 9:41 UTC (permalink / raw) To: buildroot Hi, this patch add opentracing-cpp as a logging library, only dep I know about is C++11 [PATCH] Opentracing: add opentracing-cpp v1.2.0 package br, Jan ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-21 9:41 [Buildroot] Opentracing-cpp package heyleke at gmail.com @ 2017-12-21 9:41 ` heyleke at gmail.com 2017-12-22 15:00 ` Samuel Martin 2017-12-23 7:40 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Jan Heylen 0 siblings, 2 replies; 25+ messages in thread From: heyleke at gmail.com @ 2017-12-21 9:41 UTC (permalink / raw) To: buildroot From: Jan Heylen <jan.heylen@nokia.com> --- package/Config.in | 1 + package/opentracing-cpp/Config.in | 11 +++++++++++ package/opentracing-cpp/opentracing-cpp.hash | 2 ++ package/opentracing-cpp/opentracing-cpp.mk | 15 +++++++++++++++ 4 files changed, 29 insertions(+) create mode 100644 package/opentracing-cpp/Config.in create mode 100644 package/opentracing-cpp/opentracing-cpp.hash create mode 100644 package/opentracing-cpp/opentracing-cpp.mk diff --git a/package/Config.in b/package/Config.in index bd39a37..044a7e8 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1288,6 +1288,7 @@ menu "Logging" source "package/log4cplus/Config.in" source "package/log4cpp/Config.in" source "package/log4cxx/Config.in" + source "package/opentracing-cpp/Config.in" source "package/zlog/Config.in" endmenu diff --git a/package/opentracing-cpp/Config.in b/package/opentracing-cpp/Config.in new file mode 100644 index 0000000..3f6f1ad --- /dev/null +++ b/package/opentracing-cpp/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_OPENTRACING_CPP + bool "opentracing-cpp" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + help + OpenTracing API for C++ + + http://opentracing.io + +comment "opentracing-cpp needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/opentracing-cpp/opentracing-cpp.hash b/package/opentracing-cpp/opentracing-cpp.hash new file mode 100644 index 0000000..a710d62 --- /dev/null +++ b/package/opentracing-cpp/opentracing-cpp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c77041cb2f147ac81b2b0702abfced5565a9cebc318d045c060a4c3e074009ee opentracing-cpp-v1.2.0.tar.gz diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk new file mode 100644 index 0000000..e090be5 --- /dev/null +++ b/package/opentracing-cpp/opentracing-cpp.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# opentracing-cpp +# +################################################################################ + +OPENTRACING_CPP_VERSION = v1.2.0 +OPENTRACING_CPP_SITE = $(call github,opentracing,opentracing-cpp,$(OPENTRACING_CPP_VERSION)) +OPENTRACING_CPP_LICENSE = MIT +OPENTRACING_CPP_LICENSE_FILES = COPYING + +OPENTRACING_CPP_INSTALL_STAGING = YES +OPENTRACING_CPP_INSTALL_TARGET = YES + +$(eval $(cmake-package)) -- 2.7.4 ^ permalink raw reply related [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-21 9:41 ` [Buildroot] [PATCH] Opentracing: add opentracing-cpp v1.2.0 package heyleke at gmail.com @ 2017-12-22 15:00 ` Samuel Martin 2017-12-22 15:20 ` Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Jan Heylen 1 sibling, 1 reply; 25+ messages in thread From: Samuel Martin @ 2017-12-22 15:00 UTC (permalink / raw) To: buildroot Hi Jan, Thanks for this contribution. On Thu, Dec 21, 2017 at 10:41 AM, <heyleke@gmail.com> wrote: > From: Jan Heylen <jan.heylen@nokia.com> > > --- > package/Config.in | 1 + > package/opentracing-cpp/Config.in | 11 +++++++++++ > package/opentracing-cpp/opentracing-cpp.hash | 2 ++ > package/opentracing-cpp/opentracing-cpp.mk | 15 +++++++++++++++ > 4 files changed, 29 insertions(+) > create mode 100644 package/opentracing-cpp/Config.in > create mode 100644 package/opentracing-cpp/opentracing-cpp.hash > create mode 100644 package/opentracing-cpp/opentracing-cpp.mk > > diff --git a/package/Config.in b/package/Config.in > index bd39a37..044a7e8 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -1288,6 +1288,7 @@ menu "Logging" > source "package/log4cplus/Config.in" > source "package/log4cpp/Config.in" > source "package/log4cxx/Config.in" > + source "package/opentracing-cpp/Config.in" Here it should be indented with 1 tab instead of 4 spaces. > source "package/zlog/Config.in" > endmenu > > diff --git a/package/opentracing-cpp/Config.in b/package/opentracing-cpp/Config.in > new file mode 100644 > index 0000000..3f6f1ad > --- /dev/null > +++ b/package/opentracing-cpp/Config.in > @@ -0,0 +1,11 @@ > +config BR2_PACKAGE_OPENTRACING_CPP > + bool "opentracing-cpp" > + depends on BR2_INSTALL_LIBSTDCPP > + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 > + help > + OpenTracing API for C++ > + > + http://opentracing.io > + > +comment "opentracing-cpp needs a toolchain w/ C++" > + depends on !BR2_INSTALL_LIBSTDCPP > diff --git a/package/opentracing-cpp/opentracing-cpp.hash b/package/opentracing-cpp/opentracing-cpp.hash > new file mode 100644 > index 0000000..a710d62 > --- /dev/null > +++ b/package/opentracing-cpp/opentracing-cpp.hash > @@ -0,0 +1,2 @@ > +# Locally calculated > +sha256 c77041cb2f147ac81b2b0702abfced5565a9cebc318d045c060a4c3e074009ee opentracing-cpp-v1.2.0.tar.gz Could you add the hash of the license files as well, please? > diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk > new file mode 100644 > index 0000000..e090be5 > --- /dev/null > +++ b/package/opentracing-cpp/opentracing-cpp.mk > @@ -0,0 +1,15 @@ > +################################################################################ > +# > +# opentracing-cpp > +# > +################################################################################ > + > +OPENTRACING_CPP_VERSION = v1.2.0 > +OPENTRACING_CPP_SITE = $(call github,opentracing,opentracing-cpp,$(OPENTRACING_CPP_VERSION)) > +OPENTRACING_CPP_LICENSE = MIT > +OPENTRACING_CPP_LICENSE_FILES = COPYING > + > +OPENTRACING_CPP_INSTALL_STAGING = YES > +OPENTRACING_CPP_INSTALL_TARGET = YES *_INSTALL_TARGET default is YES, so this line is unnecessary. Looking at the opentracing-cpp CMakeLists.txt, it seems both shared and static libraries are built and installed. Maybe, this should be cleaned up for proper static-only (or shared only) support. > + > +$(eval $(cmake-package)) > -- > 2.7.4 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot Regards, -- Samuel ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-22 15:00 ` Samuel Martin @ 2017-12-22 15:20 ` Jan Heylen 0 siblings, 0 replies; 25+ messages in thread From: Jan Heylen @ 2017-12-22 15:20 UTC (permalink / raw) To: buildroot HI Samuel, thx for the quick feedback, I'll have a look and come back with a V2, br, Jan On Fri, Dec 22, 2017 at 4:00 PM, Samuel Martin <s.martin49@gmail.com> wrote: > Hi Jan, > > Thanks for this contribution. > > On Thu, Dec 21, 2017 at 10:41 AM, <heyleke@gmail.com> wrote: >> From: Jan Heylen <jan.heylen@nokia.com> >> >> --- >> package/Config.in | 1 + >> package/opentracing-cpp/Config.in | 11 +++++++++++ >> package/opentracing-cpp/opentracing-cpp.hash | 2 ++ >> package/opentracing-cpp/opentracing-cpp.mk | 15 +++++++++++++++ >> 4 files changed, 29 insertions(+) >> create mode 100644 package/opentracing-cpp/Config.in >> create mode 100644 package/opentracing-cpp/opentracing-cpp.hash >> create mode 100644 package/opentracing-cpp/opentracing-cpp.mk >> >> diff --git a/package/Config.in b/package/Config.in >> index bd39a37..044a7e8 100644 >> --- a/package/Config.in >> +++ b/package/Config.in >> @@ -1288,6 +1288,7 @@ menu "Logging" >> source "package/log4cplus/Config.in" >> source "package/log4cpp/Config.in" >> source "package/log4cxx/Config.in" >> + source "package/opentracing-cpp/Config.in" > > Here it should be indented with 1 tab instead of 4 spaces. > >> source "package/zlog/Config.in" >> endmenu >> >> diff --git a/package/opentracing-cpp/Config.in b/package/opentracing-cpp/Config.in >> new file mode 100644 >> index 0000000..3f6f1ad >> --- /dev/null >> +++ b/package/opentracing-cpp/Config.in >> @@ -0,0 +1,11 @@ >> +config BR2_PACKAGE_OPENTRACING_CPP >> + bool "opentracing-cpp" >> + depends on BR2_INSTALL_LIBSTDCPP >> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 >> + help >> + OpenTracing API for C++ >> + >> + http://opentracing.io >> + >> +comment "opentracing-cpp needs a toolchain w/ C++" >> + depends on !BR2_INSTALL_LIBSTDCPP >> diff --git a/package/opentracing-cpp/opentracing-cpp.hash b/package/opentracing-cpp/opentracing-cpp.hash >> new file mode 100644 >> index 0000000..a710d62 >> --- /dev/null >> +++ b/package/opentracing-cpp/opentracing-cpp.hash >> @@ -0,0 +1,2 @@ >> +# Locally calculated >> +sha256 c77041cb2f147ac81b2b0702abfced5565a9cebc318d045c060a4c3e074009ee opentracing-cpp-v1.2.0.tar.gz > > Could you add the hash of the license files as well, please? > >> diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk >> new file mode 100644 >> index 0000000..e090be5 >> --- /dev/null >> +++ b/package/opentracing-cpp/opentracing-cpp.mk >> @@ -0,0 +1,15 @@ >> +################################################################################ >> +# >> +# opentracing-cpp >> +# >> +################################################################################ >> + >> +OPENTRACING_CPP_VERSION = v1.2.0 >> +OPENTRACING_CPP_SITE = $(call github,opentracing,opentracing-cpp,$(OPENTRACING_CPP_VERSION)) >> +OPENTRACING_CPP_LICENSE = MIT >> +OPENTRACING_CPP_LICENSE_FILES = COPYING >> + >> +OPENTRACING_CPP_INSTALL_STAGING = YES >> +OPENTRACING_CPP_INSTALL_TARGET = YES > > *_INSTALL_TARGET default is YES, so this line is unnecessary. > > Looking at the opentracing-cpp CMakeLists.txt, it seems both shared > and static libraries are built and installed. > Maybe, this should be cleaned up for proper static-only (or shared > only) support. > >> + >> +$(eval $(cmake-package)) >> -- >> 2.7.4 >> >> _______________________________________________ >> buildroot mailing list >> buildroot at busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot > > Regards, > > -- > Samuel ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package 2017-12-21 9:41 ` [Buildroot] [PATCH] Opentracing: add opentracing-cpp v1.2.0 package heyleke at gmail.com 2017-12-22 15:00 ` Samuel Martin @ 2017-12-23 7:40 ` Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package Jan Heylen ` (2 more replies) 1 sibling, 3 replies; 25+ messages in thread From: Jan Heylen @ 2017-12-23 7:40 UTC (permalink / raw) To: buildroot From: Jan Heylen <jan.heylen@nokia.com> Hi, this adds opentracing-cpp package as a logging library package. Extra patch included to make shared/static target configurable. Upstream of that patch is ongoing: https://github.com/opentracing/opentracing-cpp/pull/46 br, Jan Jan Heylen (2): Opentracing: add opentracing-cpp v1.2.0 package opentracing-cpp: make shared/static target a configurable option package/Config.in | 1 + ...shared-static-target-a-configurable-optio.patch | 73 ++++++++++++++++++++++ package/opentracing-cpp/Config.in | 11 ++++ package/opentracing-cpp/opentracing-cpp.hash | 3 + package/opentracing-cpp/opentracing-cpp.mk | 22 +++++++ 5 files changed, 110 insertions(+) create mode 100644 package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch create mode 100644 package/opentracing-cpp/Config.in create mode 100644 package/opentracing-cpp/opentracing-cpp.hash create mode 100644 package/opentracing-cpp/opentracing-cpp.mk -- 2.7.4 ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-23 7:40 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Jan Heylen @ 2017-12-23 7:40 ` Jan Heylen 2017-12-30 21:46 ` Thomas Petazzoni 2018-01-03 8:52 ` [Buildroot] [PATCH v3 0/1] Opentracing-cpp: new package Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option Jan Heylen 2017-12-30 21:44 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Thomas Petazzoni 2 siblings, 2 replies; 25+ messages in thread From: Jan Heylen @ 2017-12-23 7:40 UTC (permalink / raw) To: buildroot From: Jan Heylen <jan.heylen@nokia.com> Signed-off-by: Jan Heylen <jan.heylen@nokia.com> --- Changes v1 -> v2: - Fix indendation typo - Add licence hash - remove INTALL_TARGET=yes as that is default --- package/Config.in | 1 + package/opentracing-cpp/Config.in | 11 +++++++++++ package/opentracing-cpp/opentracing-cpp.hash | 3 +++ package/opentracing-cpp/opentracing-cpp.mk | 14 ++++++++++++++ 4 files changed, 29 insertions(+) create mode 100644 package/opentracing-cpp/Config.in create mode 100644 package/opentracing-cpp/opentracing-cpp.hash create mode 100644 package/opentracing-cpp/opentracing-cpp.mk diff --git a/package/Config.in b/package/Config.in index bd39a37..1150a3f 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1288,6 +1288,7 @@ menu "Logging" source "package/log4cplus/Config.in" source "package/log4cpp/Config.in" source "package/log4cxx/Config.in" + source "package/opentracing-cpp/Config.in" source "package/zlog/Config.in" endmenu diff --git a/package/opentracing-cpp/Config.in b/package/opentracing-cpp/Config.in new file mode 100644 index 0000000..3f6f1ad --- /dev/null +++ b/package/opentracing-cpp/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_OPENTRACING_CPP + bool "opentracing-cpp" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + help + OpenTracing API for C++ + + http://opentracing.io + +comment "opentracing-cpp needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/opentracing-cpp/opentracing-cpp.hash b/package/opentracing-cpp/opentracing-cpp.hash new file mode 100644 index 0000000..d25dbaf --- /dev/null +++ b/package/opentracing-cpp/opentracing-cpp.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 c77041cb2f147ac81b2b0702abfced5565a9cebc318d045c060a4c3e074009ee opentracing-cpp-v1.2.0.tar.gz +sha256 b80bffcfee825a69645f7ca97ddba48714031ea5c845198d184714d5490798b6 COPYING diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk new file mode 100644 index 0000000..f1748ef --- /dev/null +++ b/package/opentracing-cpp/opentracing-cpp.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# opentracing-cpp +# +################################################################################ + +OPENTRACING_CPP_VERSION = v1.2.0 +OPENTRACING_CPP_SITE = $(call github,opentracing,opentracing-cpp,$(OPENTRACING_CPP_VERSION)) +OPENTRACING_CPP_LICENSE = MIT +OPENTRACING_CPP_LICENSE_FILES = COPYING + +OPENTRACING_CPP_INSTALL_STAGING = YES + +$(eval $(cmake-package)) -- 2.7.4 ^ permalink raw reply related [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-23 7:40 ` [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package Jan Heylen @ 2017-12-30 21:46 ` Thomas Petazzoni 2017-12-30 21:49 ` Jan Heylen 2018-01-03 8:52 ` [Buildroot] [PATCH v3 0/1] Opentracing-cpp: new package Jan Heylen 1 sibling, 1 reply; 25+ messages in thread From: Thomas Petazzoni @ 2017-12-30 21:46 UTC (permalink / raw) To: buildroot Hello, On Sat, 23 Dec 2017 08:40:01 +0100, Jan Heylen wrote: > From: Jan Heylen <jan.heylen@nokia.com> > > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> The commit title should be: opentracing-cpp: new package > package/Config.in | 1 + > package/opentracing-cpp/Config.in | 11 +++++++++++ > package/opentracing-cpp/opentracing-cpp.hash | 3 +++ > package/opentracing-cpp/opentracing-cpp.mk | 14 ++++++++++++++ Please add an entry in the DEVELOPERS file for this package. > diff --git a/package/opentracing-cpp/Config.in b/package/opentracing-cpp/Config.in > new file mode 100644 > index 0000000..3f6f1ad > --- /dev/null > +++ b/package/opentracing-cpp/Config.in > @@ -0,0 +1,11 @@ > +config BR2_PACKAGE_OPENTRACING_CPP > + bool "opentracing-cpp" > + depends on BR2_INSTALL_LIBSTDCPP > + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 > + help > + OpenTracing API for C++ > + > + http://opentracing.io > + > +comment "opentracing-cpp needs a toolchain w/ C++" > + depends on !BR2_INSTALL_LIBSTDCPP You forgot to include in the comment the gcc >= 4.8 dependency. Also, this package doesn't build with the following defconfig: BR2_arm=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2017.11-rc1.tar.bz2" BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y BR2_TOOLCHAIN_EXTERNAL_LOCALE=y # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set BR2_TOOLCHAIN_EXTERNAL_CXX=y BR2_INIT_NONE=y BR2_SYSTEM_BIN_SH_NONE=y # BR2_PACKAGE_BUSYBOX is not set BR2_PACKAGE_OPENTRACING_CPP=y # BR2_TARGET_ROOTFS_TAR is not set It fails with: >>> opentracing-cpp v1.2.0 Building PATH="/home/thomas/projets/buildroot/output/host/bin:/home/thomas/projets/buildroot/output/host/sbin:/usr/local/bin:/usr/bin:/bin:/home/thomas/.rvm/bin:/usr/local/sbin:/usr/sbin:/home/thomas/.rvm/bin:/home/thomas/sys/bin:/home/thomas/.gem/ruby/2.1.0/bin:/home/thomas/.rvm/bin" /usr/bin/make -j5 -C /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/ Scanning dependencies of target opentracing [ 25%] Building CXX object CMakeFiles/opentracing.dir/src/tracer.cpp.o [ 75%] Building CXX object CMakeFiles/opentracing.dir/src/propagation.cpp.o [ 75%] Building CXX object CMakeFiles/opentracing.dir/src/noop.cpp.o In file included from /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/util.h:13:0, from /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/propagation.h:5, from /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/tracer.h:4, from /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/noop.h:4, from /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/src/noop.cpp:1: /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: error: ?exception_ptr? is not a member of ?std? class unexpected_type< std::exception_ptr > ^ /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: error: ?exception_ptr? is not a member of ?std? /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:43: error: template argument 1 is invalid class unexpected_type< std::exception_ptr > ^ and many more of such errors. Could you verify with ./utils/test-pkg that your package builds properly? Thanks a lot! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-30 21:46 ` Thomas Petazzoni @ 2017-12-30 21:49 ` Jan Heylen 2017-12-31 9:23 ` Jan Heylen 0 siblings, 1 reply; 25+ messages in thread From: Jan Heylen @ 2017-12-30 21:49 UTC (permalink / raw) To: buildroot Thanks, I'll check it out. On 30 Dec 2017 22:46, "Thomas Petazzoni" < thomas.petazzoni@free-electrons.com> wrote: > Hello, > > On Sat, 23 Dec 2017 08:40:01 +0100, Jan Heylen wrote: > > From: Jan Heylen <jan.heylen@nokia.com> > > > > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> > > The commit title should be: > > opentracing-cpp: new package > > > > package/Config.in | 1 + > > package/opentracing-cpp/Config.in | 11 +++++++++++ > > package/opentracing-cpp/opentracing-cpp.hash | 3 +++ > > package/opentracing-cpp/opentracing-cpp.mk | 14 ++++++++++++++ > > Please add an entry in the DEVELOPERS file for this package. > > > diff --git a/package/opentracing-cpp/Config.in > b/package/opentracing-cpp/Config.in > > new file mode 100644 > > index 0000000..3f6f1ad > > --- /dev/null > > +++ b/package/opentracing-cpp/Config.in > > @@ -0,0 +1,11 @@ > > +config BR2_PACKAGE_OPENTRACING_CPP > > + bool "opentracing-cpp" > > + depends on BR2_INSTALL_LIBSTDCPP > > + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 > > + help > > + OpenTracing API for C++ > > + > > + http://opentracing.io > > + > > +comment "opentracing-cpp needs a toolchain w/ C++" > > + depends on !BR2_INSTALL_LIBSTDCPP > > You forgot to include in the comment the gcc >= 4.8 dependency. > > Also, this package doesn't build with the following defconfig: > > BR2_arm=y > BR2_TOOLCHAIN_EXTERNAL=y > BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y > BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y > BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/ > toolchains/tarballs/br-arm-full-2017.11-rc1.tar.bz2" > BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y > BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y > BR2_TOOLCHAIN_EXTERNAL_LOCALE=y > # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set > BR2_TOOLCHAIN_EXTERNAL_CXX=y > BR2_INIT_NONE=y > BR2_SYSTEM_BIN_SH_NONE=y > # BR2_PACKAGE_BUSYBOX is not set > BR2_PACKAGE_OPENTRACING_CPP=y > # BR2_TARGET_ROOTFS_TAR is not set > > It fails with: > > >>> opentracing-cpp v1.2.0 Building > PATH="/home/thomas/projets/buildroot/output/host/bin:/ > home/thomas/projets/buildroot/output/host/sbin:/usr/local/ > bin:/usr/bin:/bin:/home/thomas/.rvm/bin:/usr/local/ > sbin:/usr/sbin:/home/thomas/.rvm/bin:/home/thomas/sys/bin:/ > home/thomas/.gem/ruby/2.1.0/bin:/home/thomas/.rvm/bin" /usr/bin/make > -j5 -C /home/thomas/projets/buildroot/output/build/ > opentracing-cpp-v1.2.0/ > Scanning dependencies of target opentracing > [ 25%] Building CXX object CMakeFiles/opentracing.dir/src/tracer.cpp.o > [ 75%] Building CXX object CMakeFiles/opentracing.dir/ > src/propagation.cpp.o > [ 75%] Building CXX object CMakeFiles/opentracing.dir/src/noop.cpp.o > In file included from /home/thomas/projets/buildroot/output/build/ > opentracing-cpp-v1.2.0/include/opentracing/util.h:13:0, > from /home/thomas/projets/buildroot/output/build/ > opentracing-cpp-v1.2.0/include/opentracing/propagation.h:5, > from /home/thomas/projets/buildroot/output/build/ > opentracing-cpp-v1.2.0/include/opentracing/tracer.h:4, > from /home/thomas/projets/buildroot/output/build/ > opentracing-cpp-v1.2.0/include/opentracing/noop.h:4, > from /home/thomas/projets/buildroot/output/build/ > opentracing-cpp-v1.2.0/src/noop.cpp:1: > /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_ > party/include/opentracing/expected/expected.hpp:230:24: error: > ?exception_ptr? is not a member of ?std? > class unexpected_type< std::exception_ptr > > ^ > /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_ > party/include/opentracing/expected/expected.hpp:230:24: error: > ?exception_ptr? is not a member of ?std? > /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_ > party/include/opentracing/expected/expected.hpp:230:43: error: template > argument 1 is invalid > class unexpected_type< std::exception_ptr > > ^ > and many more of such errors. > > Could you verify with ./utils/test-pkg that your package builds > properly? > > Thanks a lot! > > Thomas > -- > Thomas Petazzoni, CTO, Free Electrons > Embedded Linux and Kernel engineering > http://free-electrons.com > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20171230/3b2b0ed3/attachment.html> ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-30 21:49 ` Jan Heylen @ 2017-12-31 9:23 ` Jan Heylen 2017-12-31 10:46 ` Jan Heylen 0 siblings, 1 reply; 25+ messages in thread From: Jan Heylen @ 2017-12-31 9:23 UTC (permalink / raw) To: buildroot Thomas, all, The issue it a bit more complex than I anticipated, it looks like for armv5 architecture(s), opentracing-cpp hits the following issue: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58938 "std::exception_ptr is missing on architectures with incomplete atomic int support" which comes down to: #if (__cplusplus >= 201103L) && (ATOMIC_INT_LOCK_FREE > 1) #include <bits/exception_ptr.h> #include <bits/nested_exception.h> #endif Also related to ATOMIC_INT_LOCK_FREE ==1 for armv5, is the following: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727621 " According the debian bug report [1], it is not possible to use std::future on armv5 targetting toolchains. This is because libstdc++ will only enable std::future if ATOMIC_INT_LOCK_FREE > 1. There is no LDREX for armv5 and older, so this definition is set to ATOMIC_INT_LOCK_FREE when compiling for ARMv4t or ARMv5. " Now, for std::exception_ptr, it got fixed to work withouth atomic support in libstdc++ begin of 2017, so I currently assume only gcc 6.4 (and maybe 5.5) includes that fix. So now: I wonder what the best options are: * remembering the libatomic story from a while ago: is there a chance I can get it fixed by some dependency on libatomic or so? I don't think so, but I could be wrong. * Do I need to remove support for armv5 architectures * or a construction that armv5 requires a very recent gcc version (seems fixed in gcc 6.4). any comment? br, Jan On Sat, Dec 30, 2017 at 10:49 PM, Jan Heylen <heyleke@gmail.com> wrote: > Thanks, I'll check it out. > > On 30 Dec 2017 22:46, "Thomas Petazzoni" > <thomas.petazzoni@free-electrons.com> wrote: >> >> Hello, >> >> On Sat, 23 Dec 2017 08:40:01 +0100, Jan Heylen wrote: >> > From: Jan Heylen <jan.heylen@nokia.com> >> > >> > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> >> >> The commit title should be: >> >> opentracing-cpp: new package >> >> >> > package/Config.in | 1 + >> > package/opentracing-cpp/Config.in | 11 +++++++++++ >> > package/opentracing-cpp/opentracing-cpp.hash | 3 +++ >> > package/opentracing-cpp/opentracing-cpp.mk | 14 ++++++++++++++ >> >> Please add an entry in the DEVELOPERS file for this package. >> >> > diff --git a/package/opentracing-cpp/Config.in >> > b/package/opentracing-cpp/Config.in >> > new file mode 100644 >> > index 0000000..3f6f1ad >> > --- /dev/null >> > +++ b/package/opentracing-cpp/Config.in >> > @@ -0,0 +1,11 @@ >> > +config BR2_PACKAGE_OPENTRACING_CPP >> > + bool "opentracing-cpp" >> > + depends on BR2_INSTALL_LIBSTDCPP >> > + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 >> > + help >> > + OpenTracing API for C++ >> > + >> > + http://opentracing.io >> > + >> > +comment "opentracing-cpp needs a toolchain w/ C++" >> > + depends on !BR2_INSTALL_LIBSTDCPP >> >> You forgot to include in the comment the gcc >= 4.8 dependency. >> >> Also, this package doesn't build with the following defconfig: >> >> BR2_arm=y >> BR2_TOOLCHAIN_EXTERNAL=y >> BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y >> BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y >> >> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2017.11-rc1.tar.bz2" >> BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y >> BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y >> BR2_TOOLCHAIN_EXTERNAL_LOCALE=y >> # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set >> BR2_TOOLCHAIN_EXTERNAL_CXX=y >> BR2_INIT_NONE=y >> BR2_SYSTEM_BIN_SH_NONE=y >> # BR2_PACKAGE_BUSYBOX is not set >> BR2_PACKAGE_OPENTRACING_CPP=y >> # BR2_TARGET_ROOTFS_TAR is not set >> >> It fails with: >> >> >>> opentracing-cpp v1.2.0 Building >> >> PATH="/home/thomas/projets/buildroot/output/host/bin:/home/thomas/projets/buildroot/output/host/sbin:/usr/local/bin:/usr/bin:/bin:/home/thomas/.rvm/bin:/usr/local/sbin:/usr/sbin:/home/thomas/.rvm/bin:/home/thomas/sys/bin:/home/thomas/.gem/ruby/2.1.0/bin:/home/thomas/.rvm/bin" >> /usr/bin/make -j5 -C >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/ >> Scanning dependencies of target opentracing >> [ 25%] Building CXX object CMakeFiles/opentracing.dir/src/tracer.cpp.o >> [ 75%] Building CXX object >> CMakeFiles/opentracing.dir/src/propagation.cpp.o >> [ 75%] Building CXX object CMakeFiles/opentracing.dir/src/noop.cpp.o >> In file included from >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/util.h:13:0, >> from >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/propagation.h:5, >> from >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/tracer.h:4, >> from >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/noop.h:4, >> from >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/src/noop.cpp:1: >> >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: >> error: ?exception_ptr? is not a member of ?std? >> class unexpected_type< std::exception_ptr > >> ^ >> >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: >> error: ?exception_ptr? is not a member of ?std? >> >> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:43: >> error: template argument 1 is invalid >> class unexpected_type< std::exception_ptr > >> ^ >> and many more of such errors. >> >> Could you verify with ./utils/test-pkg that your package builds >> properly? >> >> Thanks a lot! >> >> Thomas >> -- >> Thomas Petazzoni, CTO, Free Electrons >> Embedded Linux and Kernel engineering >> http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-31 9:23 ` Jan Heylen @ 2017-12-31 10:46 ` Jan Heylen 2017-12-31 13:23 ` Jan Heylen 0 siblings, 1 reply; 25+ messages in thread From: Jan Heylen @ 2017-12-31 10:46 UTC (permalink / raw) To: buildroot I assume it is this one: (package/mongodb/Config.in) config BR2_PACKAGE_MONGODB_ARCH_SUPPORTS bool # ARM needs LDREX/STREX, so ARMv6+ default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 # ARM needs LDREX/STREX: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dht0008a/ch01s02s01.html only question remains if we need to add an OR for gcc 6.4 in case of std::execption_ptr usage. br, Jan On Sun, Dec 31, 2017 at 10:23 AM, Jan Heylen <heyleke@gmail.com> wrote: > Thomas, all, > > The issue it a bit more complex than I anticipated, > > it looks like for armv5 architecture(s), opentracing-cpp hits the > following issue: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58938 > > "std::exception_ptr is missing on architectures with incomplete atomic > int support" > > which comes down to: > > #if (__cplusplus >= 201103L) && (ATOMIC_INT_LOCK_FREE > 1) > #include <bits/exception_ptr.h> > #include <bits/nested_exception.h> > #endif > > Also related to ATOMIC_INT_LOCK_FREE ==1 for armv5, is the following: > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727621 > > " > According the debian bug report [1], it is not possible to use std::future > on armv5 targetting toolchains. This is because libstdc++ will only enable > std::future if ATOMIC_INT_LOCK_FREE > 1. There is no LDREX for armv5 and > older, so this definition is set to ATOMIC_INT_LOCK_FREE when compiling for > ARMv4t or ARMv5. > " > > Now, for std::exception_ptr, it got fixed to work withouth atomic > support in libstdc++ begin of 2017, so I currently assume only gcc 6.4 > (and maybe 5.5) includes that fix. > > So now: I wonder what the best options are: > * remembering the libatomic story from a while ago: is there a chance > I can get it fixed by some dependency on libatomic or so? I don't > think so, but I could be wrong. > * Do I need to remove support for armv5 architectures > * or a construction that armv5 requires a very recent gcc version > (seems fixed in gcc 6.4). > > any comment? > > br, > > Jan > > On Sat, Dec 30, 2017 at 10:49 PM, Jan Heylen <heyleke@gmail.com> wrote: >> Thanks, I'll check it out. >> >> On 30 Dec 2017 22:46, "Thomas Petazzoni" >> <thomas.petazzoni@free-electrons.com> wrote: >>> >>> Hello, >>> >>> On Sat, 23 Dec 2017 08:40:01 +0100, Jan Heylen wrote: >>> > From: Jan Heylen <jan.heylen@nokia.com> >>> > >>> > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> >>> >>> The commit title should be: >>> >>> opentracing-cpp: new package >>> >>> >>> > package/Config.in | 1 + >>> > package/opentracing-cpp/Config.in | 11 +++++++++++ >>> > package/opentracing-cpp/opentracing-cpp.hash | 3 +++ >>> > package/opentracing-cpp/opentracing-cpp.mk | 14 ++++++++++++++ >>> >>> Please add an entry in the DEVELOPERS file for this package. >>> >>> > diff --git a/package/opentracing-cpp/Config.in >>> > b/package/opentracing-cpp/Config.in >>> > new file mode 100644 >>> > index 0000000..3f6f1ad >>> > --- /dev/null >>> > +++ b/package/opentracing-cpp/Config.in >>> > @@ -0,0 +1,11 @@ >>> > +config BR2_PACKAGE_OPENTRACING_CPP >>> > + bool "opentracing-cpp" >>> > + depends on BR2_INSTALL_LIBSTDCPP >>> > + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 >>> > + help >>> > + OpenTracing API for C++ >>> > + >>> > + http://opentracing.io >>> > + >>> > +comment "opentracing-cpp needs a toolchain w/ C++" >>> > + depends on !BR2_INSTALL_LIBSTDCPP >>> >>> You forgot to include in the comment the gcc >= 4.8 dependency. >>> >>> Also, this package doesn't build with the following defconfig: >>> >>> BR2_arm=y >>> BR2_TOOLCHAIN_EXTERNAL=y >>> BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y >>> BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y >>> >>> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2017.11-rc1.tar.bz2" >>> BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y >>> BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y >>> BR2_TOOLCHAIN_EXTERNAL_LOCALE=y >>> # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set >>> BR2_TOOLCHAIN_EXTERNAL_CXX=y >>> BR2_INIT_NONE=y >>> BR2_SYSTEM_BIN_SH_NONE=y >>> # BR2_PACKAGE_BUSYBOX is not set >>> BR2_PACKAGE_OPENTRACING_CPP=y >>> # BR2_TARGET_ROOTFS_TAR is not set >>> >>> It fails with: >>> >>> >>> opentracing-cpp v1.2.0 Building >>> >>> PATH="/home/thomas/projets/buildroot/output/host/bin:/home/thomas/projets/buildroot/output/host/sbin:/usr/local/bin:/usr/bin:/bin:/home/thomas/.rvm/bin:/usr/local/sbin:/usr/sbin:/home/thomas/.rvm/bin:/home/thomas/sys/bin:/home/thomas/.gem/ruby/2.1.0/bin:/home/thomas/.rvm/bin" >>> /usr/bin/make -j5 -C >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/ >>> Scanning dependencies of target opentracing >>> [ 25%] Building CXX object CMakeFiles/opentracing.dir/src/tracer.cpp.o >>> [ 75%] Building CXX object >>> CMakeFiles/opentracing.dir/src/propagation.cpp.o >>> [ 75%] Building CXX object CMakeFiles/opentracing.dir/src/noop.cpp.o >>> In file included from >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/util.h:13:0, >>> from >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/propagation.h:5, >>> from >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/tracer.h:4, >>> from >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/noop.h:4, >>> from >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/src/noop.cpp:1: >>> >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: >>> error: ?exception_ptr? is not a member of ?std? >>> class unexpected_type< std::exception_ptr > >>> ^ >>> >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: >>> error: ?exception_ptr? is not a member of ?std? >>> >>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:43: >>> error: template argument 1 is invalid >>> class unexpected_type< std::exception_ptr > >>> ^ >>> and many more of such errors. >>> >>> Could you verify with ./utils/test-pkg that your package builds >>> properly? >>> >>> Thanks a lot! >>> >>> Thomas >>> -- >>> Thomas Petazzoni, CTO, Free Electrons >>> Embedded Linux and Kernel engineering >>> http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-31 10:46 ` Jan Heylen @ 2017-12-31 13:23 ` Jan Heylen 2017-12-31 16:10 ` Thomas Petazzoni 0 siblings, 1 reply; 25+ messages in thread From: Jan Heylen @ 2017-12-31 13:23 UTC (permalink / raw) To: buildroot I found that this issue has actually a feature in buildroot: BR2_TOOLCHAIN_HAS_GCC_BUG_64735 I'll dig some deeper into that and propose a new version of the patch. br, Jan On Sun, Dec 31, 2017 at 11:46 AM, Jan Heylen <heyleke@gmail.com> wrote: > I assume it is this one: (package/mongodb/Config.in) > > config BR2_PACKAGE_MONGODB_ARCH_SUPPORTS > bool > # ARM needs LDREX/STREX, so ARMv6+ > default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 > > # ARM needs LDREX/STREX: > http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dht0008a/ch01s02s01.html > > only question remains if we need to add an OR for gcc 6.4 in case of > std::execption_ptr usage. > > br, > > Jan > > On Sun, Dec 31, 2017 at 10:23 AM, Jan Heylen <heyleke@gmail.com> wrote: >> Thomas, all, >> >> The issue it a bit more complex than I anticipated, >> >> it looks like for armv5 architecture(s), opentracing-cpp hits the >> following issue: >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58938 >> >> "std::exception_ptr is missing on architectures with incomplete atomic >> int support" >> >> which comes down to: >> >> #if (__cplusplus >= 201103L) && (ATOMIC_INT_LOCK_FREE > 1) >> #include <bits/exception_ptr.h> >> #include <bits/nested_exception.h> >> #endif >> >> Also related to ATOMIC_INT_LOCK_FREE ==1 for armv5, is the following: >> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727621 >> >> " >> According the debian bug report [1], it is not possible to use std::future >> on armv5 targetting toolchains. This is because libstdc++ will only enable >> std::future if ATOMIC_INT_LOCK_FREE > 1. There is no LDREX for armv5 and >> older, so this definition is set to ATOMIC_INT_LOCK_FREE when compiling for >> ARMv4t or ARMv5. >> " >> >> Now, for std::exception_ptr, it got fixed to work withouth atomic >> support in libstdc++ begin of 2017, so I currently assume only gcc 6.4 >> (and maybe 5.5) includes that fix. >> >> So now: I wonder what the best options are: >> * remembering the libatomic story from a while ago: is there a chance >> I can get it fixed by some dependency on libatomic or so? I don't >> think so, but I could be wrong. >> * Do I need to remove support for armv5 architectures >> * or a construction that armv5 requires a very recent gcc version >> (seems fixed in gcc 6.4). >> >> any comment? >> >> br, >> >> Jan >> >> On Sat, Dec 30, 2017 at 10:49 PM, Jan Heylen <heyleke@gmail.com> wrote: >>> Thanks, I'll check it out. >>> >>> On 30 Dec 2017 22:46, "Thomas Petazzoni" >>> <thomas.petazzoni@free-electrons.com> wrote: >>>> >>>> Hello, >>>> >>>> On Sat, 23 Dec 2017 08:40:01 +0100, Jan Heylen wrote: >>>> > From: Jan Heylen <jan.heylen@nokia.com> >>>> > >>>> > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> >>>> >>>> The commit title should be: >>>> >>>> opentracing-cpp: new package >>>> >>>> >>>> > package/Config.in | 1 + >>>> > package/opentracing-cpp/Config.in | 11 +++++++++++ >>>> > package/opentracing-cpp/opentracing-cpp.hash | 3 +++ >>>> > package/opentracing-cpp/opentracing-cpp.mk | 14 ++++++++++++++ >>>> >>>> Please add an entry in the DEVELOPERS file for this package. >>>> >>>> > diff --git a/package/opentracing-cpp/Config.in >>>> > b/package/opentracing-cpp/Config.in >>>> > new file mode 100644 >>>> > index 0000000..3f6f1ad >>>> > --- /dev/null >>>> > +++ b/package/opentracing-cpp/Config.in >>>> > @@ -0,0 +1,11 @@ >>>> > +config BR2_PACKAGE_OPENTRACING_CPP >>>> > + bool "opentracing-cpp" >>>> > + depends on BR2_INSTALL_LIBSTDCPP >>>> > + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 >>>> > + help >>>> > + OpenTracing API for C++ >>>> > + >>>> > + http://opentracing.io >>>> > + >>>> > +comment "opentracing-cpp needs a toolchain w/ C++" >>>> > + depends on !BR2_INSTALL_LIBSTDCPP >>>> >>>> You forgot to include in the comment the gcc >= 4.8 dependency. >>>> >>>> Also, this package doesn't build with the following defconfig: >>>> >>>> BR2_arm=y >>>> BR2_TOOLCHAIN_EXTERNAL=y >>>> BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y >>>> BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y >>>> >>>> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2017.11-rc1.tar.bz2" >>>> BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y >>>> BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y >>>> BR2_TOOLCHAIN_EXTERNAL_LOCALE=y >>>> # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set >>>> BR2_TOOLCHAIN_EXTERNAL_CXX=y >>>> BR2_INIT_NONE=y >>>> BR2_SYSTEM_BIN_SH_NONE=y >>>> # BR2_PACKAGE_BUSYBOX is not set >>>> BR2_PACKAGE_OPENTRACING_CPP=y >>>> # BR2_TARGET_ROOTFS_TAR is not set >>>> >>>> It fails with: >>>> >>>> >>> opentracing-cpp v1.2.0 Building >>>> >>>> PATH="/home/thomas/projets/buildroot/output/host/bin:/home/thomas/projets/buildroot/output/host/sbin:/usr/local/bin:/usr/bin:/bin:/home/thomas/.rvm/bin:/usr/local/sbin:/usr/sbin:/home/thomas/.rvm/bin:/home/thomas/sys/bin:/home/thomas/.gem/ruby/2.1.0/bin:/home/thomas/.rvm/bin" >>>> /usr/bin/make -j5 -C >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/ >>>> Scanning dependencies of target opentracing >>>> [ 25%] Building CXX object CMakeFiles/opentracing.dir/src/tracer.cpp.o >>>> [ 75%] Building CXX object >>>> CMakeFiles/opentracing.dir/src/propagation.cpp.o >>>> [ 75%] Building CXX object CMakeFiles/opentracing.dir/src/noop.cpp.o >>>> In file included from >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/util.h:13:0, >>>> from >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/propagation.h:5, >>>> from >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/tracer.h:4, >>>> from >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/include/opentracing/noop.h:4, >>>> from >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/src/noop.cpp:1: >>>> >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: >>>> error: ?exception_ptr? is not a member of ?std? >>>> class unexpected_type< std::exception_ptr > >>>> ^ >>>> >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:24: >>>> error: ?exception_ptr? is not a member of ?std? >>>> >>>> /home/thomas/projets/buildroot/output/build/opentracing-cpp-v1.2.0/3rd_party/include/opentracing/expected/expected.hpp:230:43: >>>> error: template argument 1 is invalid >>>> class unexpected_type< std::exception_ptr > >>>> ^ >>>> and many more of such errors. >>>> >>>> Could you verify with ./utils/test-pkg that your package builds >>>> properly? >>>> >>>> Thanks a lot! >>>> >>>> Thomas >>>> -- >>>> Thomas Petazzoni, CTO, Free Electrons >>>> Embedded Linux and Kernel engineering >>>> http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-31 13:23 ` Jan Heylen @ 2017-12-31 16:10 ` Thomas Petazzoni 2017-12-31 17:57 ` Jan Heylen 0 siblings, 1 reply; 25+ messages in thread From: Thomas Petazzoni @ 2017-12-31 16:10 UTC (permalink / raw) To: buildroot Hello, On Sun, 31 Dec 2017 14:23:06 +0100, Jan Heylen wrote: > I found that this issue has actually a feature in buildroot: > > BR2_TOOLCHAIN_HAS_GCC_BUG_64735 > > I'll dig some deeper into that and propose a new version of the patch. Indeed! I forgot about this one. So just make your package depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735. Could you resubmit, taking into account this issue, and the few other comments that I made ? Thanks a lot! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package 2017-12-31 16:10 ` Thomas Petazzoni @ 2017-12-31 17:57 ` Jan Heylen 0 siblings, 0 replies; 25+ messages in thread From: Jan Heylen @ 2017-12-31 17:57 UTC (permalink / raw) To: buildroot Will do, thanks! I tested it already. Need to squash the commits and resubmit. But first some festivities to handle. So my best wishes and you'll see the patch in 2018 ;-) Also m68k coldfire doesn't seem to handle it correctly. So I'll depend on that one too. Br, Jan On 31 Dec 2017 5:10 pm, "Thomas Petazzoni" < thomas.petazzoni@free-electrons.com> wrote: Hello, On Sun, 31 Dec 2017 14:23:06 +0100, Jan Heylen wrote: > I found that this issue has actually a feature in buildroot: > > BR2_TOOLCHAIN_HAS_GCC_BUG_64735 > > I'll dig some deeper into that and propose a new version of the patch. Indeed! I forgot about this one. So just make your package depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735. Could you resubmit, taking into account this issue, and the few other comments that I made ? Thanks a lot! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20171231/ab830141/attachment.html> ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 0/1] Opentracing-cpp: new package 2017-12-23 7:40 ` [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package Jan Heylen 2017-12-30 21:46 ` Thomas Petazzoni @ 2018-01-03 8:52 ` Jan Heylen 2018-01-03 8:52 ` [Buildroot] [PATCH v3 1/1] opentracing-cpp: " Jan Heylen 1 sibling, 1 reply; 25+ messages in thread From: Jan Heylen @ 2018-01-03 8:52 UTC (permalink / raw) To: buildroot From: Jan Heylen <jan.heylen@nokia.com> Hi, V3 of "this adds opentracing-cpp package as a logging library package." The included patch is already upstreamed and merged, but no new opentracing-cpp release was created yet. br, Jan Jan Heylen (1): opentracing-cpp: new package DEVELOPERS | 3 + package/Config.in | 1 + ...shared-static-target-a-configurable-optio.patch | 74 ++++++++++++++++++++++ package/opentracing-cpp/Config.in | 16 +++++ package/opentracing-cpp/opentracing-cpp.hash | 3 + package/opentracing-cpp/opentracing-cpp.mk | 22 +++++++ 6 files changed, 119 insertions(+) create mode 100644 package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch create mode 100644 package/opentracing-cpp/Config.in create mode 100644 package/opentracing-cpp/opentracing-cpp.hash create mode 100644 package/opentracing-cpp/opentracing-cpp.mk -- 2.7.4 ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 1/1] opentracing-cpp: new package 2018-01-03 8:52 ` [Buildroot] [PATCH v3 0/1] Opentracing-cpp: new package Jan Heylen @ 2018-01-03 8:52 ` Jan Heylen 2018-01-03 9:03 ` Baruch Siach 0 siblings, 1 reply; 25+ messages in thread From: Jan Heylen @ 2018-01-03 8:52 UTC (permalink / raw) To: buildroot From: Jan Heylen <jan.heylen@nokia.com> Signed-off-by: Jan Heylen <jan.heylen@nokia.com> --- test-pkg passes Changes v2 -> v3: - Fix another indendation typo - Add DEVELOPERS file change - Signoff opetracing-cpp patch - run test-pkg and include various dependencies (toolchain bug & m68k cf) - add comments in Config.in on the dependencies Changes v1 -> v2: - Fix indendation typo - Add licence hash - remove INTALL_TARGET=yes as that is default --- DEVELOPERS | 3 + package/Config.in | 1 + ...shared-static-target-a-configurable-optio.patch | 74 ++++++++++++++++++++++ package/opentracing-cpp/Config.in | 16 +++++ package/opentracing-cpp/opentracing-cpp.hash | 3 + package/opentracing-cpp/opentracing-cpp.mk | 22 +++++++ 6 files changed, 119 insertions(+) create mode 100644 package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch create mode 100644 package/opentracing-cpp/Config.in create mode 100644 package/opentracing-cpp/opentracing-cpp.hash create mode 100644 package/opentracing-cpp/opentracing-cpp.mk diff --git a/DEVELOPERS b/DEVELOPERS index fe989c0..f17fcdd 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -790,6 +790,9 @@ F: package/pangomm/ F: package/rpm/ F: package/yad/ +N: Jan Heylen <jan.heylen@nokia.com> +F: package/opentracing-cpp/ + N: Jan Kraval <jan.kraval@gmail.com> F: board/orangepi/orangepi-lite F: configs/orangepi_lite_defconfig diff --git a/package/Config.in b/package/Config.in index bd39a37..1150a3f 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1288,6 +1288,7 @@ menu "Logging" source "package/log4cplus/Config.in" source "package/log4cpp/Config.in" source "package/log4cxx/Config.in" + source "package/opentracing-cpp/Config.in" source "package/zlog/Config.in" endmenu diff --git a/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch new file mode 100644 index 0000000..90a945b --- /dev/null +++ b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch @@ -0,0 +1,74 @@ +From 9462847f23a25524fdc2112cbc8de3f2c02a1669 Mon Sep 17 00:00:00 2001 +From: Jan Heylen <jan.heylen@nokia.com> +Date: Fri, 22 Dec 2017 22:04:29 +0100 +Subject: [PATCH] CMake: make shared/static target a configurable option + +Signed-off-by: Jan Heylen <jan.heylen@nokia.com> +--- + CMakeLists.txt | 40 ++++++++++++++++++++++++++++------------ + 1 file changed, 28 insertions(+), 12 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index aadf2f9..d03bd00 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -70,18 +70,36 @@ endif() + include_directories(include) + include_directories(SYSTEM 3rd_party/include) + ++option(BUILD_SHARED_LIBS "Build as a shared library" ON) ++option(BUILD_STATIC_LIBS "Build as a static library" ON) ++ ++if (NOT BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS) ++ message(FATAL_ERROR "One or both of BUILD_SHARED_LIBS or BUILD_STATIC_LIBS must be set to ON to build") ++endif() ++ + set(SRCS src/propagation.cpp src/noop.cpp src/tracer.cpp) +-add_library(opentracing SHARED ${SRCS}) +-target_include_directories(opentracing INTERFACE "$<INSTALL_INTERFACE:include/>") +-set_target_properties(opentracing PROPERTIES VERSION ${OPENTRACING_VERSION_STRING} ++ ++if (BUILD_SHARED_LIBS) ++ add_library(opentracing SHARED ${SRCS}) ++ target_include_directories(opentracing INTERFACE "$<INSTALL_INTERFACE:include/>") ++ set_target_properties(opentracing PROPERTIES VERSION ${OPENTRACING_VERSION_STRING} + SOVERSION ${OPENTRACING_VERSION_MAJOR}) +-add_library(opentracing-static STATIC ${SRCS}) +-set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing) +-target_include_directories(opentracing-static INTERFACE "$<INSTALL_INTERFACE:include/>") +-if (CLANG_TIDY_EXE) +- set_target_properties(opentracing PROPERTIES ++ install(TARGETS opentracing EXPORT OpenTracingTargets ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) ++ if (CLANG_TIDY_EXE) ++ set_target_properties(opentracing PROPERTIES + CXX_CLANG_TIDY "${DO_CLANG_TIDY}") +-endif() ++ endif() ++endif(BUILD_SHARED_LIBS) ++ ++if (BUILD_STATIC_LIBS) ++ add_library(opentracing-static STATIC ${SRCS}) ++ set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing) ++ target_include_directories(opentracing-static INTERFACE "$<INSTALL_INTERFACE:include/>") ++ install(TARGETS opentracing-static EXPORT OpenTracingTargets ++ ARCHIVE DESTINATION lib) ++endif(BUILD_STATIC_LIBS) + + + install(DIRECTORY 3rd_party/include/opentracing DESTINATION include +@@ -89,9 +107,7 @@ install(DIRECTORY 3rd_party/include/opentracing DESTINATION include + PATTERN "*.h") + install(DIRECTORY include/opentracing DESTINATION include + FILES_MATCHING PATTERN "*.h") +-install(TARGETS opentracing opentracing-static EXPORT OpenTracingTargets +- LIBRARY DESTINATION lib +- ARCHIVE DESTINATION lib) ++ + + # ============================================================================== + # Package configuration setup +-- +2.7.4 + diff --git a/package/opentracing-cpp/Config.in b/package/opentracing-cpp/Config.in new file mode 100644 index 0000000..f13d21b --- /dev/null +++ b/package/opentracing-cpp/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_OPENTRACING_CPP + bool "opentracing-cpp" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr + depends on !BR2_m68k_cf # exception_ptr + help + OpenTracing API for C++ + + http://opentracing.io + +comment "opentracing-cpp needs a toolchain w/ C++11" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + +comment "opentracing-cpp needs exception_ptr" + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 || BR2_m68k_cf diff --git a/package/opentracing-cpp/opentracing-cpp.hash b/package/opentracing-cpp/opentracing-cpp.hash new file mode 100644 index 0000000..d25dbaf --- /dev/null +++ b/package/opentracing-cpp/opentracing-cpp.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 c77041cb2f147ac81b2b0702abfced5565a9cebc318d045c060a4c3e074009ee opentracing-cpp-v1.2.0.tar.gz +sha256 b80bffcfee825a69645f7ca97ddba48714031ea5c845198d184714d5490798b6 COPYING diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk new file mode 100644 index 0000000..9b2d473 --- /dev/null +++ b/package/opentracing-cpp/opentracing-cpp.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# opentracing-cpp +# +################################################################################ + +OPENTRACING_CPP_VERSION = v1.2.0 +OPENTRACING_CPP_SITE = $(call github,opentracing,opentracing-cpp,$(OPENTRACING_CPP_VERSION)) +OPENTRACING_CPP_LICENSE = MIT +OPENTRACING_CPP_LICENSE_FILES = COPYING + +OPENTRACING_CPP_INSTALL_STAGING = YES + +ifeq ($(BR2_STATIC_LIBS),y) +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON +else ifeq ($(BR2_SHARED_LIBS),y) +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF +endif + +$(eval $(cmake-package)) -- 2.7.4 ^ permalink raw reply related [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 1/1] opentracing-cpp: new package 2018-01-03 8:52 ` [Buildroot] [PATCH v3 1/1] opentracing-cpp: " Jan Heylen @ 2018-01-03 9:03 ` Baruch Siach 2018-01-03 9:07 ` Jan Heylen 0 siblings, 1 reply; 25+ messages in thread From: Baruch Siach @ 2018-01-03 9:03 UTC (permalink / raw) To: buildroot Hi Jan, On Wed, Jan 03, 2018 at 09:52:23AM +0100, Jan Heylen wrote: > From: Jan Heylen <jan.heylen@nokia.com> > > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> > --- [...] > diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk > new file mode 100644 > index 0000000..9b2d473 > --- /dev/null > +++ b/package/opentracing-cpp/opentracing-cpp.mk > @@ -0,0 +1,22 @@ > +################################################################################ > +# > +# opentracing-cpp > +# > +################################################################################ > + > +OPENTRACING_CPP_VERSION = v1.2.0 > +OPENTRACING_CPP_SITE = $(call github,opentracing,opentracing-cpp,$(OPENTRACING_CPP_VERSION)) > +OPENTRACING_CPP_LICENSE = MIT > +OPENTRACING_CPP_LICENSE_FILES = COPYING > + > +OPENTRACING_CPP_INSTALL_STAGING = YES > + > +ifeq ($(BR2_STATIC_LIBS),y) > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON > +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON > +else ifeq ($(BR2_SHARED_LIBS),y) > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF > +endif The -DBUILD_SHARED_LIBS setting should be handled correctly by the Buildroot cmake infrastructure at package/pkg-cmake.mk. Doesn't that work for you? baruch > + > +$(eval $(cmake-package)) -- http://baruch.siach.name/blog/ ~. .~ Tk Open Systems =}------------------------------------------------ooO--U--Ooo------------{= - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il - ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 1/1] opentracing-cpp: new package 2018-01-03 9:03 ` Baruch Siach @ 2018-01-03 9:07 ` Jan Heylen 2018-01-03 9:50 ` Baruch Siach 0 siblings, 1 reply; 25+ messages in thread From: Jan Heylen @ 2018-01-03 9:07 UTC (permalink / raw) To: buildroot I copied that infra from another package. Thomas also indicated already that there is something already generalised but not fully yet. So he adviced to keep it like this for the time being. If this is not nok, please advice differently. Br, Jan On 3 Jan 2018 10:04, "Baruch Siach" <baruch@tkos.co.il> wrote: > Hi Jan, > > On Wed, Jan 03, 2018 at 09:52:23AM +0100, Jan Heylen wrote: > > From: Jan Heylen <jan.heylen@nokia.com> > > > > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> > > --- > > [...] > > > diff --git a/package/opentracing-cpp/opentracing-cpp.mk > b/package/opentracing-cpp/opentracing-cpp.mk > > new file mode 100644 > > index 0000000..9b2d473 > > --- /dev/null > > +++ b/package/opentracing-cpp/opentracing-cpp.mk > > @@ -0,0 +1,22 @@ > > +########################################################### > ##################### > > +# > > +# opentracing-cpp > > +# > > +########################################################### > ##################### > > + > > +OPENTRACING_CPP_VERSION = v1.2.0 > > +OPENTRACING_CPP_SITE = $(call github,opentracing, > opentracing-cpp,$(OPENTRACING_CPP_VERSION)) > > +OPENTRACING_CPP_LICENSE = MIT > > +OPENTRACING_CPP_LICENSE_FILES = COPYING > > + > > +OPENTRACING_CPP_INSTALL_STAGING = YES > > + > > +ifeq ($(BR2_STATIC_LIBS),y) > > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF > -DBUILD_STATIC_LIBS=ON > > +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) > > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON > -DBUILD_STATIC_LIBS=ON > > +else ifeq ($(BR2_SHARED_LIBS),y) > > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON > -DBUILD_STATIC_LIBS=OFF > > +endif > > The -DBUILD_SHARED_LIBS setting should be handled correctly by the > Buildroot > cmake infrastructure at package/pkg-cmake.mk. Doesn't that work for you? > > baruch > > > + > > +$(eval $(cmake-package)) > > -- > http://baruch.siach.name/blog/ ~. .~ Tk Open > Systems > =}------------------------------------------------ooO--U-- > Ooo------------{= > - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il - > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180103/56d2169c/attachment.html> ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 1/1] opentracing-cpp: new package 2018-01-03 9:07 ` Jan Heylen @ 2018-01-03 9:50 ` Baruch Siach 2018-01-03 10:10 ` Thomas Petazzoni 0 siblings, 1 reply; 25+ messages in thread From: Baruch Siach @ 2018-01-03 9:50 UTC (permalink / raw) To: buildroot Hi Jan, On Wed, Jan 03, 2018 at 10:07:51AM +0100, Jan Heylen wrote: > I copied that infra from another package. Thomas also indicated already > that there is something already generalised but not fully yet. So he > adviced to keep it like this for the time being. If this is not nok, please > advice differently. I see that rabbitmq-c is also doing that. I think that the -DBUILD_SHARED_LIBS part is redundant. But the -DBUILD_STATIC_LIBS part might be needed, since the generic code does not handle that. baruch > On 3 Jan 2018 10:04, "Baruch Siach" <baruch@tkos.co.il> wrote: > > On Wed, Jan 03, 2018 at 09:52:23AM +0100, Jan Heylen wrote: > > > From: Jan Heylen <jan.heylen@nokia.com> > > > > > > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> > > > --- > > > > [...] > > > > > diff --git a/package/opentracing-cpp/opentracing-cpp.mk > > b/package/opentracing-cpp/opentracing-cpp.mk > > > new file mode 100644 > > > index 0000000..9b2d473 > > > --- /dev/null > > > +++ b/package/opentracing-cpp/opentracing-cpp.mk > > > @@ -0,0 +1,22 @@ > > > +########################################################### > > ##################### > > > +# > > > +# opentracing-cpp > > > +# > > > +########################################################### > > ##################### > > > + > > > +OPENTRACING_CPP_VERSION = v1.2.0 > > > +OPENTRACING_CPP_SITE = $(call github,opentracing, > > opentracing-cpp,$(OPENTRACING_CPP_VERSION)) > > > +OPENTRACING_CPP_LICENSE = MIT > > > +OPENTRACING_CPP_LICENSE_FILES = COPYING > > > + > > > +OPENTRACING_CPP_INSTALL_STAGING = YES > > > + > > > +ifeq ($(BR2_STATIC_LIBS),y) > > > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF > > -DBUILD_STATIC_LIBS=ON > > > +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) > > > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON > > -DBUILD_STATIC_LIBS=ON > > > +else ifeq ($(BR2_SHARED_LIBS),y) > > > +OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON > > -DBUILD_STATIC_LIBS=OFF > > > +endif > > > > The -DBUILD_SHARED_LIBS setting should be handled correctly by the > > Buildroot > > cmake infrastructure at package/pkg-cmake.mk. Doesn't that work for you? > > > > baruch > > > > > + > > > +$(eval $(cmake-package)) -- http://baruch.siach.name/blog/ ~. .~ Tk Open Systems =}------------------------------------------------ooO--U--Ooo------------{= - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il - ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 1/1] opentracing-cpp: new package 2018-01-03 9:50 ` Baruch Siach @ 2018-01-03 10:10 ` Thomas Petazzoni 2018-01-03 20:37 ` Samuel Martin 0 siblings, 1 reply; 25+ messages in thread From: Thomas Petazzoni @ 2018-01-03 10:10 UTC (permalink / raw) To: buildroot Hello, On Wed, 3 Jan 2018 11:50:32 +0200, Baruch Siach wrote: > Hi Jan, > > On Wed, Jan 03, 2018 at 10:07:51AM +0100, Jan Heylen wrote: > > I copied that infra from another package. Thomas also indicated already > > that there is something already generalised but not fully yet. So he > > adviced to keep it like this for the time being. If this is not nok, please > > advice differently. > > I see that rabbitmq-c is also doing that. I think that the -DBUILD_SHARED_LIBS > part is redundant. But the -DBUILD_STATIC_LIBS part might be needed, since the > generic code does not handle that. The generic code in pkg-cmake.mk is indeed not very consistent. It is strange to pass BUILD_SHARED_LIBS, but not BUILD_STATIC_LIBS. On the other hand, there doesn't seem to be a real standardization of such options in the CMake world. I.e it's really up to each individual package to obey to BUILD_SHARED_LIBS/BUILD_STATIC_LIBS, and many CMake packages have their own custom options to enable/disable shared/static library build. But I guess for the sake of consistency pkg-cmake.mk should also pass BUILD_STATIC_LIBS, and we should accordingly cleanup the CMake packages that rely on BUILD_SHARED_LIBS/BUILD_STATIC_LIBS to not pass them explicitly, and rely on what the pkg-cmake infra is doing. Best regards, Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 1/1] opentracing-cpp: new package 2018-01-03 10:10 ` Thomas Petazzoni @ 2018-01-03 20:37 ` Samuel Martin 2018-01-03 20:44 ` Thomas Petazzoni 0 siblings, 1 reply; 25+ messages in thread From: Samuel Martin @ 2018-01-03 20:37 UTC (permalink / raw) To: buildroot Hi all, Apologies for being late back in this thread :-/ On Wed, Jan 3, 2018 at 11:10 AM, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > Hello, > > On Wed, 3 Jan 2018 11:50:32 +0200, Baruch Siach wrote: >> Hi Jan, >> >> On Wed, Jan 03, 2018 at 10:07:51AM +0100, Jan Heylen wrote: >> > I copied that infra from another package. Thomas also indicated already >> > that there is something already generalised but not fully yet. So he >> > adviced to keep it like this for the time being. If this is not nok, please >> > advice differently. >> >> I see that rabbitmq-c is also doing that. I think that the -DBUILD_SHARED_LIBS >> part is redundant. But the -DBUILD_STATIC_LIBS part might be needed, since the >> generic code does not handle that. > > The generic code in pkg-cmake.mk is indeed not very consistent. It is > strange to pass BUILD_SHARED_LIBS, but not BUILD_STATIC_LIBS. Well, I think the code in pkg-cmake.mk has been done to stick as close as possible to what is the default behavior of CMake. But, it is true its default behavior is not really consistent since CMake only offers a boolean variable driving the way the libraries are built (see [1]) > > On the other hand, there doesn't seem to be a real standardization of > such options in the CMake world. I.e it's really up to each individual > package to obey to BUILD_SHARED_LIBS/BUILD_STATIC_LIBS, and many CMake > packages have their own custom options to enable/disable shared/static > library build. > > But I guess for the sake of consistency pkg-cmake.mk should also pass > BUILD_STATIC_LIBS, and we should accordingly cleanup the CMake packages > that rely on BUILD_SHARED_LIBS/BUILD_STATIC_LIBS to not pass them > explicitly, and rely on what the pkg-cmake infra is doing. Adding BUILD_STATIC_LIBS will make thing a bit nicer (at least symetric), though it is not standard in any way, which means some projects may choose another name for a similar option and there is not much we can do about this. BTW, some projects still seems ignoring the existence of the BUILD_SHARED_LIBS variable since they add a similar option with a different name. [1] https://cmake.org/cmake/help/v3.8/manual/cmake-variables.7.html#variables-that-change-behavior Regards, -- Samuel ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v3 1/1] opentracing-cpp: new package 2018-01-03 20:37 ` Samuel Martin @ 2018-01-03 20:44 ` Thomas Petazzoni 0 siblings, 0 replies; 25+ messages in thread From: Thomas Petazzoni @ 2018-01-03 20:44 UTC (permalink / raw) To: buildroot Hello, On Wed, 3 Jan 2018 21:37:03 +0100, Samuel Martin wrote: > > On the other hand, there doesn't seem to be a real standardization of > > such options in the CMake world. I.e it's really up to each individual > > package to obey to BUILD_SHARED_LIBS/BUILD_STATIC_LIBS, and many CMake > > packages have their own custom options to enable/disable shared/static > > library build. > > > > But I guess for the sake of consistency pkg-cmake.mk should also pass > > BUILD_STATIC_LIBS, and we should accordingly cleanup the CMake packages > > that rely on BUILD_SHARED_LIBS/BUILD_STATIC_LIBS to not pass them > > explicitly, and rely on what the pkg-cmake infra is doing. > > Adding BUILD_STATIC_LIBS will make thing a bit nicer (at least > symetric), though it is not standard in any way, which means some > projects may choose another name for a similar option and there is not > much we can do about this. > > BTW, some projects still seems ignoring the existence of the > BUILD_SHARED_LIBS variable since they add a similar option with a > different name. > > > [1] https://cmake.org/cmake/help/v3.8/manual/cmake-variables.7.html#variables-that-change-behavior So BUILD_SHARED_LIBS is somewhat standardized by CMake, but not BUILD_STATIC_LIBS. If that's the case, then we should not handle BUILD_STATIC_LIBS in pkg-cmake.mk, contrary to what I said previously. And we should add a comment explaining this in pkg-cmake.mk. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option 2017-12-23 7:40 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package Jan Heylen @ 2017-12-23 7:40 ` Jan Heylen 2017-12-29 17:23 ` Jan Heylen 2017-12-30 21:47 ` Thomas Petazzoni 2017-12-30 21:44 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Thomas Petazzoni 2 siblings, 2 replies; 25+ messages in thread From: Jan Heylen @ 2017-12-23 7:40 UTC (permalink / raw) To: buildroot From: Jan Heylen <jan.heylen@nokia.com> Signed-off-by: Jan Heylen <jan.heylen@nokia.com> --- Changes v1 -> v2: - v1: no patch include, v2: include extra patch to make shared/static configurable --- ...shared-static-target-a-configurable-optio.patch | 73 ++++++++++++++++++++++ package/opentracing-cpp/opentracing-cpp.mk | 8 +++ 2 files changed, 81 insertions(+) create mode 100644 package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch diff --git a/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch new file mode 100644 index 0000000..1323f3f --- /dev/null +++ b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch @@ -0,0 +1,73 @@ +From 9462847f23a25524fdc2112cbc8de3f2c02a1669 Mon Sep 17 00:00:00 2001 +From: Jan Heylen <jan.heylen@nokia.com> +Date: Fri, 22 Dec 2017 22:04:29 +0100 +Subject: [PATCH] CMake: make shared/static target a configurable option + +--- + CMakeLists.txt | 40 ++++++++++++++++++++++++++++------------ + 1 file changed, 28 insertions(+), 12 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index aadf2f9..d03bd00 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -70,18 +70,36 @@ endif() + include_directories(include) + include_directories(SYSTEM 3rd_party/include) + ++option(BUILD_SHARED_LIBS "Build as a shared library" ON) ++option(BUILD_STATIC_LIBS "Build as a static library" ON) ++ ++if (NOT BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS) ++ message(FATAL_ERROR "One or both of BUILD_SHARED_LIBS or BUILD_STATIC_LIBS must be set to ON to build") ++endif() ++ + set(SRCS src/propagation.cpp src/noop.cpp src/tracer.cpp) +-add_library(opentracing SHARED ${SRCS}) +-target_include_directories(opentracing INTERFACE "$<INSTALL_INTERFACE:include/>") +-set_target_properties(opentracing PROPERTIES VERSION ${OPENTRACING_VERSION_STRING} ++ ++if (BUILD_SHARED_LIBS) ++ add_library(opentracing SHARED ${SRCS}) ++ target_include_directories(opentracing INTERFACE "$<INSTALL_INTERFACE:include/>") ++ set_target_properties(opentracing PROPERTIES VERSION ${OPENTRACING_VERSION_STRING} + SOVERSION ${OPENTRACING_VERSION_MAJOR}) +-add_library(opentracing-static STATIC ${SRCS}) +-set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing) +-target_include_directories(opentracing-static INTERFACE "$<INSTALL_INTERFACE:include/>") +-if (CLANG_TIDY_EXE) +- set_target_properties(opentracing PROPERTIES ++ install(TARGETS opentracing EXPORT OpenTracingTargets ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) ++ if (CLANG_TIDY_EXE) ++ set_target_properties(opentracing PROPERTIES + CXX_CLANG_TIDY "${DO_CLANG_TIDY}") +-endif() ++ endif() ++endif(BUILD_SHARED_LIBS) ++ ++if (BUILD_STATIC_LIBS) ++ add_library(opentracing-static STATIC ${SRCS}) ++ set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing) ++ target_include_directories(opentracing-static INTERFACE "$<INSTALL_INTERFACE:include/>") ++ install(TARGETS opentracing-static EXPORT OpenTracingTargets ++ ARCHIVE DESTINATION lib) ++endif(BUILD_STATIC_LIBS) + + + install(DIRECTORY 3rd_party/include/opentracing DESTINATION include +@@ -89,9 +107,7 @@ install(DIRECTORY 3rd_party/include/opentracing DESTINATION include + PATTERN "*.h") + install(DIRECTORY include/opentracing DESTINATION include + FILES_MATCHING PATTERN "*.h") +-install(TARGETS opentracing opentracing-static EXPORT OpenTracingTargets +- LIBRARY DESTINATION lib +- ARCHIVE DESTINATION lib) ++ + + # ============================================================================== + # Package configuration setup +-- +2.7.4 + diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk index f1748ef..9043966 100644 --- a/package/opentracing-cpp/opentracing-cpp.mk +++ b/package/opentracing-cpp/opentracing-cpp.mk @@ -11,4 +11,12 @@ OPENTRACING_CPP_LICENSE_FILES = COPYING OPENTRACING_CPP_INSTALL_STAGING = YES +ifeq ($(BR2_STATIC_LIBS),y) + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON +else ifeq ($(BR2_SHARED_LIBS),y) + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF +endif + $(eval $(cmake-package)) -- 2.7.4 ^ permalink raw reply related [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option 2017-12-23 7:40 ` [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option Jan Heylen @ 2017-12-29 17:23 ` Jan Heylen 2017-12-30 21:47 ` Thomas Petazzoni 1 sibling, 0 replies; 25+ messages in thread From: Jan Heylen @ 2017-12-29 17:23 UTC (permalink / raw) To: buildroot fyi, patch got merged into opentracing-cpp upstream, no opentracing-cpp release yet that includes it On Sat, Dec 23, 2017 at 8:40 AM, Jan Heylen <heyleke@gmail.com> wrote: > From: Jan Heylen <jan.heylen@nokia.com> > > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> > > --- > Changes v1 -> v2: > - v1: no patch include, v2: include extra patch to make shared/static configurable > > --- > ...shared-static-target-a-configurable-optio.patch | 73 ++++++++++++++++++++++ > package/opentracing-cpp/opentracing-cpp.mk | 8 +++ > 2 files changed, 81 insertions(+) > create mode 100644 package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch > > diff --git a/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch > new file mode 100644 > index 0000000..1323f3f > --- /dev/null > +++ b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch > @@ -0,0 +1,73 @@ > +From 9462847f23a25524fdc2112cbc8de3f2c02a1669 Mon Sep 17 00:00:00 2001 > +From: Jan Heylen <jan.heylen@nokia.com> > +Date: Fri, 22 Dec 2017 22:04:29 +0100 > +Subject: [PATCH] CMake: make shared/static target a configurable option > + > +--- > + CMakeLists.txt | 40 ++++++++++++++++++++++++++++------------ > + 1 file changed, 28 insertions(+), 12 deletions(-) > + > +diff --git a/CMakeLists.txt b/CMakeLists.txt > +index aadf2f9..d03bd00 100644 > +--- a/CMakeLists.txt > ++++ b/CMakeLists.txt > +@@ -70,18 +70,36 @@ endif() > + include_directories(include) > + include_directories(SYSTEM 3rd_party/include) > + > ++option(BUILD_SHARED_LIBS "Build as a shared library" ON) > ++option(BUILD_STATIC_LIBS "Build as a static library" ON) > ++ > ++if (NOT BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS) > ++ message(FATAL_ERROR "One or both of BUILD_SHARED_LIBS or BUILD_STATIC_LIBS must be set to ON to build") > ++endif() > ++ > + set(SRCS src/propagation.cpp src/noop.cpp src/tracer.cpp) > +-add_library(opentracing SHARED ${SRCS}) > +-target_include_directories(opentracing INTERFACE "$<INSTALL_INTERFACE:include/>") > +-set_target_properties(opentracing PROPERTIES VERSION ${OPENTRACING_VERSION_STRING} > ++ > ++if (BUILD_SHARED_LIBS) > ++ add_library(opentracing SHARED ${SRCS}) > ++ target_include_directories(opentracing INTERFACE "$<INSTALL_INTERFACE:include/>") > ++ set_target_properties(opentracing PROPERTIES VERSION ${OPENTRACING_VERSION_STRING} > + SOVERSION ${OPENTRACING_VERSION_MAJOR}) > +-add_library(opentracing-static STATIC ${SRCS}) > +-set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing) > +-target_include_directories(opentracing-static INTERFACE "$<INSTALL_INTERFACE:include/>") > +-if (CLANG_TIDY_EXE) > +- set_target_properties(opentracing PROPERTIES > ++ install(TARGETS opentracing EXPORT OpenTracingTargets > ++ LIBRARY DESTINATION lib > ++ ARCHIVE DESTINATION lib) > ++ if (CLANG_TIDY_EXE) > ++ set_target_properties(opentracing PROPERTIES > + CXX_CLANG_TIDY "${DO_CLANG_TIDY}") > +-endif() > ++ endif() > ++endif(BUILD_SHARED_LIBS) > ++ > ++if (BUILD_STATIC_LIBS) > ++ add_library(opentracing-static STATIC ${SRCS}) > ++ set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing) > ++ target_include_directories(opentracing-static INTERFACE "$<INSTALL_INTERFACE:include/>") > ++ install(TARGETS opentracing-static EXPORT OpenTracingTargets > ++ ARCHIVE DESTINATION lib) > ++endif(BUILD_STATIC_LIBS) > + > + > + install(DIRECTORY 3rd_party/include/opentracing DESTINATION include > +@@ -89,9 +107,7 @@ install(DIRECTORY 3rd_party/include/opentracing DESTINATION include > + PATTERN "*.h") > + install(DIRECTORY include/opentracing DESTINATION include > + FILES_MATCHING PATTERN "*.h") > +-install(TARGETS opentracing opentracing-static EXPORT OpenTracingTargets > +- LIBRARY DESTINATION lib > +- ARCHIVE DESTINATION lib) > ++ > + > + # ============================================================================== > + # Package configuration setup > +-- > +2.7.4 > + > diff --git a/package/opentracing-cpp/opentracing-cpp.mk b/package/opentracing-cpp/opentracing-cpp.mk > index f1748ef..9043966 100644 > --- a/package/opentracing-cpp/opentracing-cpp.mk > +++ b/package/opentracing-cpp/opentracing-cpp.mk > @@ -11,4 +11,12 @@ OPENTRACING_CPP_LICENSE_FILES = COPYING > > OPENTRACING_CPP_INSTALL_STAGING = YES > > +ifeq ($(BR2_STATIC_LIBS),y) > + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON > +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) > + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON > +else ifeq ($(BR2_SHARED_LIBS),y) > + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF > +endif > + > $(eval $(cmake-package)) > -- > 2.7.4 > ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option 2017-12-23 7:40 ` [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option Jan Heylen 2017-12-29 17:23 ` Jan Heylen @ 2017-12-30 21:47 ` Thomas Petazzoni 1 sibling, 0 replies; 25+ messages in thread From: Thomas Petazzoni @ 2017-12-30 21:47 UTC (permalink / raw) To: buildroot Hello, On Sat, 23 Dec 2017 08:40:02 +0100, Jan Heylen wrote: > From: Jan Heylen <jan.heylen@nokia.com> > > Signed-off-by: Jan Heylen <jan.heylen@nokia.com> As I said, please merge this into the previous patch. > diff --git a/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch > new file mode 100644 > index 0000000..1323f3f > --- /dev/null > +++ b/package/opentracing-cpp/0001-CMake-make-shared-static-target-a-configurable-optio.patch > @@ -0,0 +1,73 @@ > +From 9462847f23a25524fdc2112cbc8de3f2c02a1669 Mon Sep 17 00:00:00 2001 > +From: Jan Heylen <jan.heylen@nokia.com> > +Date: Fri, 22 Dec 2017 22:04:29 +0100 > +Subject: [PATCH] CMake: make shared/static target a configurable option > + Please add your Signed-off-by line here. > +ifeq ($(BR2_STATIC_LIBS),y) > + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON > +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) > + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON > +else ifeq ($(BR2_SHARED_LIBS),y) > + OPENTRACING_CPP_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF > +endif Don't indent the OPENTRACING_CPP_CONF_OPTS lines. The CMake package infrastructure is already passing -DBUILD_SHARED_LIBS=OFF/ON, but not -DBUILD_STATIC_LIBS=ON/OFF. And a number of packages are anyway passing -DBUILD_SHARED_LIBS=ON/OFF. Until we clarify this, it's OK to have your package pass both options. Thanks! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
* [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package 2017-12-23 7:40 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option Jan Heylen @ 2017-12-30 21:44 ` Thomas Petazzoni 2 siblings, 0 replies; 25+ messages in thread From: Thomas Petazzoni @ 2017-12-30 21:44 UTC (permalink / raw) To: buildroot Hello, Thanks for this contribution! On Sat, 23 Dec 2017 08:40:00 +0100, Jan Heylen wrote: > Jan Heylen (2): > Opentracing: add opentracing-cpp v1.2.0 package > opentracing-cpp: make shared/static target a configurable option Those two patches should be merged into a single patch, since they are both needed to add a working package. I'll review the patches themselves with additional comments. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2018-01-03 20:44 UTC | newest] Thread overview: 25+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-12-21 9:41 [Buildroot] Opentracing-cpp package heyleke at gmail.com 2017-12-21 9:41 ` [Buildroot] [PATCH] Opentracing: add opentracing-cpp v1.2.0 package heyleke at gmail.com 2017-12-22 15:00 ` Samuel Martin 2017-12-22 15:20 ` Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Jan Heylen 2017-12-23 7:40 ` [Buildroot] [PATCH v2 1/2] Opentracing: add opentracing-cpp v1.2.0 package Jan Heylen 2017-12-30 21:46 ` Thomas Petazzoni 2017-12-30 21:49 ` Jan Heylen 2017-12-31 9:23 ` Jan Heylen 2017-12-31 10:46 ` Jan Heylen 2017-12-31 13:23 ` Jan Heylen 2017-12-31 16:10 ` Thomas Petazzoni 2017-12-31 17:57 ` Jan Heylen 2018-01-03 8:52 ` [Buildroot] [PATCH v3 0/1] Opentracing-cpp: new package Jan Heylen 2018-01-03 8:52 ` [Buildroot] [PATCH v3 1/1] opentracing-cpp: " Jan Heylen 2018-01-03 9:03 ` Baruch Siach 2018-01-03 9:07 ` Jan Heylen 2018-01-03 9:50 ` Baruch Siach 2018-01-03 10:10 ` Thomas Petazzoni 2018-01-03 20:37 ` Samuel Martin 2018-01-03 20:44 ` Thomas Petazzoni 2017-12-23 7:40 ` [Buildroot] [PATCH v2 2/2] opentracing-cpp: make shared/static target a configurable option Jan Heylen 2017-12-29 17:23 ` Jan Heylen 2017-12-30 21:47 ` Thomas Petazzoni 2017-12-30 21:44 ` [Buildroot] [PATCH v2 0/2] Opentracing-cpp: new package Thomas Petazzoni
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox