- switch build system to Meson
- install gallium dri drivers as gallium_dri.so, symlink the others

Signed-off-by: Philipp Zabel <p.za...@pengutronix.de>
---
Changes since v1:
- install gallium dri drivers as gallium_dri.so, symlink the others
- add migration helper for MESALIB_DRI_IMX -> MESALIB_DRI_KMSRO
- drop the imx, pl111, and hx8357d options, all three symlinks are
  always installed if kmsro is enabled
---
 ...sing-include-stddef.h-in-egldevice.h.patch |  41 -----
 patches/mesa-18.3.2/series                    |   4 -
 rules/host-mesalib.make                       | 103 ++++++-------
 rules/mesalib.in                              |  14 +-
 rules/mesalib.make                            | 143 +++++++++---------
 scripts/migrate/migrate_ptx                   |   8 +
 6 files changed, 133 insertions(+), 180 deletions(-)
 delete mode 100644 
patches/mesa-18.3.2/0001-egl-add-missing-include-stddef.h-in-egldevice.h.patch
 delete mode 100644 patches/mesa-18.3.2/series

diff --git 
a/patches/mesa-18.3.2/0001-egl-add-missing-include-stddef.h-in-egldevice.h.patch
 
b/patches/mesa-18.3.2/0001-egl-add-missing-include-stddef.h-in-egldevice.h.patch
deleted file mode 100644
index a1ddac538d8c..000000000000
--- 
a/patches/mesa-18.3.2/0001-egl-add-missing-include-stddef.h-in-egldevice.h.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Gurchetan Singh <gurchetansi...@chromium.org>
-Date: Wed, 28 Nov 2018 08:39:34 -0800
-Subject: [PATCH] egl: add missing #include <stddef.h> in egldevice.h
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Otherwise, I get this error:
-
-main/egldevice.h:54:13: error: ‘NULL’ undeclared (first use in this function)
-       dev = NULL;
-             ^~~~
-with this config:
-
-./autogen.sh --enable-gles1 --enable-gles2 --with-platforms='surfaceless' 
--disable-glx
-             --with-dri-drivers="i965" --with-gallium-drivers="" --enable-gbm
-
-v3: Use stddef.h (Matt)
-v4: Modify commit message (Eric)
-
-Reviewed-by: Matt Turner <matts...@gmail.com>
-Reviewed-by: Eric Engestrom <eric.engest...@intel.com>
----
- src/egl/main/egldevice.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/egl/main/egldevice.h b/src/egl/main/egldevice.h
-index ddcdcd17f5a4..83a47d5eacc2 100644
---- a/src/egl/main/egldevice.h
-+++ b/src/egl/main/egldevice.h
-@@ -31,9 +31,9 @@
- 
- 
- #include <stdbool.h>
-+#include <stddef.h>
- #include "egltypedefs.h"
- 
--
- #ifdef __cplusplus
- extern "C" {
- #endif
diff --git a/patches/mesa-18.3.2/series b/patches/mesa-18.3.2/series
deleted file mode 100644
index d817864d531d..000000000000
--- a/patches/mesa-18.3.2/series
+++ /dev/null
@@ -1,4 +0,0 @@
-# generated by git-ptx-patches
-#tag:base --start-number 1
-0001-egl-add-missing-include-stddef.h-in-egldevice.h.patch
-# 0d0caa2eb09bc31597439c338401f18b  - git-ptx-patches magic
diff --git a/rules/host-mesalib.make b/rules/host-mesalib.make
index 3a1e16a7d6f5..ba54aac23cdd 100644
--- a/rules/host-mesalib.make
+++ b/rules/host-mesalib.make
@@ -17,64 +17,59 @@ HOST_PACKAGES-$(PTXCONF_HOST_MESALIB) += host-mesalib
 # Prepare
 # ----------------------------------------------------------------------------
 
-HOST_MESALIB_CONF_ENV := \
-       $(HOST_ENV) \
-       ac_cv_prog_PYTHON2=$(PTXDIST_TOPDIR)/bin/python
-
-HOST_MESALIB_BUILD_OOT := YES
-HOST_MESALIB_CONF_TOOL := autoconf
+HOST_MESALIB_CONF_TOOL := meson
 HOST_MESALIB_CONF_OPT  := \
-       $(HOST_AUTOCONF) \
-       --enable-static \
-       --disable-shared \
-       --disable-pwr8 \
-       --disable-debug \
-       --disable-profile \
-       --disable-sanitize \
-       --disable-asm \
-       --disable-selinux \
-       --disable-llvm-shared-libs \
-       --disable-libunwind \
-       --enable-opengl \
-       --disable-gles1 \
-       --disable-gles2 \
-       --disable-dri \
-       --disable-gallium-extra-hud \
-       --disable-lmsensors \
-       --disable-dri3 \
-       --disable-glx \
-       --disable-osmesa \
-       --disable-gallium-osmesa \
-       --disable-egl \
-       --disable-xa \
-       --disable-gbm \
-       --disable-nine \
-       --disable-xvmc \
-       --disable-vdpau \
-       --disable-omx-tizonia \
-       --disable-omx-bellagio \
-       --disable-va \
-       --disable-opencl \
-       --disable-opencl-icd \
-       --disable-gallium-tests \
-       --disable-libglvnd \
-       --disable-mangling \
-       --enable-shared-glapi \
-       --disable-driglx-direct \
-       --disable-glx-tls \
-       --disable-llvm-shared-libs \
-       --disable-glx-read-only-text \
-       --disable-xlib-lease \
-       --disable-llvm \
-       --disable-valgrind \
-       --with-gallium-drivers= \
-       --with-dri-drivers= \
-       --without-vulkan-drivers \
-       --with-platforms=
+       $(HOST_MESON_OPT) \
+       -Dplatforms= \
+       -Ddri3=false \
+       -Ddri-drivers= \
+       -Ddri-drivers-path=/usr/lib/dri \
+       -Ddri-search-path=/usr/lib/dri \
+       -Dgallium-drivers= \
+       -Dgallium-extra-hud=false \
+       -Dgallium-vdpau=false \
+       -Dvdpau-libs-path=/usr/lib/vdpau \
+       -Dgallium-xvmc=false \
+       -Dxvmc-libs-path=/usr/lib \
+       -Dgallium-omx=disabled \
+       -Domx-libs-path=/usr/lib/dri \
+       -Dgallium-va=false \
+       -Dva-libs-path=/usr/lib/dri \
+       -Dgallium-xa=false \
+       -Dgallium-nine=false \
+       -Dgallium-opencl=disabled \
+       -Dd3d-drivers-path=/usr/lib/d3d \
+       -Dvulkan-drivers=[] \
+       -Dshader-cache=false \
+       -Dvulkan-icd-dir=/etc/vulkan/icd.d \
+       -Dshared-glapi=true \
+       -Dgles1=false \
+       -Dgles2=false \
+       -Dopengl=true \
+       -Dgbm=false \
+       -Dglx=disabled \
+       -Degl=false \
+       -Dglvnd=false \
+       -Dasm=false \
+       -Dglx-read-only-text=false \
+       -Dllvm=false \
+       -Dshared-llvm=false \
+       -Dvalgrind=false \
+       -Dlibunwind=false \
+       -Dlmsensors=false \
+       -Dbuild-tests=false \
+       -Dselinux=false \
+       -Dosmesa=none \
+       -Dosmesa-bits=8 \
+       -Dswr-arches=[] \
+       -Dtools=glsl \
+       -Dpower8=false \
+       -Dxlib-lease=false \
+       -Dglx-direct=false
 
 $(STATEDIR)/host-mesalib.install:
        @$(call targetinfo)
-       install -D -m755 $(HOST_MESALIB_DIR)-build/src/compiler/glsl_compiler 
$(HOST_MESALIB_PKGDIR)/bin/mesa/glsl_compiler
+       install -D -m755 
$(HOST_MESALIB_DIR)-build/src/compiler/glsl/glsl_compiler 
$(HOST_MESALIB_PKGDIR)/bin/mesa/glsl_compiler
        @$(call touch)
 
 # vim: syntax=make
diff --git a/rules/mesalib.in b/rules/mesalib.in
index 52fcf22f6988..281eaf5ccadc 100644
--- a/rules/mesalib.in
+++ b/rules/mesalib.in
@@ -4,8 +4,10 @@ menuconfig MESALIB
        tristate
        prompt "mesa                          "
        select HOST_MESALIB
+       select HOST_MESON
        select HOST_MAKEDEPEND
-       select HOST_SYSTEM_PYTHON
+       select HOST_SYSTEM_PYTHON3
+       select HOST_SYSTEM_PYTHON3_MAKO
        select GCCLIBS
        select GCCLIBS_CXX
        select LIBDRM
@@ -19,6 +21,7 @@ menuconfig MESALIB
        select LIBDRM_RADEON            if MESALIB_DRI_R600
        select LIBDRM_RADEON            if MESALIB_DRI_RADEONSI
        select LIBDRM_NOUVEAU           if MESALIB_DRI_NOUVEAU || 
MESALIB_DRI_NOUVEAU_VIEUX
+       select LIBDRM_FREEDRENO         if MESALIB_DRI_FREEDRENO
        select LIBDRM_ETNAVIV           if MESALIB_DRI_ETNAVIV
        select LM_SENSORS               if MESALIB_LMSENSORS
        select XORGPROTO                if MESALIB_GLX
@@ -86,6 +89,10 @@ config MESALIB_DRI_NOUVEAU
        bool
        prompt "Nvidia > GForce4"
 
+config MESALIB_DRI_KMSRO
+       bool
+       prompt "KMS renderonly"
+
 config MESALIB_DRI_FREEDRENO
        bool
        prompt "Freedreno"
@@ -94,11 +101,6 @@ config MESALIB_DRI_ETNAVIV
        bool
        prompt "Etnaviv"
 
-config MESALIB_DRI_IMX
-       bool
-       depends on MESALIB_DRI_ETNAVIV
-       prompt "imx"
-
 config MESALIB_DRI_V3D
        bool
        # needs v3dv3
diff --git a/rules/mesalib.make b/rules/mesalib.make
index cca34917783d..b07cd7fbc485 100644
--- a/rules/mesalib.make
+++ b/rules/mesalib.make
@@ -19,8 +19,8 @@ PACKAGES-$(PTXCONF_MESALIB) += mesalib
 #
 # Paths and names
 #
-MESALIB_VERSION        := 18.3.2
-MESALIB_MD5    := 4a82bf3ac2e81493a1a84dd7581ec786
+MESALIB_VERSION        := 19.0.0
+MESALIB_MD5    := d0d76cd8b00bc1308e37985d4a45d3c5
 MESALIB                := mesa-$(MESALIB_VERSION)
 MESALIB_SUFFIX := tar.xz
 MESALIB_URL    := \
@@ -36,10 +36,6 @@ MESALIB_LICENSE_FILES := \
 # Prepare
 # ----------------------------------------------------------------------------
 
-MESALIB_CONF_ENV := \
-       $(CROSS_ENV) \
-       ac_cv_prog_PYTHON2=$(PTXDIST_TOPDIR)/bin/python
-
 ifdef PTXCONF_ARCH_X86
 MESALIB_DRI_DRIVERS-$(PTXCONF_MESALIB_DRI_I915)                += i915
 MESALIB_DRI_DRIVERS-$(PTXCONF_MESALIB_DRI_I965)                += i965
@@ -47,6 +43,7 @@ endif
 MESALIB_DRI_DRIVERS-$(PTXCONF_MESALIB_DRI_NOUVEAU_VIEUX)+= nouveau
 MESALIB_DRI_DRIVERS-$(PTXCONF_MESALIB_DRI_R200)                += r200
 
+MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_KMSRO)   += kmsro
 ifndef PTXCONF_ARCH_ARM # broken: 
https://bugs.freedesktop.org/show_bug.cgi?id=72064
 ifndef PTXCONF_ARCH_X86 # needs llvm
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_R300)    += r300
@@ -54,21 +51,20 @@ endif
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_R600)    += r600
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_RADEONSI)        += radeonsi
 endif
-
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_NOUVEAU) += nouveau
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_FREEDRENO)+= freedreno
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_ETNAVIV) += etnaviv
-MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_IMX)     += imx
 ifdef PTXCONF_ARCH_ARM
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_V3D)     += v3d
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_VC4)     += vc4
 endif
-
 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_SWRAST)  += swrast
 
-MESALIB_DRI_LIBS-y += \
-       $(subst nouveau,nouveau_vieux,$(MESALIB_DRI_DRIVERS-y)) \
-       $(subst imx,imx-drm,$(subst 
freedreno,kgsl,$(MESALIB_GALLIUM_DRIVERS-y)))
+MESALIB_DRI_LIBS-y = \
+       $(subst nouveau,nouveau_vieux,$(MESALIB_DRI_DRIVERS-y))
+
+MESALIB_DRI_GALLIUM_LIBS-y = \
+       $(subst kmsro,imx-drm pl111 hx8357d,$(subst 
freedreno,kgsl,$(MESALIB_GALLIUM_DRIVERS-y)))
 
 MESALIB_LIBS-y                         := libglapi
 MESALIB_LIBS-$(PTXCONF_MESALIB_GLX)    += libGL
@@ -82,68 +78,55 @@ MESALIBS_EGL_PLATFORMS-$(PTXCONF_MESALIB_EGL_X11)   += x11
 MESALIBS_EGL_PLATFORMS-$(PTXCONF_MESALIB_EGL_DRM)      += drm
 MESALIBS_EGL_PLATFORMS-$(PTXCONF_MESALIB_EGL_WAYLAND)  += wayland
 
-MESALIB_BUILD_OOT      := YES
-MESALIB_CONF_TOOL      := autoconf
+MESALIB_CONF_TOOL      := meson
 MESALIB_CONF_OPT       := \
-       $(CROSS_AUTOCONF_USR) \
-       --$(call ptx/endis, PTXCONF_GLOBAL_LARGE_FILE)-largefile \
-       --disable-static \
-       --enable-shared \
-       --disable-pwr8 \
-       --disable-debug \
-       --disable-profile \
-       --disable-sanitize \
-       --disable-asm \
-       --disable-selinux \
-       --disable-llvm-shared-libs \
-       --disable-libunwind \
-       --$(call ptx/endis, PTXCONF_MESALIB_OPENGL)-opengl \
-       --$(call ptx/endis, PTXCONF_MESALIB_GLES1)-gles1 \
-       --$(call ptx/endis, PTXCONF_MESALIB_GLES2)-gles2 \
-       --enable-dri \
-       --$(call ptx/endis, PTXCONF_MESALIB_EXTENDED_HUD)-gallium-extra-hud \
-       --$(call ptx/endis, PTXCONF_MESALIB_LMSENSORS)-lmsensors \
-       --disable-dri3 \
-       --$(call ptx/endis, PTXCONF_MESALIB_GLX)-glx \
-       --disable-osmesa \
-       --disable-gallium-osmesa \
-       --$(call ptx/endis, PTXCONF_MESALIB_EGL)-egl \
-       --disable-xa \
-       --$(call ptx/endis, PTXCONF_MESALIB_GBM)-gbm \
-       --disable-nine \
-       --disable-xvmc \
-       --disable-vdpau \
-       --disable-omx-tizonia \
-       --disable-omx-bellagio \
-       --disable-va \
-       --disable-opencl \
-       --disable-opencl-icd \
-       --disable-gallium-tests \
-       --disable-libglvnd \
-       --disable-mangling \
-       --enable-shared-glapi \
-       --enable-driglx-direct \
-       --enable-glx-tls \
-       --disable-glx-read-only-text \
-       --disable-xlib-lease \
-       --disable-llvm \
-       --disable-valgrind \
-       --with-gallium-drivers=$(subst 
$(space),$(comma),$(MESALIB_GALLIUM_DRIVERS-y)) \
-       --with-platforms=$(subst $(space),$(comma),$(MESALIBS_EGL_PLATFORMS-y)) 
\
-       --with-dri-driverdir=/usr/lib/dri \
-       --with-dri-searchpath=/usr/lib/dri \
-       --with-dri-drivers=$(subst $(space),$(comma),$(MESALIB_DRI_DRIVERS-y)) \
-       --without-vulkan-drivers \
-       --with-vulkan-icddir=/etc/vulkan/icd.d \
-       --with-osmesa-bits=8 \
-       --with-clang-libdir=/usr/lib \
-       --with-xvmc-libdir=/usr/lib \
-       --with-vdpau-libdir=/usr/lib/vdpau \
-       --with-omx-bellagio-libdir=/usr/lib/dri \
-       --with-omx-tizonia-libdir=/usr/lib/dri \
-       --with-va-libdir=/usr/lib/dri \
-       --with-d3d-libdir=/usr/lib/d3d \
-       --with-swr-archs=
+       $(CROSS_MESON_USR) \
+       -Dplatforms=$(subst $(space),$(comma),$(MESALIBS_EGL_PLATFORMS-y)) \
+       -Ddri3=false \
+       -Ddri-drivers=$(subst $(space),$(comma),$(MESALIB_DRI_DRIVERS-y)) \
+       -Ddri-drivers-path=/usr/lib/dri \
+       -Ddri-search-path=/usr/lib/dri \
+       -Dgallium-drivers=$(subst 
$(space),$(comma),$(MESALIB_GALLIUM_DRIVERS-y)) \
+       -Dgallium-extra-hud=$(call ptx/truefalse, PTXCONF_MESALIB_EXTENDED_HUD) 
\
+       -Dgallium-vdpau=false \
+       -Dvdpau-libs-path=/usr/lib/vdpau \
+       -Dgallium-xvmc=false \
+       -Dxvmc-libs-path=/usr/lib \
+       -Dgallium-omx=disabled \
+       -Domx-libs-path=/usr/lib/dri \
+       -Dgallium-va=false \
+       -Dva-libs-path=/usr/lib/dri \
+       -Dgallium-xa=false \
+       -Dgallium-nine=false \
+       -Dgallium-opencl=disabled \
+       -Dd3d-drivers-path=/usr/lib/d3d \
+       -Dvulkan-drivers=[] \
+       -Dshader-cache=false \
+       -Dvulkan-icd-dir=/etc/vulkan/icd.d \
+       -Dshared-glapi=true \
+       -Dgles1=$(call ptx/truefalse, PTXCONF_MESALIB_GLES1) \
+       -Dgles2=$(call ptx/truefalse, PTXCONF_MESALIB_GLES2) \
+       -Dopengl=$(call ptx/truefalse, PTXCONF_MESALIB_OPENGL) \
+       -Dgbm=$(call ptx/truefalse, PTXCONF_MESALIB_GBM) \
+       -Dglx=disabled \
+       -Degl=$(call ptx/truefalse, PTXCONF_MESALIB_EGL) \
+       -Dglvnd=false \
+       -Dasm=false \
+       -Dglx-read-only-text=false \
+       -Dllvm=false \
+       -Dshared-llvm=false \
+       -Dvalgrind=false \
+       -Dlibunwind=false \
+       -Dlmsensors=$(call ptx/truefalse, PTXCONF_MESALIB_LMSENSORS) \
+       -Dbuild-tests=false \
+       -Dselinux=false \
+       -Dosmesa=none \
+       -Dosmesa-bits=8 \
+       -Dswr-arches=[] \
+       -Dtools=[] \
+       -Dpower8=false \
+       -Dxlib-lease=false \
+       -Dglx-direct=false
 
 # ----------------------------------------------------------------------------
 # Compile
@@ -170,10 +153,20 @@ $(STATEDIR)/mesalib.targetinstall:
 
        @$(foreach lib, $(MESALIB_DRI_LIBS-y), \
                $(call install_copy, mesalib, 0, 0, 0644, -, \
-               /usr/lib/dri/$(lib)_dri.so);)
+               /usr/lib/dri/$(lib)_dri.so)$(ptx/nl))
+
+ifneq ($(strip $(MESALIB_DRI_GALLIUM_LIBS-y)),)
+       @$(call install_copy, mesalib, 0, 0, 0644, \
+               $(MESALIB_PKGDIR)/usr/lib/dri/$(firstword 
$(MESALIB_DRI_GALLIUM_LIBS-y))_dri.so, \
+               /usr/lib/dri/gallium_dri.so)
+
+       @$(foreach lib, $(MESALIB_DRI_GALLIUM_LIBS-y), \
+               $(call install_link, mesalib, gallium_dri.so, \
+               /usr/lib/dri/$(lib)_dri.so)$(ptx/nl))
+endif
 
        @$(foreach lib, $(MESALIB_LIBS-y), \
-               $(call install_lib, mesalib, 0, 0, 0644, $(lib));)
+               $(call install_lib, mesalib, 0, 0, 0644, $(lib))$(ptx/nl))
 
        @$(call install_finish, mesalib)
 
diff --git a/scripts/migrate/migrate_ptx b/scripts/migrate/migrate_ptx
index 51150f937c58..4e89c427abbd 100755
--- a/scripts/migrate/migrate_ptx
+++ b/scripts/migrate/migrate_ptx
@@ -322,3 +322,11 @@ s/^\(\(# \)\?PTXCONF_BLUEZ\)_UTILS\(.*$\)/\1_TOOLS\2/
 # reason : change __ -> _
 #
 s/^\(\(# \)\?PTXCONF_FUSE_\)_/\1\2/
+
+#
+# from   : ptxdist-2019.03.0
+# to     : ptxdist-2019.04.0
+# symbol : MESALIB_DRI_IMX -> MESALIB_DRI_KMSRO
+# reason : renderonly drivers consolidated into kmsro
+#
+s/^\(\(# \)\?PTXCONF_\)MESALIB_DRI_IMX\>/\1MESALIB_DRI_KMSRO/
-- 
2.20.1


_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to