pulseview: new package
PATCH v2 1/1 pulseview: new package
---
Version 2:
- select BR2_PACKAGE_QT5BASE_PNG in Config.in - this is needed for pulseview to properly display .png icons
- don't select libserial port
Version 1:
http://patchwork.ozlabs.org/patch/445288/
package/Config.in | 1 + package/pulseview/Config.in | 28 ++++++++++++++++++++++++++++ package/pulseview/pulseview.mk | 24 ++++++++++++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 package/pulseview/Config.in create mode 100644 package/pulseview/pulseview.mk
package/Config.in +1 -0
@@ -363,6 +363,7 @@ endif source "package/picocom/Config.in" source "package/pifmrds/Config.in" source "package/pps-tools/Config.in" + source "package/pulseview/Config.in" source "package/read-edid/Config.in" source "package/rng-tools/Config.in" source "package/rpi-userland/Config.in"
package/pulseview/Config.in new file +28 -0
@@ -0,0 +1,28 @@ +config BR2_PACKAGE_PULSEVIEW + bool "pulseview" + select BR2_PACKAGE_LIBSIGROK + select BR2_PACKAGE_LIBSIGROKCXX + depends on BR2_PACKAGE_QT5 + select BR2_PACKAGE_QT5BASE_WIDGETS + select BR2_PACKAGE_QT5BASE_PNG + select BR2_PACKAGE_QT5SVG + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_FILESYSTEM + select BR2_PACKAGE_BOOST_SYSTEM + select BR2_PACKAGE_BOOST_THREAD + # libsigrok->libglib2: + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_BUILDROOT_CXX + help + PulseView is a Qt based logic analyzer, oscilloscope + and MSO GUI for sigrok. + + http://sigrok.org/wiki/PulseView + +comment "pulseview needs a toolchain w/ wchar, threads, C++" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_PACKAGE_QT5 + depends on !BR2_TOOLCHAIN_BUILDROOT_CXX
package/pulseview/pulseview.mk new file +24 -0
@@ -0,0 +1,24 @@ +################################################################################ +# +# pulseview +# +################################################################################ + +# TODO Pulseview can be built and linked against Qt4 as well. + +# No https access on upstream git +PULSEVIEW_SITE = git://sigrok.org/pulseview +PULSEVIEW_VERSION = 19be0af16af83ca10f7ce69cb64f0b0c6f6a0d81 +PULSEVIEW_LICENSE = GPLv3+ +PULSEVIEW_LICENSE_FILES = COPYING +PULSEVIEW_DEPENDENCIES = libsigrok qt5base qt5svg boost +PULSEVIEW_CONF_OPTS = -DDISABLE_WERROR=y + +ifeq ($(BR2_PACKAGE_LIBSIGROKDECODE),y) +PULSEVIEW_CONF_OPTS += -DENABLE_DECODE=TRUE +PULSEVIEW_DEPENDENCIES += libsigrokdecode +else +PULSEVIEW_CONF_OPTS += -DENABLE_DECODE=FALSE +endif + +$(eval $(cmake-package))
Signature · 1 line
2.1.4
Thomas Petazzoni
AppliedPATCH v2 1/1 pulseview: new package
Dear Bartosz Golaszewski,
Quoted 6 lines · Bartosz Golaszewski
Signed-off-by Bartosz Golaszewski <[email protected]>---
Version 2:
- selectBR2_PACKAGE_QT5BASE_PNGin Config.in - this is needed for pulseview to properly display .png icons
- don't select libserial port
Thanks, applied, after fixing a small number of remaining issues:
[Thomas:
- Fix dependency on C++, it should use BR2_INSTALL_LIBSTDCPP and not BR2_TOOLCHAIN_BUILDROOT_CXX.
- Fix comment dependency, there should be an || between all the toolchain dependencies. Also fix the dependency on Qt5 for the comment, which was in the wrong way: the comment was displayed only when Qt5 was disabled.
- Use -DDISABLE_WERROR=TRUE instead of -DDISABLE_WERROR=y, since TRUE/FALSE are normally the accepted values for CMake options.]
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 1/1 pulseview: new package
2015-03-20 23:07 GMT+01:00 Thomas Petazzoni
<[email protected]>:
Quoted 22 lines
Dear Bartosz Golaszewski,
Quoted 6 lines · Bartosz Golaszewski
Signed-off-by Bartosz Golaszewski <[email protected]>---
Version 2:
- selectBR2_PACKAGE_QT5BASE_PNGin Config.in - this is needed for pulseview to properly display .png icons
- don't select libserial portThanks, applied, after fixing a small number of remaining issues:
[Thomas:
- Fix dependency on C++, it should useBR2_INSTALL_LIBSTDCPPand notBR2_TOOLCHAIN_BUILDROOT_CXX.
- Fix comment dependency, there should be an || between all the toolchain dependencies. Also fix the dependency on Qt5 for the comment, which was in the wrong way: the comment was displayed only when Qt5 was disabled.
- Use -DDISABLE_WERROR=TRUE instead of -DDISABLE_WERROR=y, since TRUE/FALSE are normally the accepted values for CMake options.]
Quoted 7 lines
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
Thanks a lot! Really appreciated!
Best regards,
Bartosz Golaszewski
PATCH v2 1/1 pulseview: new package
In reply to Bartosz GolaszewskiDear Bartosz Golaszewski,
Quoted 6 lines · Bartosz Golaszewski
Signed-off-by Bartosz Golaszewski <[email protected]>---
Version 2:
- selectBR2_PACKAGE_QT5BASE_PNGin Config.in - this is needed for pulseview to properly display .png icons
- don't select libserial port
This package is causing a number of build failures in our automated testing system. Can you investigate them?
See:
http://autobuild.buildroot.org/?reason=pulseview-19be0af16af83ca10f7ce69cb64f0b0c6f6a0d81
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 1/1 pulseview: new package
2015-04-06 23:43 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 10 lines
Dear Bartosz Golaszewski,
Quoted 6 lines · Bartosz Golaszewski
Signed-off-by Bartosz Golaszewski <[email protected]>---
Version 2:
- selectBR2_PACKAGE_QT5BASE_PNGin Config.in - this is needed for pulseview to properly display .png icons
- don't select libserial port
Quoted 2 lines
This package is causing a number of build failures in our automated testing system. Can you investigate them?
Sure thing, I'll get right to it.
Cheers,
Bart
PATCH v2 1/1 pulseview: new package
In reply to Thomas Petazzoni2015-04-06 23:43 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 10 lines
Dear Bartosz Golaszewski,
Quoted 6 lines · Bartosz Golaszewski
Signed-off-by Bartosz Golaszewski <[email protected]>---
Version 2:
- selectBR2_PACKAGE_QT5BASE_PNGin Config.in - this is needed for pulseview to properly display .png icons
- don't select libserial port
Quoted 2 lines
This package is causing a number of build failures in our automated testing system. Can you investigate them?
Hi Thomas,
is it somehow possible to see the full build log? Pulseview can't be built due to:
-- checking for module 'libsigrokcxx>=0.3.0'
-- package 'libsigrokcxx>=0.3.0' not found
I can't reproduce it with attached configs locally though and need to see what happens when building the C++ bindings.
Bart
PATCH v2 1/1 pulseview: new package
Dear Bartosz Golaszewski,
Quoted 8 lines · Bartosz Golaszewski
is it somehow possible to see the full build log? Pulseview can't be built due to:
-- checking for module 'libsigrokcxx>=0.3.0'
-- package 'libsigrokcxx>=0.3.0' not foundI can't reproduce it with attached configs locally though and need to see what happens when building the C++ bindings.
No, we don't save the full build logs as they are way too large. Did you try rebuilding exactly one of the failing configurations?
For example, building
http://autobuild.buildroot.org/results/a4e/a4ebb507798b94272bbad02456dace90472785a7/config ?
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 1/1 pulseview: new package
2015-04-08 16:29 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 10 lines
Dear Bartosz Golaszewski,
Quoted 6 lines · Bartosz Golaszewski
is it somehow possible to see the full build log? Pulseview can't be built due to:
-- checking for module 'libsigrokcxx>=0.3.0'
-- package 'libsigrokcxx>=0.3.0' not found
Quoted 8 lines
Quoted 2 lines
I can't reproduce it with attached configs locally though and need to see what happens when building the C++ bindings.
No, we don't save the full build logs as they are way too large. Did you try rebuilding exactly one of the failing configurations?
For example, building
http://autobuild.buildroot.org/results/a4e/a4ebb507798b94272bbad02456dace90472785a7/config ?
Yes, I tried several of them against current master branch. I'll try a few more, maybe it will fail on some less common arch.
Bart
PATCH v2 1/1 pulseview: new package
In reply to Thomas Petazzoni2015-04-08 16:29 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 10 lines
Dear Bartosz Golaszewski,
Quoted 6 lines · Bartosz Golaszewski
is it somehow possible to see the full build log? Pulseview can't be built due to:
-- checking for module 'libsigrokcxx>=0.3.0'
-- package 'libsigrokcxx>=0.3.0' not found
Quoted 8 lines
Quoted 2 lines
I can't reproduce it with attached configs locally though and need to see what happens when building the C++ bindings.
No, we don't save the full build logs as they are way too large. Did you try rebuilding exactly one of the failing configurations?
For example, building
http://autobuild.buildroot.org/results/a4e/a4ebb507798b94272bbad02456dace90472785a7/config ?
Hi Thomas,
still no success. The reason for pulseview failures is libsigrokcxx.so not being present on the target. Please consider applying the attached patch, which should let us know what the reason is for libsigrokcxx silent failures.
Best regards,
Bartosz Golaszewski
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-libsigrok-bail-out-if-C-bindings-are-not-built-corre.patch
Type: text/x-patch
Size: 1442 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20150408/524a75a1/attachment.bin>
PATCH v2 1/1 pulseview: new package
Dear Bartosz Golaszewski,
Quoted 4 lines · Bartosz Golaszewski
still no success. The reason for pulseview failures is libsigrokcxx.so not being present on the target. Please consider applying the attached patch, which should let us know what the reason is for libsigrokcxx silent failures.
I've reproduced the problem in the autobuilder directly, and the problem is fairly clear:
ESC[3m>>> libsigrok 380ee96fdfe0895ca0aa0b158d5c332ef08f8b3c ConfiguringESC[23m
mkdir -p /home/test/outputs/1f018c927c31e5302bfac85fd8e4ecb2fd5d38f3/output/build/libsigrok-380ee96fdfe0895ca0aa0b158d5c332ef08f8b3c/autostuff ESC[3m>>> libsigrok 380ee96fdfe0895ca0aa0b158d5c332ef08f8b3c AutoreconfiguringESC[23m
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'autostuff'.
libtoolize: copying file 'autostuff/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'autostuff'.
libtoolize: copying file 'autostuff/libtool.m4'
libtoolize: copying file 'autostuff/ltoptions.m4'
libtoolize: copying file 'autostuff/ltsugar.m4'
libtoolize: copying file 'autostuff/ltversion.m4'
libtoolize: copying file 'autostuff/lt~obsolete.m4'
configure.ac:42: installing 'autostuff/ar-lib'
configure.ac:42: installing 'autostuff/compile'
configure.ac:37: installing 'autostuff/config.guess'
configure.ac:37: installing 'autostuff/config.sub'
configure.ac:40: installing 'autostuff/install-sh'
configure.ac:40: installing 'autostuff/missing'
Makefile.am: installing './INSTALL'
Makefile.am: installing 'autostuff/depcomp'
parallel-tests: installing 'autostuff/test-driver'
ESC[3m>>> libsigrok 380ee96fdfe0895ca0aa0b158d5c332ef08f8b3c Patching libtoolESC[23m
[...]
Enabled language bindings:
- C++............................. no (Doxygen required)
So, generating the C++ bindings requires Doxygen. And Doxygen is not part of the mandatory Buildroot dependencies, and not packaged in Buildroot as a host package.
The reason why it works for you is because you have Doxygen installed on your machine. Several of the autobuilders run in a minimal chroot that has only the strict requirements of Buildroot installed, nothing else, specifically to detect such issues.
So, in the mean time, I've marked libsigrokcxx as broken, as well as pulseview. I believe the best solution is probably to create a host-doxygen package (or convince the libsigrok developers to not use something such as doxygen to generate C++ bindings). Can you look into this?
Thanks a lot!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 1/1 pulseview: new package
2015-04-08 21:12 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 2 lines
I've reproduced the problem in the autobuilder directly, and the problem is fairly clear:
Thanks for the investigation!
Quoted 4 lines
So, generating the C++ bindings requires Doxygen. And Doxygen is not part of the mandatory Buildroot dependencies, and not packaged in Buildroot as a host package.
Can we add an error message similar to those emitted when e.g. git or svn is missing. but for doxygen (only when libsigrokcxx is selected)?
Quoted 4 lines
The reason why it works for you is because you have Doxygen installed on your machine. Several of the autobuilders run in a minimal chroot that has only the strict requirements of Buildroot installed, nothing else, specifically to detect such issues.
Yes, this is the culprit.
Quoted 5 lines
So, in the mean time, I've marked libsigrokcxx as broken, as well as pulseview. I believe the best solution is probably to create a host-doxygen package (or convince the libsigrok developers to not use something such as doxygen to generate C++ bindings). Can you look into this?
C++ bindings are generated using xml files created by doxygen. I will take a look tomorrow, but it may be impossible to drop using doxygen without having to do a major overhaul of libsigrokcxx. I think that host-doxygen is a more feasible solution unless we can demand user to install doxygeb on the host machine.
Best regards,
Bartosz Golaszewski
PATCH v2 1/1 pulseview: new package
Hello,
Quoted 6 lines · Bartosz Golaszewski
2015-04-08 21:12 GMT+02:00 Thomas Petazzoni
<[email protected]>:Quoted 2 lines
I've reproduced the problem in the autobuilder directly, and the problem is fairly clear:
Thanks for the investigation!
No problem, you're welcome. Without having access to the autobuilders, it might be hard to reproduce some of the issues, so I'm definitely happy to reproduce them and provide more details as needed.
Quoted 6 lines
Quoted 3 lines
So, generating the C++ bindings requires Doxygen. And Doxygen is not part of the mandatory Buildroot dependencies, and not packaged in Buildroot as a host package.
Can we add an error message similar to those emitted when e.g. git or svn is missing. but for doxygen (only when libsigrokcxx is selected)?
Yes, we can, but it's a bit annoying. It means that building libsigrokcxx + pulseview will most likely not be tested much by the autobuilders.
Quoted 11 lines
Quoted 5 lines
So, in the mean time, I've marked libsigrokcxx as broken, as well as pulseview. I believe the best solution is probably to create a host-doxygen package (or convince the libsigrok developers to not use something such as doxygen to generate C++ bindings). Can you look into this?
C++ bindings are generated using xml files created by doxygen. I will take a look tomorrow, but it may be impossible to drop using doxygen without having to do a major overhaul of libsigrokcxx. I think that host-doxygen is a more feasible solution unless we can demand user to install doxygeb on the host machine.
Can you have a quick look at how annoying (or not) it would be to create a host-doxygen package? This would be the nicest solution, of course assuming it doesn't require millions of dependencies that would also have to be packaged in Buildroot.
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 1/1 pulseview: new package
2015-04-08 22:38 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 5 lines
Can you have a quick look at how annoying (or not) it would be to create a host-doxygen package? This would be the nicest solution, of course assuming it doesn't require millions of dependencies that would also have to be packaged in Buildroot.
Done, please see the series I've just sent.
Best regards,
Bartosz Golaszewski