[Mesa-dev] [PATCH] gallium/targets: don't leave an empty target directory(ies)
Matt Turner
mattst88 at gmail.com
Thu Mar 2 19:02:00 UTC 2017
I was just going through old bugs and found this. I asked you to look
into this years ago, and then never did my part. Sorry for that.
On Wed, Sep 2, 2015 at 1:34 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> Some drivers do not support certain targets - for example nouveau
> doesn't do VAAPI, while freedreno doesn't do of the video backends.
>
> As such if we enter vdpau when building freedreno/ilo/etc, a vdpau/
> folder will be created, empty library will be build and almost
> immediately removed. Thus keeping an empty vdpau/ folder around.
>
> There are two ways to fix this.
>
> * add substantial tracking in configure/makefiles so that we never end
> up in targets/vdpau
> Downsides:
> Error prone, as the configure checks and the 'include
> gallium/drivers/foo/Automake.inc' can easily get out of sync.
Yeah, seems difficult.
> * remove the folder, if empty, alongside the empty library.
> Downsides:
> In the latter case vdpau/ might be empty before the mesa build has
> started, yet we'll remove it either way.
>
> This patch implements the latter option, as the downside isn't that
> significant, plus the patch is way shorter ;-)
Definitely seems like the way to go.
> Cc: Matt Turner <mattst88 at gmail.com>
> Gentoo Bugzilla: https://bugs.gentoo.org/545230
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
>
> Hi Matt, can you let me know if you're happy with the downside this
> approach brings ? The alternative would involve part-reverting one or
> two of your ealier patches.
>
> -Emil
>
> src/gallium/targets/dri/Makefile.am | 3 ++-
> src/gallium/targets/vdpau/Makefile.am | 3 ++-
> src/gallium/targets/xvmc/Makefile.am | 3 ++-
> 3 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/src/gallium/targets/dri/Makefile.am b/src/gallium/targets/dri/Makefile.am
> index 7f945d1..77ea8c8 100644
> --- a/src/gallium/targets/dri/Makefile.am
> +++ b/src/gallium/targets/dri/Makefile.am
> @@ -130,7 +130,8 @@ install-data-hook:
> ln -f $(DESTDIR)$(dridir)/gallium_dri.so \
> $(DESTDIR)$(dridir)/$${i}_dri.so; \
> done; \
> - $(RM) $(DESTDIR)$(dridir)/gallium_dri.*
> + $(RM) $(DESTDIR)$(dridir)/gallium_dri.*; \
> + test x$(TARGET_DRIVERS) != x || $(RM) -d $(DESTDIR)$(dridir) &>/dev/null || true
I think you just want test -n $(TARGET_DRIVERS)?
I'm not sure if the || true is necessary, but doesn't matter either way.
Thanks,
Reviewed-by: Matt Turner <mattst88 at gmail.com>
More information about the mesa-dev
mailing list