[Mesa-dev] mesa: don't install GLX files if GLX is not built

Emil Velikov emil.l.velikov at gmail.com
Thu Jul 7 14:57:43 UTC 2016


On 7 July 2016 at 15:14, Akihiko Odaki <akihiko.odaki.4i at stu.hosei.ac.jp> wrote:
> Hi Emil,
>
> On 2016-07-07 19:11, Emil Velikov wrote:
>>
>> [Adding back mesa-dev]
>
>
> Sorry, I mistakenly clicked "Reply" instead of "Reply All".
>
>> Hi Akihiko Odaki
>>
>> Before anything, let me say a couple of things about DRI.
>> The DRI interface is an abstraction layer where you have winsys
>> (GLX/EGL/other) agnostic DRI module and different DRI loaders, each
>> implementing different winsys' API. Thus DRI modules do/should not
>> have any GLX/EGL/other dependencies.
>>
>> As the location suggests, the file is not meant for developers using
>> GL/GLX/..., but it's an internal interface. This way loaders/modules
>> living outside of the mesa tree can reuse it. One such example is the
>> loader is xserver.
>
>
> That's what I wanted to know. Thank you for answering.
>
>> On 7 July 2016 at 00:38, Akihiko Odaki <akihiko.odaki.4i at stu.hosei.ac.jp>
>> wrote:
>>>
>>> I forgot to note that other GL header files are included by the internal
>>> DRI
>>> files.
>>
>> The dri_interface.h file includes only drm.h afaict, due to historical
>> reasons. For ease of use (development) the DRI modules can reuse
>> numerical values from GL/GLES.
>
>
> They seems. They include GL/gl.h, which provide those types.
>
>>> But they are not necessary when developing softwares and some of them
>>> don't work as expected if the installation lacks GLX.
>>>
>> Yes, as mentioned above - DRI is internal and not something meant for
>> GL/GLES/EGL/... developers.
>>
>>>>
>>>> I assumed the header files in GL/internal are not supposed to be
>>>> included by users directly, but they can be included by other public
>>>> header files. If so, GL/internal/dri_interface.h is not necessary to be
>>>> installed since it is not included by such headers.
>>>>
>>>> But, after recieving your email I investigated again to find that
>>>> GL/internal/dri_interface.h is not included even if GLX is enabled. Now
>>>> I'm not sure what is the expected usage of GL/internal/dri_interface.h.
>>>> Should it be installed anyway?
>>>>
>> Yes it should. Unfortunately one cannot know whether the
>> header/interface will be used, during mesa build/install stage.
>> If you know it's not needed, feel free to nuke it.
>>
>> Emil
>>
>
> I see. Now I also think the hunk to patch src/mesa/drivers/dri/Makefile.am
> should be removed.
>
> Sorry for bothering and thank you for answering my questions.
>
There's nothing to apologise for, one cannot expect that you'll know this :-)
I'll drop the hunk and push the patch in a second.

Thanks again,
Emil


More information about the mesa-dev mailing list