From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id D72A3158091 for ; Mon, 30 May 2022 17:25:21 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 238A4E08E5; Mon, 30 May 2022 17:25:21 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id AF664E08C3 for ; Mon, 30 May 2022 17:25:20 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 776A6341589 for ; Mon, 30 May 2022 17:25:19 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id BCAD47F for ; Mon, 30 May 2022 17:25:17 +0000 (UTC) From: "Matt Turner" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Matt Turner" Message-ID: <1653931499.579a702668e5ce1e81586c7f5596814e89cb70b5.mattst88@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: x11-apps/mesa-progs/, x11-apps/mesa-progs/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: x11-apps/mesa-progs/files/8.5.0-Disable-things-we-don-t-want.patch x11-apps/mesa-progs/mesa-progs-9999.ebuild X-VCS-Directories: x11-apps/mesa-progs/ x11-apps/mesa-progs/files/ X-VCS-Committer: mattst88 X-VCS-Committer-Name: Matt Turner X-VCS-Revision: 579a702668e5ce1e81586c7f5596814e89cb70b5 X-VCS-Branch: master Date: Mon, 30 May 2022 17:25:17 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: c3f72f31-5307-4a50-a0bd-851d12feb56d X-Archives-Hash: 72b71cdaa2c9909ce837b3cffa6006f5 commit: 579a702668e5ce1e81586c7f5596814e89cb70b5 Author: Matt Turner gentoo org> AuthorDate: Mon May 30 16:03:09 2022 +0000 Commit: Matt Turner gentoo org> CommitDate: Mon May 30 17:24:59 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=579a7026 x11-apps/mesa-progs: Switch to meson Closes: https://bugs.gentoo.org/845072 Co-authored-by: Mike Lothian fireburn.co.uk> Signed-off-by: Matt Turner gentoo.org> .../files/8.5.0-Disable-things-we-don-t-want.patch | 254 +++++++++++++++++++++ x11-apps/mesa-progs/mesa-progs-9999.ebuild | 91 ++++---- 2 files changed, 304 insertions(+), 41 deletions(-) diff --git a/x11-apps/mesa-progs/files/8.5.0-Disable-things-we-don-t-want.patch b/x11-apps/mesa-progs/files/8.5.0-Disable-things-we-don-t-want.patch new file mode 100644 index 000000000000..666f568e461f --- /dev/null +++ b/x11-apps/mesa-progs/files/8.5.0-Disable-things-we-don-t-want.patch @@ -0,0 +1,254 @@ +From caa6f31f1032f21756ab327429702feb4381045e Mon Sep 17 00:00:00 2001 +From: Matt Turner +Date: Mon, 30 May 2022 12:16:24 -0400 +Subject: [PATCH] Disable things we don't want + +--- + meson.build | 11 +++-------- + src/egl/opengl/meson.build | 29 ---------------------------- + src/egl/opengles2/meson.build | 5 ----- + src/glad/meson.build | 17 ----------------- + src/meson.build | 2 -- + src/util/gl_wrap.h | 2 -- + src/util/meson.build | 20 ------------------- + src/xdemos/meson.build | 36 ----------------------------------- + 8 files changed, 3 insertions(+), 119 deletions(-) + +diff --git a/meson.build b/meson.build +index e1968fab..9d59c1ec 100644 +--- a/meson.build ++++ b/meson.build +@@ -75,14 +75,7 @@ endif + + dep_threads = dependency('threads') + +-dep_glu = dependency('glu', required : dep_x11.found()) +-if not dep_glu.found() +- _glu_name = 'GLU' +- if host_machine.system() == 'windows' +- _glu_name = 'glu32' +- endif +- dep_glu = cc.find_library(_glu_name, has_headers: 'GL/glu.h') +-endif ++dep_glu = disabler() + + # GBM is needed for EGL on KMS + dep_gbm = dependency('gbm', required : false, disabler : true) +@@ -117,6 +110,8 @@ else + ) + endif + ++dep_glut = disabler() ++ + if dep_glut.found() and cc.has_function('glutInitContextProfile', + include_directories: glut_incdir, + prefix : '#include ') +diff --git a/src/egl/opengl/meson.build b/src/egl/opengl/meson.build +index ba7cadc3..789b25a5 100644 +--- a/src/egl/opengl/meson.build ++++ b/src/egl/opengl/meson.build +@@ -4,41 +4,12 @@ executable( + 'eglgears_x11', files('eglgears.c'), + dependencies: [_deps, idep_eglut_x11] + ) +-executable( +- 'egltri_x11', files('egltri.c'), +- dependencies: [_deps, idep_eglut_x11] +-) +-executable( +- 'xeglgears', files('xeglgears.c'), +- dependencies: [_deps, dep_egl, dep_x11] +-) +-executable( +- 'xeglthreads', files('xeglthreads.c'), +- dependencies: [_deps, dep_x11] +-) +- + executable( + 'eglgears_wayland', files('eglgears.c'), + dependencies: [_deps, idep_eglut_wayland] + ) +-executable( +- 'egltri_wayland', files('egltri.c'), +- dependencies: [_deps, idep_eglut_wayland] +-) +- +-executable( +- 'eglkms', 'eglkms.c', +- dependencies: [_deps, dep_drm, dep_gbm, dep_egl] +-) +- + executable( + 'eglinfo', 'eglinfo.c', + dependencies: [dep_egl], + install: true + ) +- +-executable( +- 'peglgears', 'peglgears.c', +- dependencies: [dep_gl, dep_egl, dep_m, idep_util] +-) +- +diff --git a/src/egl/opengles2/meson.build b/src/egl/opengles2/meson.build +index 59f69ed7..7137a961 100644 +--- a/src/egl/opengles2/meson.build ++++ b/src/egl/opengles2/meson.build +@@ -9,11 +9,6 @@ executable( + dependencies: [dep_gles2, idep_eglut_x11, dep_m], + install: true + ) +-executable( +- 'es2tri', files('es2tri.c'), +- dependencies: [_deps_x11, dep_m], +- install: true +-) + executable( + 'es2gears_wayland', files('es2gears.c'), + dependencies: [dep_gles2, idep_eglut_wayland, dep_m], +diff --git a/src/glad/meson.build b/src/glad/meson.build +index 2d107609..23dacd45 100644 +--- a/src/glad/meson.build ++++ b/src/glad/meson.build +@@ -19,20 +19,3 @@ + # SOFTWARE. + + inc_glad = include_directories('include') +- +-_libglad_files = files('src/glad.c') +-if host_machine.system() == 'windows' +- _libglad_files += files('src/glad_wgl.c') +-endif +- +-_libglad = static_library( +- 'glad', +- _libglad_files, +- include_directories: inc_glad +-) +- +-idep_glad = declare_dependency( +- link_with: _libglad, +- dependencies: dep_dl, +- include_directories: inc_glad, +-) +diff --git a/src/meson.build b/src/meson.build +index 39cac78d..4d4abbf8 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -55,5 +55,3 @@ endif + if host_machine.system() == 'windows' + subdir('wgl') + endif +- +-subdir('data') +diff --git a/src/util/gl_wrap.h b/src/util/gl_wrap.h +index b2ff9c8f..f482df5e 100644 +--- a/src/util/gl_wrap.h ++++ b/src/util/gl_wrap.h +@@ -7,10 +7,8 @@ + + #ifdef __APPLE__ + # include +-# include + #else + # include +-# include + #endif + + #ifndef GLAPIENTRY +diff --git a/src/util/meson.build b/src/util/meson.build +index 9168aecf..066073cc 100644 +--- a/src/util/meson.build ++++ b/src/util/meson.build +@@ -20,26 +20,6 @@ + + inc_util = include_directories('.') + +-files_libutil = files( +- 'readtex.c', +- 'showbuffer.c', +- 'trackball.c', +-) +- +-_deps = [] +-if dep_glut.found() +- files_libutil += files('shaderutil.c') +- _deps += dep_glut +-endif +- +-_libutil = static_library( +- 'util', +- files_libutil, +- include_directories: inc_glad, +- dependencies: _deps, +-) +- + idep_util = declare_dependency( +- link_with: _libutil, + include_directories: inc_util, + ) +diff --git a/src/xdemos/meson.build b/src/xdemos/meson.build +index d6d5d5d5..ce26699f 100644 +--- a/src/xdemos/meson.build ++++ b/src/xdemos/meson.build +@@ -21,25 +21,7 @@ + glx_deps = [dep_gl, dep_x11, dep_m] + + progs = [ +- 'glsync', +- 'glxdemo', + 'glxgears', +- 'glxgears_pixmap', +- 'glxcontexts', +- 'glxheads', +- 'glxpixmap', +- 'glxpbdemo', +- 'glxsnoop', +- 'glxswapcontrol', +- 'manywin', +- 'multictx', +- 'offset', +- 'overlay', +- 'shape', +- 'sharedtex', +- 'texture_from_pixmap', +- 'wincopy', +- 'xfont', + ] + foreach p : progs + executable( +@@ -56,23 +38,7 @@ executable( + install: true + ) + +-executable( +- 'xrotfontdemo', +- files('xrotfontdemo.c', 'xuserotfont.c'), +- dependencies: glx_deps, +- install: true +-) +- +-_libpbutil = static_library( +- 'pbutil', +- files('pbutil.c'), +- dependencies: glx_deps +-) +- + pbutil_progs = [ +- 'glxgears_fbconfig', +- 'pbinfo', +- 'pbdemo', + ] + foreach p : pbutil_progs + executable( +@@ -84,8 +50,6 @@ foreach p : pbutil_progs + endforeach + + thread_progs = [ +- 'glthreads', +- 'sharedtex_mt', + ] + foreach p : thread_progs + executable( +-- +2.35.1 + diff --git a/x11-apps/mesa-progs/mesa-progs-9999.ebuild b/x11-apps/mesa-progs/mesa-progs-9999.ebuild index ac2f9b7db41f..0de99d7b802b 100644 --- a/x11-apps/mesa-progs/mesa-progs-9999.ebuild +++ b/x11-apps/mesa-progs/mesa-progs-9999.ebuild @@ -1,7 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 + +inherit meson-multilib MY_PN="${PN/progs/demos}" MY_P="${MY_PN}-${PV}" @@ -9,10 +11,8 @@ MY_P="${MY_PN}-${PV}" DESCRIPTION="Mesa's OpenGL utility and demo programs (glxgears and glxinfo)" HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/ https://gitlab.freedesktop.org/mesa/demos" if [[ ${PV} = 9999* ]]; then - inherit autotools git-r3 + inherit git-r3 EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/demos.git" - EGIT_CHECKOUT_DIR="${S}" - EXPERIMENTAL="true" else SRC_URI="https://mesa.freedesktop.org/archive/demos/${MY_P}.tar.bz2 https://mesa.freedesktop.org/archive/demos/${PV}/${MY_P}.tar.bz2" @@ -21,49 +21,58 @@ else fi LICENSE="LGPL-2" SLOT="0" -IUSE="egl gles2" +IUSE="gles2 wayland X" RDEPEND=" - media-libs/mesa[egl(+)?,gles2?] - virtual/opengl - x11-libs/libX11" + media-libs/mesa[${MULTILIB_USEDEP},egl(+),gles2?,wayland?,X?] + wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) + X? ( + x11-libs/libX11[${MULTILIB_USEDEP}] + x11-libs/libXext[${MULTILIB_USEDEP}] + ) +" DEPEND="${RDEPEND} - virtual/glu - x11-base/xorg-proto" -BDEPEND="sys-apps/grep - sys-apps/file" + wayland? ( >=dev-libs/wayland-protocols-1.12 ) + X? ( x11-base/xorg-proto ) +" +BDEPEND=" + virtual/pkgconfig + wayland? ( dev-util/wayland-scanner ) +" -src_prepare() { - default - [[ ${PV} = 9999* ]] && eautoreconf -} +PATCHES=( + "${FILESDIR}"/8.5.0-Disable-things-we-don-t-want.patch +) -src_compile() { - emake -C src/glad libglad.la - emake -C src/xdemos glxgears glxinfo +pkg_setup() { + MULTILIB_CHOST_TOOLS+=( + /usr/bin/eglinfo + ) - if use egl; then - emake LDLIBS="-lEGL" -C src/egl/opengl/ eglinfo - emake -C src/egl/eglut/ libeglut_x11.la - emake LDLIBS="-lGL -lEGL -lX11 -lm" -C src/egl/opengl/ eglgears_x11 + use X && MULTILIB_CHOST_TOOLS+=( + /usr/bin/glxgears + /usr/bin/glxinfo + ) - if use gles2; then - emake LDLIBS="-lGLESv2 -lEGL -lX11" -C src/egl/opengles2/ es2_info - emake LDLIBS="-lGLESv2 -lEGL -lX11 -lm" -C src/egl/opengles2/ es2gears_x11 - fi - fi -} + use gles2 && use X && MULTILIB_CHOST_TOOLS+=( + /usr/bin/es2_info + /usr/bin/es2gears_x11 + ) -src_install() { - local demo='src/xdemos' - if use egl; then - demo="${demo} src/egl/opengl" - - use gles2 && demo="${demo} src/egl/opengles2" - fi + use gles2 && use wayland && MULTILIB_CHOST_TOOLS+=( + /usr/bin/es2gears_wayland + ) +} - # Ensure only the binaries are installed and not a similarly named wrapper script - find ${demo} -type f -print0 | - xargs -0 file | grep executable | grep ELF | cut -f 1 -d : | - xargs -I '{}' dobin '{}' || die +multilib_src_configure() { + local emesonargs=( + -Dlibdrm=disabled + -Degl=enabled + -Dgles1=disabled + $(meson_feature gles2) + -Dosmesa=disabled + $(meson_feature wayland) + $(meson_feature X x11) + ) + meson_src_configure }