summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2020-09-24 14:08:09 +0200
committerMarek Szuba <marecki@gentoo.org>2020-09-24 14:11:02 +0200
commit9c56c3f7767d7f6b9b429600b96b3e518b5dd046 (patch)
tree3647f90cb1147c74032b880b8e901a7b7551522c /dev-libs/opencl-clang
parentapp-admin/mcelog: bump to 173 (diff)
downloadgentoo-9c56c3f7767d7f6b9b429600b96b3e518b5dd046.tar.gz
gentoo-9c56c3f7767d7f6b9b429600b96b3e518b5dd046.tar.bz2
gentoo-9c56c3f7767d7f6b9b429600b96b3e518b5dd046.zip
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 <marecki@gentoo.org>
Diffstat (limited to 'dev-libs/opencl-clang')
-rw-r--r--dev-libs/opencl-clang/opencl-clang-10.0.0.1-r1.ebuild42
-rw-r--r--dev-libs/opencl-clang/opencl-clang-10.0.0.2-r1.ebuild43
2 files changed, 85 insertions, 0 deletions
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
+}