Bug 75751 - egl_gallium always requires libdrm
Summary: egl_gallium always requires libdrm
Status: RESOLVED MOVED
Alias: None
Product: Mesa
Classification: Unclassified
Component: EGL (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-04 12:35 UTC by Christian Prochaska
Modified: 2019-09-18 18:07 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christian Prochaska 2014-03-04 12:35:31 UTC
(git master 1a568e0f2b65e4e1e1d19a6dece3a792a33da825)

I'm building Mesa with the following configuration:

./autogen.sh --enable-gles2 --disable-dri --enable-gallium-egl --with-egl-platforms=fbdev --with-gallium-drivers=swrast

This configuration should not depend on libdrm, but when libdrm is missing, the configure script aborts:

configure: error: egl_gallium requires libdrm >= 2.4.38

I think the check for libdrm in configure.ac should also depend on 'enable_dri'.
Comment 1 Christian Prochaska 2014-03-04 13:35:55 UTC
When I temporarily disabled the libdrm check, Mesa built fine with this configuration and the 'es2gears' demo ran without problems.

But there's another case related to this which doesn't seem right:

With the same configuration, if libdrm is available, it gets linked to libGLESv2.so and egl_gallium.so, even though it should not be needed.

In my understanding, if '--disable-dri' is given, libdrm should neither be a requirement of the configure script nor should it get linked/used if it is available.
Comment 2 Chia-I Wu 2014-03-04 15:03:40 UTC
(In reply to comment #1)
> When I temporarily disabled the libdrm check, Mesa built fine with this
> configuration and the 'es2gears' demo ran without problems.
Right, libdrm should not be needed in your configuration.

> But there's another case related to this which doesn't seem right:
> 
> With the same configuration, if libdrm is available, it gets linked to
> libGLESv2.so and egl_gallium.so, even though it should not be needed.
It looks like the dependency is brought in by libloader (src/loader/).  It is unnecessary for the configuration, but is no harm.  It is potentially useful when egl_gallium can do accelerated rendering on fbdev.
> In my understanding, if '--disable-dri' is given, libdrm should neither be a
> requirement of the configure script nor should it get linked/used if it is
> available.
--disable-dri disables DRI drivers.

I will leave the bug open as I might not be able to fix it anytime soon.  Patches are welcomed.
Comment 3 Christian Prochaska 2014-03-04 15:28:15 UTC
> > In my understanding, if '--disable-dri' is given, libdrm should neither be a
> > requirement of the configure script nor should it get linked/used if it is
> > available.
>
> --disable-dri disables DRI drivers.
> 

Currently, it also disables the DRM winsys for egl_gallium with the i915 driver (see bug 75286).

So it seems there are different interpretations about what '--disable-dri' actually means. 'configure --help' says 'enable DRI modules'. Perhaps 'modules' should get renamed to 'drivers' then and perhaps the option renamed to '--enable-dri-drivers' to make it more clear?
Comment 4 Kenneth Graunke 2014-03-04 18:44:10 UTC
That's what --with-dri-drivers='' does.  So presumably --disable-dri does something else.
Comment 5 GitLab Migration User 2019-09-18 18:07:15 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/153.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.