hughsie / libgusb Goto Github PK
View Code? Open in Web Editor NEWGUsb is a GObject wrapper for libusb1
License: GNU Lesser General Public License v2.1
GUsb is a GObject wrapper for libusb1
License: GNU Lesser General Public License v2.1
HID descriptor size is uint16, so getting its size as buf[7]
returns incorrect results, if HID descriptor is large enough.
Line 1384 in 860108f
I noticed this when building libgusb when compiling against libusb v1.0.22.
ninja
[7/12] Compiling C object 'gusb/gusb@@gusb@sha/gusb-context.c.o'.
../gusb/gusb-context.c: In function ‘g_usb_context_set_property’:
../gusb/gusb-context.c:170:3: warning: ‘libusb_set_debug’ is deprecated: Use libusb_set_option instead [-Wdeprecated-declarations]
libusb_set_debug (priv->ctx, priv->debug_level);
^
In file included from ../gusb/gusb-context.c:31:0:
/root/build_dell-accessory-tool/stage/include/libusb-1.0/libusb.h:1300:18: note: declared here
void LIBUSB_CALL libusb_set_debug(libusb_context *ctx, int level);
^
../gusb/gusb-context.c: In function ‘g_usb_context_set_debug’:
../gusb/gusb-context.c:721:3: warning: ‘libusb_set_debug’ is deprecated: Use libusb_set_option instead [-Wdeprecated-declarations]
libusb_set_debug (priv->ctx, debug_level);
^
In file included from ../gusb/gusb-context.c:31:0:
/root/build_dell-accessory-tool/stage/include/libusb-1.0/libusb.h:1300:18: note: declared here
void LIBUSB_CALL libusb_set_debug(libusb_context *ctx, int level);
^
Hello,
Are there some errors in the symbols versioning in 0.3.3 (again)?
There are a bunch of new symbols that have the version 0.1.0
g_usb_endpoint_get_number@LIBGUSB_0.1.0
g_usb_endpoint_get_refresh@LIBGUSB_0.1.0
g_usb_endpoint_get_synch_address@LIBGUSB_0.1.0
g_usb_endpoint_get_type@LIBGUSB_0.1.0
g_usb_version_string@LIBGUSB_0.1.0
Hello,
Build libgusb on hurd-i386 fails in debian because the symbols are not properly exported
Looking at the meson.build file, it seems that the --version-script
is only passed on windows and linux.
Asking around a bit, it seems that this should be changed to exclude darwin
. hurd and (free)bsd are supporting this functionality as well
When running build of the package in openSUSE/Factory with Python 3.10 we hit the crash, because pkg_resources
package have been removed from the standard library and the functionality moved to the external packaging
package on PyPI.
This patch fixes the issue.
As of right now, only SourceError
is properly declared as an error in generated files (see e.g. valadoc). This is a big issue for language bindings, since it removes the ability to (nicely) selectively catch exceptions from GUsb.
If I should grab tarballs from GitHub going forward, that's totally fine. Just need to know what's expected.
(Aside: should distros continue shipping https://github.com/hughski/colorhug-client ? It's archived, and I don't know much about it)
Fixups introduced in cfaab3e made incompatible ABI changes as versions of some symbols have been changed from 0.1.0 (where they matched wildcard) to 0.2.5, 0.2.8 or 0.2.9.
This breaks the ABI for existing programs, for example see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=868340
I see two approaches to fix this:
Full changes in exported symbols between 0.2.9 and 0.2.10 releases:
diff --git a/debian/libgusb2.symbols b/debian/libgusb2.symbols
index 76c6aa0..1a796d5 100644
--- a/debian/libgusb2.symbols
+++ b/debian/libgusb2.symbols
@@ -5,18 +5,21 @@ libgusb.so.2 libgusb2 #MINVER#
LIBGUSB_0.2.2@LIBGUSB_0.2.2 0.2.2
LIBGUSB_0.2.4@LIBGUSB_0.2.4 0.2.4
LIBGUSB_0.2.5@LIBGUSB_0.2.5 0.2.5
+ LIBGUSB_0.2.8@LIBGUSB_0.2.8 0.2.10
+ LIBGUSB_0.2.9@LIBGUSB_0.2.9 0.2.10
g_usb_context_enumerate@LIBGUSB_0.2.2 0.2.2
g_usb_context_error_quark@LIBGUSB_0.1.0 0.1.0
g_usb_context_find_by_bus_address@LIBGUSB_0.2.2 0.2.2
g_usb_context_find_by_platform_id@LIBGUSB_0.2.4 0.2.4
g_usb_context_find_by_vid_pid@LIBGUSB_0.2.2 0.2.2
g_usb_context_get_devices@LIBGUSB_0.2.2 0.2.2
- g_usb_context_get_main_context@LIBGUSB_0.1.0 0.1.0
+ g_usb_context_get_main_context@LIBGUSB_0.2.5 0.2.10
g_usb_context_get_source@LIBGUSB_0.1.0 0.1.0
g_usb_context_get_type@LIBGUSB_0.1.0 0.1.0
g_usb_context_new@LIBGUSB_0.1.0 0.1.0
g_usb_context_set_debug@LIBGUSB_0.1.0 0.1.0
- g_usb_context_set_main_context@LIBGUSB_0.1.0 0.1.0
+ g_usb_context_set_main_context@LIBGUSB_0.2.5 0.2.10
+ g_usb_context_wait_for_replug@LIBGUSB_0.2.9 0.2.10
g_usb_device_bulk_transfer@LIBGUSB_0.1.0 0.1.0
g_usb_device_bulk_transfer_async@LIBGUSB_0.1.0 0.1.0
g_usb_device_bulk_transfer_finish@LIBGUSB_0.1.0 0.1.0
@@ -34,8 +37,8 @@ libgusb.so.2 libgusb2 #MINVER#
g_usb_device_get_device_class@LIBGUSB_0.1.7 0.1.7
g_usb_device_get_device_protocol@LIBGUSB_0.2.4 0.2.4
g_usb_device_get_device_subclass@LIBGUSB_0.2.4 0.2.4
- g_usb_device_get_interface@LIBGUSB_0.1.0 0.2.8
- g_usb_device_get_interfaces@LIBGUSB_0.1.0 0.2.8
+ g_usb_device_get_interface@LIBGUSB_0.2.8 0.2.10
+ g_usb_device_get_interfaces@LIBGUSB_0.2.8 0.2.10
g_usb_device_get_manufacturer_index@LIBGUSB_0.1.0 0.1.0
g_usb_device_get_parent@LIBGUSB_0.2.4 0.2.4
g_usb_device_get_pid@LIBGUSB_0.1.0 0.1.0
@@ -43,7 +46,7 @@ libgusb.so.2 libgusb2 #MINVER#
g_usb_device_get_platform_id@LIBGUSB_0.1.1 0.1.1
g_usb_device_get_port_number@LIBGUSB_0.2.4 0.2.4
g_usb_device_get_product_index@LIBGUSB_0.1.0 0.1.0
- g_usb_device_get_release@LIBGUSB_0.1.0 0.2.8
+ g_usb_device_get_release@LIBGUSB_0.2.8 0.2.10
g_usb_device_get_serial_number_index@LIBGUSB_0.1.0 0.1.0
g_usb_device_get_string_descriptor@LIBGUSB_0.1.0 0.1.0
g_usb_device_get_type@LIBGUSB_0.1.0 0.1.0
@@ -62,16 +65,16 @@ libgusb.so.2 libgusb2 #MINVER#
g_usb_device_release_interface@LIBGUSB_0.1.0 0.1.0
g_usb_device_reset@LIBGUSB_0.1.0 0.1.0
g_usb_device_set_configuration@LIBGUSB_0.1.0 0.1.0
- g_usb_device_set_interface_alt@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_alternate@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_class@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_extra@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_index@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_kind@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_length@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_number@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_protocol@LIBGUSB_0.1.0 0.2.8
- g_usb_interface_get_subclass@LIBGUSB_0.1.0 0.2.8
+ g_usb_device_set_interface_alt@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_alternate@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_class@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_extra@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_index@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_kind@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_length@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_number@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_protocol@LIBGUSB_0.2.8 0.2.10
+ g_usb_interface_get_subclass@LIBGUSB_0.2.8 0.2.10
g_usb_interface_get_type@LIBGUSB_0.1.0 0.2.8
g_usb_source_error_quark@LIBGUSB_0.1.0 0.1.0
g_usb_source_set_callback@LIBGUSB_0.1.0 0.1.0
Thanks for creating libgusb
. I'm using it as an example for binding a gobject
-based library in my soon-to-be-published book on Vala. I've noticed that it doesn't compile on macOS though. The offending part is the linker not understanding --version-script
:
% ninja mickey@helios
[15/21] Linking target gusb/libgusb.2.dylib.
FAILED: gusb/libgusb.2.dylib
ccache cc -o gusb/libgusb.2.dylib 'gusb/gusb@sha/gusb-context.c.o' 'gusb/gusb@sha/gusb-device.c.o' 'gusb/gusb@sha/gusb-device-list.c.o' 'gusb/gusb@sha/gusb-interface.c.o' 'gusb/gusb@sha/gusb-source.c.o' 'gusb/gusb@sha/gusb-util.c.o' -Wl,-headerpad_max_install_names -shared -install_name @rpath/libgusb.2.dylib -Wl,--version-script,/Users/mickey/Documents/late/misc/libgusb/gusb/libgusb.ver -L/usr/local/Cellar/glib/2.54.3/lib -L/usr/local/opt/gettext/lib -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl -Wl,-framework -Wl,CoreFoundation -L/usr/local/Cellar/libusb/1.0.21/lib -lusb-1.0
ld: unknown option: --version-script
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[16/21] Linking target gusb/gusb-self-test.
ninja: build stopped: subcommand failed.
Is this endif
safe? Shouldn't it be after the vapi
if-block?
Line 180 in a6f0cba
The libgusb_girtarget
is not set if introspection
is not enabled but vapi
is
Using a Yocto build with 636efc0 where this is included:
Line 125 in 636efc0
I get the following error (snipped away some dirs):
Build started at 2020-09-17T16:05:20.241926
Main binary: /<snip>/usr/bin/nativepython3
Build Options: -Ddocs=false -Dintrospection=false -Dprefix=/usr -Dbindir=bin -Ddatadir=share -Dincludedir=include -Dinfodir=share/info -Dlibdir=lib -Dlibexecdir=libexec -Dlocalstatedir=/var -Dmandir=share/man -Dsbindir=sbin -Dsharedstate
dir=/com -Dsysconfdir=/etc -Dbuildtype=plain -Dwrap_mode=nodownload '--cross-file //<snip>/meson.cross'
Python system: Linux
The Meson build system
Version: 0.53.2
Source dir: /<snip>/git
Build dir: /<snip>/build
Build type: cross build
Project name: libgusb
Project version: 0.3.1
No CFLAGS in the environment, not changing global flags.
No LDFLAGS in the environment, not changing global flags.
No CPPFLAGS in the environment, not changing global flags.
Sanity testing C compiler: gcc
Is cross compiler: False.
Sanity check compiler command line: gcc //<snip>/meson-private/sanitycheckc.c -o /<snip>/meson-private/sanitycheckc.exe -pipe -D_FILE_OFFSET_BITS=64
...
Compiler stderr:
Run-time dependency gio-2.0 found: YES 2.62.4
Pkg-config binary for MachineChoice.HOST is cached.
Determining dependency 'libusb-1.0' with pkg-config executable '/<snip>/usr/bin/pkg-config'
PKG_CONFIG_PATH: ...
Run-time dependency libusb-1.0 found: YES 1.0.22
Configuring config.h using configuration
Configuring gusb-version.h using configuration
gusb/meson.build:128:6: ERROR: Unknown variable "libgusb_girtarget".```
Updating to 0.4.0 from 0.3.10 in freedesktop-sdk results in a failure to build the documentation:
ERROR: Error in gtkdoc helper script:
ERROR: ['/usr/bin/gtkdoc-mkhtml', '--path=/buildstream/freedesktop-sdk/components/libgusb.bst/docs/api:/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/docs/api', 'gusb', '../gusb-docs.sgml'] failed with status 6
warning: failed to load external entity "../xml/gusb-source.xml"
../gusb-docs.sgml:50: element include: XInclude error : could not load ../xml/gusb-source.xml, and no fallback was found
The following warning can be seen higher in the output: warning: Section gusb-source is not defined in the gusb-sections.txt file
, though this ought to be generated as part of the build process.
I've done a bisect and the commit our build system appears to be unhappy with is 91a213f.
$ env DESTDIR="/buildstream-install" ninja -C _builddir install
ninja: Entering directory `_builddir'
[0/1] Installing files.
Installing gusb/libgusb.so.2.0.10 to /buildstream-install/usr/lib/x86_64-linux-gnu
Installing gusb/GUsb-1.0.gir to /buildstream-install/usr/share/gir-1.0
Installing gusb/GUsb-1.0.typelib to /buildstream-install/usr/lib/x86_64-linux-gnu/girepository-1.0
Installing gusb/gusb.vapi to /buildstream-install/usr/share/vala/vapi
Installing tools/gusbcmd to /buildstream-install/usr/bin
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb.h to /buildstream-install/usr/include/gusb-1/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/gusb/gusb-version.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context-private.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device-event.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device-private.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device-list.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-interface.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-interface-private.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-bos-descriptor.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-bos-descriptor-private.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-endpoint.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-endpoint-private.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-source.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-util.h to /buildstream-install/usr/include/gusb-1/gusb/
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/meson-private/gusb.pc to /buildstream-install/usr/lib/x86_64-linux-gnu/pkgconfig
Installing /buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/meson-private/gusb.deps to /buildstream-install/usr/share/vala/vapi
Installing symlink pointing to libgusb.so.2.0.10 to /buildstream-install/usr/lib/x86_64-linux-gnu/libgusb.so.2
Installing symlink pointing to libgusb.so.2 to /buildstream-install/usr/lib/x86_64-linux-gnu/libgusb.so
Running custom install script '/usr/bin/meson --internal gtkdoc --sourcedir=/buildstream/freedesktop-sdk/components/libgusb.bst --builddir=/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir --subdir=do
cs/api --headerdirs=/buildstream/freedesktop-sdk/components/libgusb.bst/gusb@@/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/gusb --mainfile=gusb-docs.sgml --modulename=gusb --moduleversion= --mode
=auto --gtkdoc-scan=/usr/bin/gtkdoc-scan --gtkdoc-scangobj=/usr/bin/gtkdoc-scangobj --gtkdoc-mkdb=/usr/bin/gtkdoc-mkdb --gtkdoc-mkhtml=/usr/bin/gtkdoc-mkhtml --gtkdoc-fixxref=/usr/bin/gtkdoc-fixxref --htmlargs= -
-scanargs= --scanobjsargs= --gobjects-types-file= --fixxrefargs= --mkdbargs= --html-assets= --content-files= --expand-content-files= --ignore-headers= --installdir= --cc=cc --ld=cc --cflags=-O2 -g -pipe -Wp,-D_FO
RTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -Waggregate-retur
n -Wunused -Warray-bounds -Wcast-align -Wclobbered -Wdeclaration-after-statement -Wempty-body -Wextra -Wformat=2 -Wformat-nonliteral -Wformat-security -Wformat-signedness -Wignored-qualifiers -Wimplicit-function-
declaration -Winit-self -Wmissing-declarations -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wmissing-parameter-type -Wmissing-prototypes -Wnested-externs -Wno-discarded-qualifiers -Wno-mi
ssing-field-initializers -Wno-strict-aliasing -Wno-suggest-attribute=format -Wno-unused-parameter -Wold-style-definition -Woverride-init -Wpointer-arith -Wreturn-type -Wshadow -Wsign-compare -Wstrict-aliasing -Ws
trict-prototypes -Wswitch-default -Wswitch-enum -Wtype-limits -Wundef -Wuninitialized -Wunused-but-set-variable -Wwrite-strings -fstack-protector-strong -DGUSB_COMPILATION --ldflags=-Wl,-z,relro,-z,now -Wl,--as-n
eeded -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-fra
me-pointer'
--- stdout ---
Building documentation for gusb
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-source.h:0: warning: partial declaration (enum) : typedef enum { G_USB_SOURCE_ERROR_INTERNAL } GUsbSourceError;
G_DEPRECATED_FOR(g_usb_context_error_quark)
GQuark
g_usb_source_error_quark(void);
G_DEPRECATED
void
g_usb_source_set_callback(GUsbSource *self, GSourceFunc func, gpointer data, GDestroyNotify notify);
G_END_DECLS
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-source.c:10: warning: Section gusb-source is not defined in the gusb-sections.txt file.
unknown:0: warning: Field descriptions for struct GUsbContextClass are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context.h:36: warning: Value descriptions for GUsbContextFlags are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context.c:580: warning: Parameter description for g_usb_context_set_main_context::main_ctx is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context.c:359: warning: Parameter description for g_usb_context_load::context is not used from source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context.c:359: warning: Parameter description for g_usb_context_load::self is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context.c:405: warning: Parameter description for g_usb_context_save::context is not used from source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-context.c:405: warning: Parameter description for g_usb_context_save::self is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h:25: warning: Value descriptions for GUsbDeviceDirection are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h:35: warning: Value descriptions for GUsbDeviceRequestType are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h:47: warning: Value descriptions for GUsbDeviceRecipient are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h:59: warning: Value descriptions for GUsbDeviceError are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h:78: warning: Value descriptions for GUsbDeviceClaimInterfaceFlags are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h:89: warning: Value descriptions for GUsbDeviceClassCode are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.h:118: warning: Value descriptions for GUsbDeviceLangid are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1365: warning: Parameter description for g_usb_device_get_string_descriptor::self is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1523: warning: Parameter description for g_usb_device_get_string_descriptor_bytes::self is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1439: warning: Parameter description for g_usb_device_get_string_descriptor_bytes_full::self is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1565: warning: Parameter description for g_usb_device_control_transfer::direction is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1565: warning: Parameter description for g_usb_device_control_transfer::recipient is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1915: warning: Parameter description for g_usb_device_control_transfer_async::direction is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1915: warning: Parameter description for g_usb_device_control_transfer_async::request_type is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1915: warning: Parameter description for g_usb_device_control_transfer_async::recipient is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1915: warning: Parameter description for g_usb_device_control_transfer_async::request is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1915: warning: Parameter description for g_usb_device_control_transfer_async::value is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/gusb/gusb-device.c:1915: warning: Parameter description for g_usb_device_control_transfer_async::idx is missing in source code comment block.
unknown:0: warning: Field descriptions for struct GUsbDeviceListClass are missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/gusb/gusb-version.h:46: warning: Parameter description for G_USB_CHECK_VERSION::major is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/gusb/gusb-version.h:46: warning: Parameter description for G_USB_CHECK_VERSION::minor is missing in source code comment block.
/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/gusb/gusb-version.h:46: warning: Parameter description for G_USB_CHECK_VERSION::micro is missing in source code comment block.
./gusb-unused.txt:1: warning: 3 unused declarations. They should be added to gusb-sections.txt in the appropriate place.
ERROR: Error in gtkdoc helper script:
ERROR: ['/usr/bin/gtkdoc-mkhtml', '--path=/buildstream/freedesktop-sdk/components/libgusb.bst/docs/api:/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/docs/api', 'gusb', '../gusb-docs.sgml'] failed with status 6
warning: failed to load external entity "../xml/gusb-source.xml"
../gusb-docs.sgml:50: element include: XInclude error : could not load ../xml/gusb-source.xml, and no fallback was found
--- stderr ---
FAILED: install script '/usr/bin/meson --internal gtkdoc --sourcedir=/buildstream/freedesktop-sdk/components/libgusb.bst --builddir=/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir --subdir=docs/api --headerdirs=/buildstream/freedesktop-sdk/components/libgusb.bst/gusb@@/buildstream/freedesktop-sdk/components/libgusb.bst/_builddir/gusb --mainfile=gusb-docs.sgml --modulename=gusb --moduleversion= --mode=auto --gtkdoc-scan=/usr/bin/gtkdoc-scan --gtkdoc-scangobj=/usr/bin/gtkdoc-scangobj --gtkdoc-mkdb=/usr/bin/gtkdoc-mkdb --gtkdoc-mkhtml=/usr/bin/gtkdoc-mkhtml --gtkdoc-fixxref=/usr/bin/gtkdoc-fixxref --htmlargs= --scanargs= --scanobjsargs= --gobjects-types-file= --fixxrefargs= --mkdbargs= --html-assets= --content-files= --expand-content-files= --ignore-headers= --installdir= --cc=cc --ld=cc --cflags=-O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -Waggregate-return -Wunused -Warray-bounds -Wcast-align -Wclobbered -Wdeclaration-after-statement -Wempty-body -Wextra -Wformat=2 -Wformat-nonliteral -Wformat-security -Wformat-signedness -Wignored-qualifiers -Wimplicit-function-declaration -Winit-self -Wmissing-declarations -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wmissing-parameter-type -Wmissing-prototypes -Wnested-externs -Wno-discarded-qualifiers -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-suggest-attribute=format -Wno-unused-parameter -Wold-style-definition -Woverride-init -Wpointer-arith -Wreturn-type -Wshadow -Wsign-compare -Wstrict-aliasing -Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wtype-limits -Wundef -Wuninitialized -Wunused-but-set-variable -Wwrite-strings -fstack-protector-strong -DGUSB_COMPILATION --ldflags=-Wl,-z,relro,-z,now -Wl,--as-needed -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer' exit code 1, stopped
FAILED: meson-internal__install
/usr/bin/meson install --no-rebuild
ninja: build stopped: subcommand failed.
The fwupd
daemon's GUsbEventThread
polls 1000 times per second, which is a measurable battery drain.
fwupd 1.3.6
libgusb 0.3.2
Before the move to meson (libgusb<0.3.0) we had an option to enable/disable to use of gobject-introspection and pulling in it's dependency. It would be nice to have that back for the meson build as well, like e.g. it exists in gcab.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.