On Wed, Feb 23, 2022 at 02:53:51PM +0100, Philipp Zabel wrote:
> Add a stripped down version of the libva package that installs only the
> headers and pkgconfig file required by Mesa.
> This avoids a circular dependency between Mesa, which requries libva
> headers, and libva, which may require Mesa to build GLX support.
> 
> Signed-off-by: Philipp Zabel <[email protected]>
> ---
>  rules/libva-headers.in   |  9 +++++++
>  rules/libva-headers.make | 53 ++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 62 insertions(+)
>  create mode 100644 rules/libva-headers.in
>  create mode 100644 rules/libva-headers.make
> 
> diff --git a/rules/libva-headers.in b/rules/libva-headers.in
> new file mode 100644
> index 000000000000..a611b483fdb4
> --- /dev/null
> +++ b/rules/libva-headers.in
> @@ -0,0 +1,9 @@
> +## SECTION=multimedia_vaapi
> +
> +config LIBVA_HEADERS
> +     tristate
> +     select HOST_MESON
> +     select LIBDRM
> +     prompt "libva-headers"
> +     help
> +       VA-API header files for mesalib
> diff --git a/rules/libva-headers.make b/rules/libva-headers.make
> new file mode 100644
> index 000000000000..5f80eead4c79
> --- /dev/null
> +++ b/rules/libva-headers.make
> @@ -0,0 +1,53 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2020 by Philipp Zabel <[email protected]>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_LIBVA_HEADERS) += libva-headers
> +
> +#
> +# Paths and names
> +#
> +LIBVA_HEADERS_VERSION        = $(LIBVA_VERSION)
> +LIBVA_HEADERS_MD5    = $(LIBVA_MD5)
> +LIBVA_HEADERS                = libva-headers-$(LIBVA_VERSION)
> +LIBVA_HEADERS_SUFFIX = tar.bz2
> +LIBVA_HEADERS_URL    = $(LIBVA_URL)
> +LIBVA_HEADERS_SOURCE = $(LIBVA_SOURCE)
> +LIBVA_HEADERS_DIR    = $(BUILDDIR)/$(LIBVA_HEADERS)
> +LIBVA_HEADERS_LICENSE        = $(LIBVA_LICENSE)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Prepare
> +# 
> ----------------------------------------------------------------------------
> +
> +LIBVA_HEADERS_CONF_TOOL      := meson
> +LIBVA_HEADERS_CONF_OPT       := \
> +     $(CROSS_MESON_USR) \
> +     -Ddisable_drm=false \
> +     -Ddriverdir='' \
> +     -Denable_docs=false \
> +     -Denable_va_messaging=true \
> +     -Dwith_glx=no \
> +     -Dwith_wayland=no \
> +     -Dwith_x11=no \
> +
> +# 
> ----------------------------------------------------------------------------
> +# Install
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/libva-headers.install.post:
> +     @$(call targetinfo)
> +     # only install headers and libva.pc
> +     @rm -f $(LIBVA_HEADERS_PKGDIR)/usr/lib/libva*
> +     @rm -f $(LIBVA_HEADERS_PKGDIR)/usr/lib/pkgconfig/libva-drm.pc

I think this should be done at the end of 'install' instead.

And you need to do the reverse in libva and add a dependency there.
Otherwise a 'ptxdist clean libva' will delete the header files and if mesa
is rebuilt then that will fail.

Michael

> +     @$(call world/install.post, LIBVA_HEADERS)
> +     @$(call touch)
> +
> +# vim: syntax=make
> -- 
> 2.30.2
> 
> 
> _______________________________________________
> ptxdist mailing list
> [email protected]
> To unsubscribe, send a mail with subject "unsubscribe" to 
> [email protected]
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
ptxdist mailing list
[email protected]
To unsubscribe, send a mail with subject "unsubscribe" to 
[email protected]

Reply via email to