diff options
author | Thomas Petazzoni <thomas.petazzoni@bootlin.com> | 2019-02-13 22:18:27 +0100 |
---|---|---|
committer | Laurent Vivier <laurent@vivier.eu> | 2019-02-14 11:46:30 +0100 |
commit | 96566d09aa105ee04cbc1c9539cf8a9a40e8e422 (patch) | |
tree | 2199dfeb6e86da16c26e40a50b498438d6d18c91 | |
parent | 9aed808e350b66914cc9b3a45357ec3cf295f405 (diff) |
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>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20190213211827.20300-1-thomas.petazzoni@bootlin.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
-rwxr-xr-x | configure | 19 |
1 files changed, 17 insertions, 2 deletions
@@ -4262,10 +4262,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 |