mirror of https://gitee.com/openkylin/qemu.git
usb: Support compilation without poll.h
This is a hack to support compilation with Mingw-w64 which provides a libusb-1.0 package, but no poll.h. Signed-off-by: Stefan Weil <sw@weilnetz.de> Message-id: 1458630800-10088-1-git-send-email-sw@weilnetz.de Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
1f66fe5778
commit
a277c3e094
|
@ -34,7 +34,9 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
|
#ifndef CONFIG_WIN32
|
||||||
#include <poll.h>
|
#include <poll.h>
|
||||||
|
#endif
|
||||||
#include <libusb.h>
|
#include <libusb.h>
|
||||||
|
|
||||||
#include "qapi/error.h"
|
#include "qapi/error.h"
|
||||||
|
@ -204,6 +206,8 @@ static const char *err_names[] = {
|
||||||
static libusb_context *ctx;
|
static libusb_context *ctx;
|
||||||
static uint32_t loglevel;
|
static uint32_t loglevel;
|
||||||
|
|
||||||
|
#ifndef CONFIG_WIN32
|
||||||
|
|
||||||
static void usb_host_handle_fd(void *opaque)
|
static void usb_host_handle_fd(void *opaque)
|
||||||
{
|
{
|
||||||
struct timeval tv = { 0, 0 };
|
struct timeval tv = { 0, 0 };
|
||||||
|
@ -223,9 +227,13 @@ static void usb_host_del_fd(int fd, void *user_data)
|
||||||
qemu_set_fd_handler(fd, NULL, NULL, NULL);
|
qemu_set_fd_handler(fd, NULL, NULL, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif /* !CONFIG_WIN32 */
|
||||||
|
|
||||||
static int usb_host_init(void)
|
static int usb_host_init(void)
|
||||||
{
|
{
|
||||||
|
#ifndef CONFIG_WIN32
|
||||||
const struct libusb_pollfd **poll;
|
const struct libusb_pollfd **poll;
|
||||||
|
#endif
|
||||||
int i, rc;
|
int i, rc;
|
||||||
|
|
||||||
if (ctx) {
|
if (ctx) {
|
||||||
|
@ -236,7 +244,9 @@ static int usb_host_init(void)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
libusb_set_debug(ctx, loglevel);
|
libusb_set_debug(ctx, loglevel);
|
||||||
|
#ifdef CONFIG_WIN32
|
||||||
|
/* FIXME: add support for Windows. */
|
||||||
|
#else
|
||||||
libusb_set_pollfd_notifiers(ctx, usb_host_add_fd,
|
libusb_set_pollfd_notifiers(ctx, usb_host_add_fd,
|
||||||
usb_host_del_fd,
|
usb_host_del_fd,
|
||||||
ctx);
|
ctx);
|
||||||
|
@ -247,6 +257,7 @@ static int usb_host_init(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
free(poll);
|
free(poll);
|
||||||
|
#endif
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue