summaryrefslogtreecommitdiff
path: root/dev-util/vulkan-tools/vulkan-tools-9999.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/vulkan-tools/vulkan-tools-9999.ebuild')
-rw-r--r--dev-util/vulkan-tools/vulkan-tools-9999.ebuild95
1 files changed, 41 insertions, 54 deletions
diff --git a/dev-util/vulkan-tools/vulkan-tools-9999.ebuild b/dev-util/vulkan-tools/vulkan-tools-9999.ebuild
index 70535b3958e7..1d6d8e74d61e 100644
--- a/dev-util/vulkan-tools/vulkan-tools-9999.ebuild
+++ b/dev-util/vulkan-tools/vulkan-tools-9999.ebuild
@@ -2,93 +2,80 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{6,7} )
-if [[ "${PV}" == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/KhronosGroup/Vulkan-Tools.git"
+MY_PN=Vulkan-Tools
+CMAKE_ECLASS="cmake"
+PYTHON_COMPAT=( python3_{6,7,8} )
+inherit cmake-multilib python-any-r1
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
EGIT_SUBMODULES=()
inherit git-r3
else
- EGIT_COMMIT="119e7c3bbae122f6cc5d778d068fb91e0e85d6a9"
+ SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~ppc64"
- SRC_URI="https://github.com/KhronosGroup/Vulkan-Tools/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/Vulkan-Tools-${EGIT_COMMIT}"
+ S="${WORKDIR}"/${MY_PN}-${PV}
fi
-inherit python-any-r1 cmake-multilib
-
DESCRIPTION="Official Vulkan Tools and Utilities for Windows, Linux, Android, and MacOS"
HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Tools"
LICENSE="Apache-2.0"
SLOT="0"
-IUSE="+cube +vulkaninfo +X wayland"
-COMMON_DEPEND=">=media-libs/vulkan-loader-1.1.125:=[${MULTILIB_USEDEP},wayland?,X?]
+IUSE="cube wayland +X"
+
+# Cube demo only supports one window system at a time
+REQUIRED_USE="!cube? ( || ( X wayland ) ) cube? ( ^^ ( X wayland ) )"
+
+BDEPEND="${PYTHON_DEPS}
+ >=dev-util/cmake-3.10.2
+ cube? ( dev-util/glslang:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="
+ >=media-libs/vulkan-loader-${PV}:=[${MULTILIB_USEDEP},wayland?,X?]
wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
X? (
x11-libs/libX11:=[${MULTILIB_USEDEP}]
x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
- )"
-
-BDEPEND="${PYTHON_DEPS}
- cube? ( dev-util/glslang:=[${MULTILIB_USEDEP}] )"
-DEPEND=">=dev-util/vulkan-headers-1.1.125
- ${COMMON_DEPEND}"
-RDEPEND="${COMMON_DEPEND}"
-
-# Vulkaninfo does not support wayland
-REQUIRED_USE="|| ( X wayland )
- vulkaninfo? ( X )"
+ )
+"
+DEPEND="${RDEPEND}
+ >=dev-util/vulkan-headers-${PV}
+"
pkg_setup() {
- MULTILIB_CHOST_TOOLS=()
-
- if use vulkaninfo; then
- MULTILIB_CHOST_TOOLS+=( /usr/bin/vulkaninfo )
- fi
+ MULTILIB_CHOST_TOOLS=(
+ /usr/bin/vulkaninfo
+ )
- if use cube; then
- MULTILIB_CHOST_TOOLS+=(
- /usr/bin/vkcube
- /usr/bin/vkcubepp
- )
- fi
+ use cube && MULTILIB_CHOST_TOOLS+=(
+ /usr/bin/vkcube
+ /usr/bin/vkcubepp
+ )
python-any-r1_pkg_setup
}
multilib_src_configure() {
local mycmakeargs=(
- -DCMAKE_SKIP_RPATH=True
+ -DCMAKE_SKIP_RPATH=ON
+ -DBUILD_VULKANINFO=ON
-DBUILD_CUBE=$(usex cube)
- -DBUILD_VULKANINFO=$(usex vulkaninfo)
-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
-DBUILD_WSI_XCB_SUPPORT=$(usex X)
-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
- -DGLSLANG_INSTALL_DIR="/usr"
- -DVULKAN_HEADERS_INSTALL_DIR="/usr"
+ -DVULKAN_HEADERS_INSTALL_DIR="${EPREFIX}/usr"
)
- # Upstream only supports one window system at a time
- # If X is set at all, even if wayland is set, use X
- #
- # If -cube and/or -vulkaninfo is set, the flags we set
- # are ignored, so we don't need to consider that
- if use X; then
- mycmakeargs+=(
- -DCUBE_WSI_SELECTION="XCB"
- )
- fi
-
- if ! use X && use wayland; then
- mycmakeargs+=(
- -DCUBE_WSI_SELECTION="WAYLAND"
- )
- fi
+ use cube && mycmakeargs+=(
+ -DGLSLANG_INSTALL_DIR="${EPREFIX}/usr"
+ -DCUBE_WSI_SELECTION=$(usex X XCB WAYLAND)
+ )
- cmake-utils_src_configure
+ cmake_src_configure
}
multilib_src_install() {
- cmake-utils_src_install
+ cmake_src_install
}