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


Usually both should work - loader w/o driver and driver w/o loader.

Imagine you're debugging some issues in libEGL - you don't want to
build driver X/Y/Z.
Additionally, distributions build latest loader and use it with DRI1
era drivers.
Ah, okay, building a new loader to test with dri1 drivers is a reasonable use
for this.

Having them build a driver, without an obvious reason is quite strange.

-Emil

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to