blob: 7c4740b8c3efc9f3c1fdc2c2c91cea8ce6c87167 [file] [log] [blame]
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
MY_PN=Vulkan-Loader
CMAKE_ECLASS="cmake"
inherit flag-o-matic cmake-multilib toolchain-funcs
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
EGIT_SUBMODULES=()
inherit git-r3
else
SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/sdk-${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="*"
S="${WORKDIR}"/${MY_PN}-sdk-${PV}
fi
DESCRIPTION="Vulkan Installable Client Driver (ICD) Loader"
HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Loader"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="layers wayland X"
BDEPEND=">=dev-util/cmake-3.10.2"
DEPEND="
~dev-util/vulkan-headers-${PV}
wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
X? (
x11-libs/libX11:=[${MULTILIB_USEDEP}]
x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
)
"
PDEPEND="layers? ( media-libs/vulkan-layers:=[${MULTILIB_USEDEP}] )"
multilib_src_configure() {
# Integrated clang assembler doesn't work with x86 - Bug #698164
if tc-is-clang && [[ ${ABI} == x86 ]]; then
append-cflags -fno-integrated-as
fi
local mycmakeargs=(
-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG"
-DCMAKE_SKIP_RPATH=ON
-DBUILD_TESTS=OFF
-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
-DBUILD_WSI_XCB_SUPPORT=$(usex X)
-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
-DVULKAN_HEADERS_INSTALL_DIR="${ESYSROOT}/usr"
)
# CHROMIUM (b/201531268): Enable LFS.
append-lfs-flags
cmake_src_configure
}
multilib_src_install() {
keepdir /etc/vulkan/icd.d
cmake_src_install
}
pkg_postinst() {
einfo "USE=demos has been dropped as per upstream packaging"
einfo "vulkaninfo is now available in the dev-util/vulkan-tools package"
}