| From 9672cccd64c446369b5649fe23d575917638be46 Mon Sep 17 00:00:00 2001 |
| From: Thomas Petazzoni <thomas.petazzoni@bootlin.com> |
| Date: Tue, 5 Feb 2019 15:07:43 +0100 |
| Subject: [PATCH] configure: improve usbfs check |
| |
| The current check to test if usbfs support should be compiled or not |
| solely relies on the presence of <linux/usbdevice_fs.h>, without |
| actually checking that all definition used by Qemu are provided by |
| this header file. |
| |
| With sufficiently old kernel headers, <linux/usbdevice_fs.h> may be |
| present, but some of the definitions needed by Qemu may not be |
| available. |
| |
| This commit improves the check by building a small program that |
| actually tests whether the necessary definitions are available. |
| |
| In addition, it fixes a bug where have_usbfs was set to "yes" |
| regardless of the result of the test. |
| |
| Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> |
| --- |
| configure | 19 +++++++++++++++++-- |
| 1 file changed, 17 insertions(+), 2 deletions(-) |
| |
| diff --git a/configure b/configure |
| index 3d89870d99..799c8e3b08 100755 |
| --- a/configure |
| +++ b/configure |
| @@ -4266,10 +4266,25 @@ fi |
| # check for usbfs |
| have_usbfs=no |
| if test "$linux_user" = "yes"; then |
| - if check_include linux/usbdevice_fs.h; then |
| + cat > $TMPC << EOF |
| +#include <linux/usbdevice_fs.h> |
| + |
| +#ifndef USBDEVFS_GET_CAPABILITIES |
| +#error "USBDEVFS_GET_CAPABILITIES undefined" |
| +#endif |
| + |
| +#ifndef USBDEVFS_DISCONNECT_CLAIM |
| +#error "USBDEVFS_DISCONNECT_CLAIM undefined" |
| +#endif |
| + |
| +int main(void) |
| +{ |
| + return 0; |
| +} |
| +EOF |
| + if compile_prog "" ""; then |
| have_usbfs=yes |
| fi |
| - have_usbfs=yes |
| fi |
| |
| # check for fallocate |
| -- |
| 2.20.1 |
| |