On Mon, 17 Dec 2018 at 22:17, Dylan Baker <dy...@pnwbakers.com> wrote: > > Quoting Tobias Klausmann (2018-12-17 14:05:13) > > > > On 17.12.18 20:33, Dylan Baker wrote: > > > Quoting Emil Velikov (2018-12-17 11:10:00) > > >> On Fri, 14 Dec 2018 at 17:57, Dylan Baker <dy...@pnwbakers.com> wrote: > > >>> Quoting Emil Velikov (2018-12-13 08:15:57) > > >>>> From: Emil Velikov <emil.veli...@collabora.com> > > >>>> > > >>>> Reasonably often people will want to build the loader w/o any drivers. > > >>>> Be that debugging an issue in the former, distribution bundle or other. > > >>>> > > >>>> Currently there is an artificial restriction preventing people to build > > >>>> a config like the following: > > >>>> > > >>>> meson build/ -Dglx=dri -Ddri-drivers= -Dvulkan-drivers= > > >>>> -Dgallium-drivers= > > >>>> > > >>>> Cc: Dylan Baker <dy...@pnwbakers.com> > > >>>> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> > > >>>> --- > > >>>> This is a WIP, since it's obviously incomplete/wrong. Input or fix > > >>>> would be appreciated. > > >>>> > > >>>> Thanks > > >>>> Emil > > >>>> --- > > >>>> meson.build | 12 +----------- > > >>>> 1 file changed, 1 insertion(+), 11 deletions(-) > > >>>> > > >>>> diff --git a/meson.build b/meson.build > > >>>> index 2aa2794f971..e1d6561c1a3 100644 > > >>>> --- a/meson.build > > >>>> +++ b/meson.build > > >>>> @@ -285,14 +285,6 @@ if with_glx == 'dri' > > >>>> endif > > >>>> endif > > >>>> > > >>>> -if not (with_dri or with_gallium or with_glx == 'xlib' or with_glx == > > >>>> 'gallium-xlib') > > >>>> - with_gles1 = false > > >>>> - with_gles2 = false > > >>>> - with_opengl = false > > >>>> - with_any_opengl = false > > >>>> - with_shared_glapi = false > > >>>> -endif > > >>>> - > > >>>> _gbm = get_option('gbm') > > >>>> if _gbm == 'auto' > > >>>> with_gbm = system_has_kms_drm and with_dri > > >>>> @@ -352,9 +344,7 @@ if with_glx != 'disabled' > > >>>> error('xlib conflicts with any dri driver') > > >>>> endif > > >>>> elif with_glx == 'dri' > > >>>> - if not with_dri > > >>>> - error('dri based GLX requires at least one DRI driver') > > >>>> - elif not with_shared_glapi > > >>>> + if not with_shared_glapi > > >>>> error('dri based GLX requires shared-glapi') > > >>>> endif > > >>>> endif > > >>>> -- > > >>>> 2.19.2 > > >>>> > > >>> I'll have to think about this some more, I'm still not exactly sure why > > >>> you'd > > >>> want to build the loader without a driver (although I could see why you > > >>> might > > >>> want the driver without the loader). > > >>> > > Building both separate breaks away the dependency for llvm/clang while > > building the loader package (mesa), thus eliminating the bottleneck, the > > long build time of llvm/clang, in a complete build cycle of a whole > > distribution rebuild for the packages "waiting" on mesa to complete. The > > mesa-drivers package can wait for llvm/clang in the meantime. Right now > > i have solved this by building the classic swrast with mesa and > > instantly throwing it away after the build is finished. > > > > Btw: Building the drivers without a windowing system would be nice as > > well, this applies to the above use case where the -drivers package does > > not need a windowing system, as it is contained in the other package. > > > > Greetings > > > > Tobias > > This sounds like asking mesa to carry a lot of complexity so that distros can > build mesa as three separate packages. I'm really not thrilled about adding > such a feature unless someone wants to step up and be the maintainer of that > build mode and ensure it works. All of this complexity is technical debt that > the project is assuming, it makes the build definitions harder to read and > modify, and unless there's someone who actually uses such a mode (ie, not a > core > developer, since no one has asked for this), it's just going to get broken. We > already have the most complicated build system I have ever seen (excluding > Linux > and the core OS of FreeBSD) with more knobs and switches for micro tuning, let > alone all of the different combinations of drivers, platforms, window systems, > and APIs. > Testing is already covered in the Travis configs that I've sent out ;-) Fwiw autotools has allowed such flexible building for a while, so it will be great if we had an equivalent.
-Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev