From 9c56c3f7767d7f6b9b429600b96b3e518b5dd046 Mon Sep 17 00:00:00 2001 From: Marek Szuba Date: Thu, 24 Sep 2020 14:08:09 +0200 Subject: dev-libs/opencl-clang:10: force rebuild on clang .0->.1 update Works around Bug #743992. Hopefully LLVM upstream will not make introducing breaking ABI changes in new patch releases a habit and such hackery will not be required in the future. Closes: https://bugs.gentoo.org/743992 Signed-off-by: Marek Szuba --- .../opencl-clang/opencl-clang-10.0.0.1-r1.ebuild | 42 +++++++++++++++++++++ .../opencl-clang/opencl-clang-10.0.0.2-r1.ebuild | 43 ++++++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 dev-libs/opencl-clang/opencl-clang-10.0.0.1-r1.ebuild create mode 100644 dev-libs/opencl-clang/opencl-clang-10.0.0.2-r1.ebuild (limited to 'dev-libs/opencl-clang') diff --git a/dev-libs/opencl-clang/opencl-clang-10.0.0.1-r1.ebuild b/dev-libs/opencl-clang/opencl-clang-10.0.0.1-r1.ebuild new file mode 100644 index 000000000000..362abf92b92f --- /dev/null +++ b/dev-libs/opencl-clang/opencl-clang-10.0.0.1-r1.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake +inherit cmake-multilib llvm + +MY_PV="$(ver_rs 3 -)" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="OpenCL-oriented thin wrapper library around clang" +HOMEPAGE="https://github.com/intel/opencl-clang" +SRC_URI="https://github.com/intel/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="UoI-NCSA" +SLOT="10" +KEYWORDS="~amd64" + +S="${WORKDIR}/${MY_P}" + +# Force a rebuild of this package once clang has been updated from 10.0.0 to 10.0.1 +# in order to work around Bug #743992. Hopefully a one-time thing. +DEPEND="~sys-devel/clang-10.0.1:10=[static-analyzer,${MULTILIB_USEDEP}] + sys-devel/llvm:10=[${MULTILIB_USEDEP}] + dev-util/spirv-llvm-translator:10=[${MULTILIB_USEDEP}]" +RDEPEND="${DEPEND}" + +LLVM_MAX_SLOT=10 + +PATCHES=( + "${FILESDIR}"/${PN}-8.0.0-clang_library_dir.patch + "${FILESDIR}"/${PN}-10.0.0.1_find-llvm-tblgen.patch +) + +multilib_src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix ${LLVM_MAX_SLOT})" + -DCLANG_LIBRARY_DIRS="${EPREFIX}"/usr/lib/clang + ) + cmake_src_configure +} diff --git a/dev-libs/opencl-clang/opencl-clang-10.0.0.2-r1.ebuild b/dev-libs/opencl-clang/opencl-clang-10.0.0.2-r1.ebuild new file mode 100644 index 000000000000..1c81dddfcdf5 --- /dev/null +++ b/dev-libs/opencl-clang/opencl-clang-10.0.0.2-r1.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake + +inherit cmake-multilib llvm + +MY_PV="$(ver_rs 3 -)" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="OpenCL-oriented thin wrapper library around clang" +HOMEPAGE="https://github.com/intel/opencl-clang" +SRC_URI="https://github.com/intel/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="UoI-NCSA" +SLOT="10" +KEYWORDS="~amd64" + +S="${WORKDIR}/${MY_P}" + +# Force a rebuild of this package once clang has been updated from 10.0.0 to 10.0.1 +# in order to work around Bug #743992. Hopefully a one-time thing. +DEPEND="~sys-devel/clang-10.0.1:10=[static-analyzer,${MULTILIB_USEDEP}] + sys-devel/llvm:10=[${MULTILIB_USEDEP}] + >=dev-util/spirv-llvm-translator-10.0.0_p20200909:10=[${MULTILIB_USEDEP}]" +RDEPEND="${DEPEND}" + +LLVM_MAX_SLOT=10 + +PATCHES=( + "${FILESDIR}"/${PN}-8.0.0-clang_library_dir.patch + "${FILESDIR}"/${PN}-10.0.0.1_find-llvm-tblgen.patch +) + +multilib_src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix ${LLVM_MAX_SLOT})" + -DCLANG_LIBRARY_DIRS="${EPREFIX}"/usr/lib/clang + ) + cmake_src_configure +} -- cgit v1.2.3-65-gdbad