Le 23/05/2020 à 15:24, cheng...@emindsoft.com.cn a écrit :
> From: Chen Gang <cheng...@emindsoft.com.cn>
> 
> Another DRM_IOCTL_* commands will be done later.
> 
> Signed-off-by: Chen Gang <cheng...@emindsoft.com.cn>
> ---
>  configure                  | 18 +++++++++++
>  linux-user/ioctls.h        |  3 ++
>  linux-user/syscall.c       | 61 ++++++++++++++++++++++++++++++++++++++
>  linux-user/syscall_defs.h  | 15 ++++++++++
>  linux-user/syscall_types.h | 11 +++++++
>  5 files changed, 108 insertions(+)
> 
> diff --git a/configure b/configure
> index e225a1e3ff..2c2c489d1e 100755
> --- a/configure
> +++ b/configure
> @@ -3912,6 +3912,24 @@ EOF
>      fi
>  fi
>  
> +#########################################
> +# libdrm check
> +
> +cat > $TMPC << EOF
> +#include <libdrm/drm.h>
> +#include <sys/ioctl.h>
> +int main(void)
> +{
> +        struct drm_version version;
> +        ioctl(-1, DRM_IOCTL_VERSION, &version);
> +        return 0;
> +}
> +EOF
> +if ! compile_prog "" ; then
> +    error_exit "libdrm check failed" \
> +        "Make sure to have the libdrm/drm.h installed."
> +fi

You break the build of qemu if libdrm is not available, not a good idea.

In fact, you should only check for the include with something like
"check_include libdrm/drm.h" and then define a HAVE_DRM_H to use it
around the new code:

#ifdef HAVE_DRM_H
#include <libdrm/drm.h>
#endif

...
#ifdef HAVE_DRM_H
static inline abi_long target_to_host_drmversion(...
...
#endif
...

#ifdef HAVE_DRM_H
IOCTL_SPECIAL(DRM_IOCTL_VERSION,...
...
#endif

Thanks,
Laurent

Reply via email to