From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-commits+bounces-1028678-garchives=archives.gentoo.org@lists.gentoo.org> Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 0FCAB138334 for <garchives@archives.gentoo.org>; Fri, 8 Jun 2018 04:16:55 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id ACF22E0AFC; Fri, 8 Jun 2018 04:16:50 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7CEF7E0ADA for <gentoo-commits@lists.gentoo.org>; Fri, 8 Jun 2018 04:16:50 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 01E2B335C9C for <gentoo-commits@lists.gentoo.org>; Fri, 8 Jun 2018 04:16:48 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 4E73B2C8 for <gentoo-commits@lists.gentoo.org>; Fri, 8 Jun 2018 04:16:46 +0000 (UTC) From: "Matt Turner" <mattst88@gentoo.org> 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" <mattst88@gentoo.org> Message-ID: <1528431392.f7854dec88e0126fbe6a29b7a53d67e0917cc610.mattst88@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/mesa/ X-VCS-Repository: repo/gentoo X-VCS-Files: media-libs/mesa/mesa-9999.ebuild X-VCS-Directories: media-libs/mesa/ X-VCS-Committer: mattst88 X-VCS-Committer-Name: Matt Turner X-VCS-Revision: f7854dec88e0126fbe6a29b7a53d67e0917cc610 X-VCS-Branch: master Date: Fri, 8 Jun 2018 04:16:46 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 654d78eb-3a5a-4082-9fe8-917fc74d9555 X-Archives-Hash: 1cf15bdce0fe4d787cbd3d329cf542a0 commit: f7854dec88e0126fbe6a29b7a53d67e0917cc610 Author: Matt Turner <mattst88 <AT> gentoo <DOT> org> AuthorDate: Fri Jun 8 00:16:25 2018 +0000 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org> CommitDate: Fri Jun 8 04:16:32 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f7854dec media-libs/mesa: Simplify driver selection code media-libs/mesa/mesa-9999.ebuild | 70 +++++++++++++--------------------------- 1 file changed, 22 insertions(+), 48 deletions(-) diff --git a/media-libs/mesa/mesa-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild index e9bfa80a319..cb3e9ee26bb 100644 --- a/media-libs/mesa/mesa-9999.ebuild +++ b/media-libs/mesa/mesa-9999.ebuild @@ -351,13 +351,18 @@ multilib_src_configure() { fi if use gallium; then - gallium_enable swrast + GALLIUM_DRIVERS+="swrast " emesonargs+=( -Dosmesa=$(usex osmesa gallium none) ) else - dri_driver_enable swrast + DRI_DRIVERS+="swrast " emesonargs+=( -Dosmesa=$(usex osmesa classic none) ) fi + driver_list() { + arr=($(printf "%s\n" "$@" | sort -u | tr '\n' ',')) + echo "${arr: : -1}" + } + emesonargs+=( -Dbuild-tests=$(usex test true false) -Dglx=dri @@ -372,9 +377,9 @@ multilib_src_configure() { -Dlibunwind=$(usex unwind true false) -Dlmsensors=$(usex lm_sensors true false) -Dvalgrind=$(usex valgrind auto false) - -Ddri-drivers=${DRI_DRIVERS} - -Dgallium-drivers=${GALLIUM_DRIVERS} - -Dvulkan-drivers=${VULKAN_DRIVERS} + -Ddri-drivers=$(driver_list ${DRI_DRIVERS}) + -Dgallium-drivers=$(driver_list ${GALLIUM_DRIVERS}) + -Dvulkan-drivers=$(driver_list ${VULKAN_DRIVERS}) ) meson_src_configure } @@ -455,54 +460,23 @@ pkg_prerm() { # $1 - VIDEO_CARDS flag # other args - names of DRI drivers to enable -# TODO: avoid code duplication for a more elegant implementation dri_driver_enable() { - case $# in - # for enabling unconditionally - 1) - DRI_DRIVERS+=",$1" - ;; - *) - if use $1; then - shift - for i in $@; do - DRI_DRIVERS+=",${i}" - done - fi - ;; - esac + if use $1; then + shift + DRI_DRIVERS+="$@ " + fi } gallium_enable() { - case $# in - # for enabling unconditionally - 1) - GALLIUM_DRIVERS+=",$1" - ;; - *) - if use $1; then - shift - for i in $@; do - GALLIUM_DRIVERS+=",${i}" - done - fi - ;; - esac + if use $1; then + shift + GALLIUM_DRIVERS+="$@ " + fi } vulkan_enable() { - case $# in - # for enabling unconditionally - 1) - VULKAN_DRIVERS+=",$1" - ;; - *) - if use $1; then - shift - for i in $@; do - VULKAN_DRIVERS+=",${i}" - done - fi - ;; - esac + if use $1; then + shift + VULKAN_DRIVERS+="$@ " + fi }