[Mesa-dev] [PATCH 1/2] configure: enable the gallium loader only when needed

Ausmus, James james.ausmus at intel.com
Mon Sep 8 16:56:19 PDT 2014


Thanks Emil - works great!

Tested-by: James Ausmus <james.ausmus at intel.com>

On Mon, Sep 8, 2014 at 3:52 PM, Emil Velikov <emil.l.velikov at gmail.com>
wrote:

> With the gallium megadrivers we've converted most ST to optionally
> use either statically linked in or shared pipe-drivers.
>
> The hardcoded switch forgot to conditionally enable the build of the
> shared pipe-drivers which resulted in them being constantly build.
>
> Cc: "10.3" <mesa-stable at lists.freedesktop.org>
> Cc: James Ausmus <james.ausmus at intel.com>
> Reported-by: James Ausmus <james.ausmus at intel.com>
> Bugzilla: https://code.google.com/p/chromium/issues/detail?id=412089
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
>  configure.ac | 26 ++++++++++++++++----------
>  1 file changed, 16 insertions(+), 10 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 050bcaf..8ccb803 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -820,6 +820,11 @@ fi
>
>  AM_CONDITIONAL(HAVE_SHARED_GLAPI, test "x$enable_shared_glapi" = xyes)
>
> +# Build the pipe-drivers as separate libraries/modules.
> +# Do not touch this unless you know what you are doing.
> +# XXX: Expose via configure option ?
> +enable_shared_pipe_drivers=no
> +
>  dnl
>  dnl Driver specific build directories
>  dnl
> @@ -840,7 +845,7 @@ esac
>  if test "x$enable_dri" = xyes; then
>      GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/dri"
>      GALLIUM_STATE_TRACKERS_DIRS="dri $GALLIUM_STATE_TRACKERS_DIRS"
> -    enable_gallium_loader=yes
> +    enable_gallium_loader="$enable_shared_pipe_drivers"
>  fi
>
>  if test "x$enable_gallium_osmesa" = xyes; then
> @@ -1313,7 +1318,8 @@ if test "x$enable_gallium_egl" = xyes; then
>
>      GALLIUM_STATE_TRACKERS_DIRS="egl $GALLIUM_STATE_TRACKERS_DIRS"
>      GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS egl-static"
> -#    enable_gallium_loader=yes
> +# XXX: Uncomment once converted to use static/shared pipe-drivers
> +#    enable_gallium_loader=$enable_shared_pipe_drivers
>  fi
>  AM_CONDITIONAL(HAVE_GALLIUM_EGL, test "x$enable_gallium_egl" = xyes)
>
> @@ -1342,7 +1348,7 @@ if test "x$enable_gallium_gbm" = xyes; then
>
>      GALLIUM_STATE_TRACKERS_DIRS="gbm $GALLIUM_STATE_TRACKERS_DIRS"
>      GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS gbm"
> -    enable_gallium_loader=yes
> +    enable_gallium_loader=$enable_shared_pipe_drivers
>  fi
>  AM_CONDITIONAL(HAVE_GALLIUM_GBM, test "x$enable_gallium_gbm" = xyes)
>
> @@ -1359,7 +1365,7 @@ if test "x$enable_xa" = xyes; then
>            Example: ./configure --enable-xa
> --with-gallium-drivers=svga...])
>      fi
>      GALLIUM_STATE_TRACKERS_DIRS="xa $GALLIUM_STATE_TRACKERS_DIRS"
> -    enable_gallium_loader=yes
> +    enable_gallium_loader=$enable_shared_pipe_drivers
>  fi
>  AM_CONDITIONAL(HAVE_ST_XA, test "x$enable_xa" = xyes)
>
> @@ -1407,7 +1413,7 @@ fi
>  if test "x$enable_xvmc" = xyes; then
>      PKG_CHECK_MODULES([XVMC], [xvmc >= $XVMC_REQUIRED x11-xcb xcb-dri2 >=
> $XCBDRI2_REQUIRED])
>      GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS xvmc"
> -    enable_gallium_loader=yes
> +    enable_gallium_loader=$enable_shared_pipe_drivers
>  fi
>  AM_CONDITIONAL(HAVE_ST_XVMC, test "x$enable_xvmc" = xyes)
>
> @@ -1415,14 +1421,14 @@ if test "x$enable_vdpau" = xyes; then
>      PKG_CHECK_MODULES([VDPAU], [vdpau >= $VDPAU_REQUIRED x11-xcb xcb-dri2
> >= $XCBDRI2_REQUIRED],
>                        [VDPAU_LIBS="`$PKG_CONFIG --libs x11-xcb
> xcb-dri2`"])
>      GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS vdpau"
> -    enable_gallium_loader=yes
> +    enable_gallium_loader=$enable_shared_pipe_drivers
>  fi
>  AM_CONDITIONAL(HAVE_ST_VDPAU, test "x$enable_vdpau" = xyes)
>
>  if test "x$enable_omx" = xyes; then
>      PKG_CHECK_MODULES([OMX], [libomxil-bellagio >=
> $LIBOMXIL_BELLAGIO_REQUIRED x11-xcb xcb-dri2 >= $XCBDRI2_REQUIRED])
>      GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS omx"
> -    enable_gallium_loader=yes
> +    enable_gallium_loader=$enable_shared_pipe_drivers
>  fi
>  AM_CONDITIONAL(HAVE_ST_OMX, test "x$enable_omx" = xyes)
>
> @@ -1474,6 +1480,7 @@ if test "x$enable_opencl" = xyes; then
>
>      GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS clover"
>      GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS opencl"
> +    # XXX: Use $enable_shared_pipe_drivers once converted to use
> static/shared pipe-drivers
>      enable_gallium_loader=yes
>
>      if test "x$enable_opencl_icd" = xyes; then
> @@ -1774,6 +1781,7 @@ dnl
>  dnl Gallium Tests
>  dnl
>  if test "x$enable_gallium_tests" = xyes; then
> +    # XXX: Use $enable_shared_pipe_drivers once converted to use
> static/shared pipe-drivers
>      enable_gallium_loader=yes
>  fi
>  AM_CONDITIONAL(HAVE_GALLIUM_TESTS, test "x$enable_gallium_tests" = xyes)
> @@ -2069,9 +2077,7 @@ AM_CONDITIONAL(NEED_GALLIUM_SOFTPIPE_DRIVER, test
> "x$HAVE_GALLIUM_SVGA" = xyes -
>  AM_CONDITIONAL(NEED_GALLIUM_LLVMPIPE_DRIVER, test
> "x$HAVE_GALLIUM_SOFTPIPE" = xyes \
>                                                    && test "x$MESA_LLVM" =
> x1)
>
> -# Enable static gallium targets for now.
> -# Do not touch this unless you know what you are doing.
> -AM_CONDITIONAL(HAVE_GALLIUM_STATIC_TARGETS, test "xyes" = xyes)
> +AM_CONDITIONAL(HAVE_GALLIUM_STATIC_TARGETS, test
> "x$enable_shared_pipe_drivers" = xno)
>
>  # NOTE: anything using xcb or other client side libs ends up in separate
>  #       _CLIENT variables.  The pipe loader is built in two variants,
> --
> 2.0.2
>
>


-- 


James Ausmus
Sr. Software Engineer
SSG-OTC ChromeOS Integration
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140908/e7027643/attachment-0001.html>


More information about the mesa-dev mailing list