commit:     ef84f36cb02d0dedb5e393b945c0213e099ab8ba
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 20 18:13:55 2021 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Sep 20 18:13:55 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef84f36c

Revert "sys-devel/llvm-roc: Remove old"

This reverts commit 362024ac2c699a8f0da19fb1777bdd30fd3b99e2.

Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 sys-devel/llvm-roc/Manifest                 |  6 ++
 sys-devel/llvm-roc/llvm-roc-3.10.0.ebuild   | 70 ++++++++++++++++++++++
 sys-devel/llvm-roc/llvm-roc-3.7.0-r1.ebuild | 63 +++++++++++++++++++
 sys-devel/llvm-roc/llvm-roc-3.8.0.ebuild    | 69 +++++++++++++++++++++
 sys-devel/llvm-roc/llvm-roc-3.9.0.ebuild    | 70 ++++++++++++++++++++++
 sys-devel/llvm-roc/llvm-roc-4.0.0-r2.ebuild | 93 +++++++++++++++++++++++++++++
 sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild    | 91 ++++++++++++++++++++++++++++
 sys-devel/llvm-roc/llvm-roc-4.0.1.ebuild    | 93 +++++++++++++++++++++++++++++
 8 files changed, 555 insertions(+)

diff --git a/sys-devel/llvm-roc/Manifest b/sys-devel/llvm-roc/Manifest
index 514a636c941..80142c71322 100644
--- a/sys-devel/llvm-roc/Manifest
+++ b/sys-devel/llvm-roc/Manifest
@@ -1,3 +1,9 @@
+DIST llvm-rocm-ocl-3.10.0.tar.gz 123600166 BLAKE2B 
9b69dab6c7d1a8dfe0d90c76b54446ec7f8ef6e59c74ad328208ac07dbf8836ae412dc5c32fdcbfc926a2488e81cd8afef71c3ebca6cd8ff745205028ab380d8
 SHA512 
3bb7dac13d89cadfb61a231564155f49021437b7c35eae8735b88ceae4a23b7950643f17e3bfebb0868621297202a04d41120d50ea52b6ad8980dabe9bc75509
+DIST llvm-rocm-ocl-3.7.0.tar.gz 116973132 BLAKE2B 
c1cc8a3b95292d726626d3cb59ec1b96549682bfcbec16030e47cf1318c6ea01bc76f3349f012ce4f1e4d8b9fe192c51a025c2d08cf593622c61fe7c61969ba6
 SHA512 
0626075bedb3898c96c0bb0be7a2aba4662050a1c738115f661bedc03d744ace7a4581b55c6325060740c13a0e50e72e09272bb02c1186c2c4a40fc9b961dcbe
+DIST llvm-rocm-ocl-3.8.0.tar.gz 117004300 BLAKE2B 
13c3213f0fb951fb9d574e8f6d76bb6c632fecadfe93dbe68a9720baa22e35aa3269deef8b533c5a5ff50a2c1ee3dd7a1ea0fae4b8ab8573ec5bfc5ca5d04f4f
 SHA512 
4eca387a132c9d1237ebec7c80319e99c80088766209d05a697d09890f4a82c56ba5f48a5c8c8749bb051c177bb5eab67e00405b04d3191681d0ac7cf1ae868c
+DIST llvm-rocm-ocl-3.9.0.tar.gz 123591368 BLAKE2B 
54b44d705e7704921df1914bac6dc1da8e420f9383efb698a9cf6a339b653d71cad29aa077a9e24d6764ca81fb8dc55fa70abb0cfac004d40f7d811e20ec9945
 SHA512 
3404390506b33c1de1d05980fafb219692985f38b52d852e9a47ab94e57228caa25ccd0d0d69da656281de32c75e001f60cb9f22453e70fea7b39d065d4333af
+DIST llvm-rocm-ocl-4.0.0.tar.gz 123595983 BLAKE2B 
69dd47a50a53cf7d8168f872778bcda0e028907c2341b165f40152bdf03b668ee6c209dc60fa1018dde2a946d891f15eb92a38cfbc12bb5798dd132c1ce79bf1
 SHA512 
2ac3d643e0bee72239089003cd2889711a7cd58dc588467fb0ca0a50bec264fda992aa2e3352d5210011a9dc1eea4dd9eacdc7d0c313cd69c7b491df126a4e4e
+DIST llvm-rocm-ocl-4.0.1.tar.gz 123608276 BLAKE2B 
dd5a4d6bc198c7fb6fdc2514cd8c4533a2df6ded7a574c9b4762cda3cb65498a464a0e78427db94db05b468a29ce78d3d8131ac7c6e42953fc503896732474e3
 SHA512 
d23dceaee2badf46cda27aa725bce5b82bab2fba7d1c2220fedb4795eee455de5077b4ff7299ecd6850eeb0bbdb131ea12a699357f373aef818758d845550f04
 DIST llvm-rocm-ocl-4.1.0.tar.gz 128913932 BLAKE2B 
15a041ec7b9fec91e409c8ab98ff88f2d15ce58822aa8a77a26ff21416378a4a77a5904fce4e26c5447653da4ec2dbbb5bfec4ae70c72e8e64b2a5f5986ffb92
 SHA512 
8576e5a43754a9587613f166dc6cad18890812f07bfa55e563ab3de150b6f01ae1b5515aaaf4eef238a7f79e87890533ce791ef07528e4557ea8290c2642ebd3
 DIST llvm-rocm-ocl-4.1.1.tar.gz 128914019 BLAKE2B 
9806d1da497e9d9864fd015fc92f5e2d8a6077315d96538064357a38347bc9180948c65cdca9e29574b40f8df62c0660762731564822ac9e8b5364bebf016e43
 SHA512 
0e4c6b9b0c0330d58616f22d8ec6ebdd6c83aef9ce9968765ac56c022bcd76cba8af5a6cdfb47ed560b33cd67832ac5b026502357af6caec4ab699f1443163fd
 DIST llvm-rocm-ocl-4.2.0.tar.gz 132337711 BLAKE2B 
f08781f881f2853cd551828ef9190c1253e33ca1bfb13aac790b6484838fe5481be9519609ea9cf4bc09a6c8631c54a567123dfe97c25498c51c464d215049de
 SHA512 
694c37c707c84d18cddb92054d8d59e1eea82c9c9928d0111992cbae1421d6bb614a0889891993b444a821c35fa6e91c801ac8555761c2cd0803f89981475952

diff --git a/sys-devel/llvm-roc/llvm-roc-3.10.0.ebuild 
b/sys-devel/llvm-roc/llvm-roc-3.10.0.ebuild
new file mode 100644
index 00000000000..399b74cc8ee
--- /dev/null
+++ b/sys-devel/llvm-roc/llvm-roc-3.10.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Radeon Open Compute llvm,lld,clang"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/";
+SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz
 -> llvm-rocm-ocl-${PV}.tar.gz"
+
+LICENSE="UoI-NCSA rc BSD public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug runtime"
+
+RDEPEND="virtual/cblas
+       dev-libs/libxml2
+       sys-libs/zlib
+       sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/llvm-project-rocm-${PV}/llvm"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.7.0-current_pos.patch"
+       "${FILESDIR}/${PN}-3.9.0-tensorflow.patch"
+)
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+       cd "${WORKDIR}/llvm-project-rocm-${PV}" || die
+       eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch"
+       eapply_user
+       cmake_src_prepare
+}
+
+src_configure() {
+       PROJECTS="clang;lld"
+
+       if usex runtime; then
+               PROJECTS+=";compiler-rt"
+       fi
+
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc"
+               -DLLVM_ENABLE_PROJECTS="${PROJECTS}"
+               -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86"
+               -DLLVM_BUILD_DOCS=NO
+               -DLLVM_ENABLE_OCAMLDOC=OFF
+               -DLLVM_ENABLE_SPHINX=NO
+               -DLLVM_ENABLE_DOXYGEN=OFF
+               -DLLVM_INSTALL_UTILS=ON
+               -DLLVM_VERSION_SUFFIX=roc
+               -DOCAMLFIND=NO
+       )
+
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       cat > "99${PN}" <<-EOF
+               LDPATH="${EROOT}/usr/lib/llvm/roc/lib"
+       EOF
+       doenvd "99${PN}"
+}

diff --git a/sys-devel/llvm-roc/llvm-roc-3.7.0-r1.ebuild 
b/sys-devel/llvm-roc/llvm-roc-3.7.0-r1.ebuild
new file mode 100644
index 00000000000..9e5adf08c00
--- /dev/null
+++ b/sys-devel/llvm-roc/llvm-roc-3.7.0-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Radeon Open Compute llvm,lld,clang"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/";
+SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz
 -> llvm-rocm-ocl-${PV}.tar.gz"
+
+LICENSE="UoI-NCSA rc BSD public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug"
+
+RDEPEND="virtual/cblas
+       dev-libs/libxml2
+       sys-libs/zlib
+       sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/llvm-project-rocm-${PV}/llvm"
+
+PATCHES=(
+       "${FILESDIR}/${P}-current_pos.patch"
+)
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+       cd "${WORKDIR}/llvm-project-rocm-${PV}" || die
+       eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch"
+       eapply_user
+       cmake_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc"
+               -DLLVM_ENABLE_PROJECTS="clang;lld"
+               -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86"
+               -DLLVM_BUILD_DOCS=NO
+               -DLLVM_ENABLE_OCAMLDOC=OFF
+               -DLLVM_ENABLE_SPHINX=NO
+               -DLLVM_ENABLE_DOXYGEN=OFF
+               -DLLVM_INSTALL_UTILS=ON
+               -DLLVM_VERSION_SUFFIX=roc
+               -DOCAMLFIND=NO
+       )
+
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       cat > "99${PN}" <<-EOF
+               LDPATH="${EROOT}/usr/lib/llvm/roc/lib"
+       EOF
+       doenvd "99${PN}"
+}

diff --git a/sys-devel/llvm-roc/llvm-roc-3.8.0.ebuild 
b/sys-devel/llvm-roc/llvm-roc-3.8.0.ebuild
new file mode 100644
index 00000000000..69223b7e04a
--- /dev/null
+++ b/sys-devel/llvm-roc/llvm-roc-3.8.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Radeon Open Compute llvm,lld,clang"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/";
+SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz
 -> llvm-rocm-ocl-${PV}.tar.gz"
+
+LICENSE="UoI-NCSA rc BSD public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug runtime"
+
+RDEPEND="virtual/cblas
+       dev-libs/libxml2
+       sys-libs/zlib
+       sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/llvm-project-rocm-${PV}/llvm"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.7.0-current_pos.patch"
+)
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+       cd "${WORKDIR}/llvm-project-rocm-${PV}" || die
+       eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch"
+       eapply_user
+       cmake_src_prepare
+}
+
+src_configure() {
+       PROJECTS="clang;lld"
+
+       if usex runtime; then
+               PROJECTS+=";compiler-rt"
+       fi
+
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc"
+               -DLLVM_ENABLE_PROJECTS="${PROJECTS}"
+               -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86"
+               -DLLVM_BUILD_DOCS=NO
+               -DLLVM_ENABLE_OCAMLDOC=OFF
+               -DLLVM_ENABLE_SPHINX=NO
+               -DLLVM_ENABLE_DOXYGEN=OFF
+               -DLLVM_INSTALL_UTILS=ON
+               -DLLVM_VERSION_SUFFIX=roc
+               -DOCAMLFIND=NO
+       )
+
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       cat > "99${PN}" <<-EOF
+               LDPATH="${EROOT}/usr/lib/llvm/roc/lib"
+       EOF
+       doenvd "99${PN}"
+}

diff --git a/sys-devel/llvm-roc/llvm-roc-3.9.0.ebuild 
b/sys-devel/llvm-roc/llvm-roc-3.9.0.ebuild
new file mode 100644
index 00000000000..6dd5e75e047
--- /dev/null
+++ b/sys-devel/llvm-roc/llvm-roc-3.9.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Radeon Open Compute llvm,lld,clang"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/";
+SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz
 -> llvm-rocm-ocl-${PV}.tar.gz"
+
+LICENSE="UoI-NCSA rc BSD public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug runtime"
+
+RDEPEND="virtual/cblas
+       dev-libs/libxml2
+       sys-libs/zlib
+       sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/llvm-project-rocm-${PV}/llvm"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.7.0-current_pos.patch"
+       "${FILESDIR}/${P}-tensorflow.patch"
+)
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+       cd "${WORKDIR}/llvm-project-rocm-${PV}" || die
+       eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch"
+       eapply_user
+       cmake_src_prepare
+}
+
+src_configure() {
+       PROJECTS="clang;lld"
+
+       if usex runtime; then
+               PROJECTS+=";compiler-rt"
+       fi
+
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc"
+               -DLLVM_ENABLE_PROJECTS="${PROJECTS}"
+               -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86"
+               -DLLVM_BUILD_DOCS=NO
+               -DLLVM_ENABLE_OCAMLDOC=OFF
+               -DLLVM_ENABLE_SPHINX=NO
+               -DLLVM_ENABLE_DOXYGEN=OFF
+               -DLLVM_INSTALL_UTILS=ON
+               -DLLVM_VERSION_SUFFIX=roc
+               -DOCAMLFIND=NO
+       )
+
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       cat > "99${PN}" <<-EOF
+               LDPATH="${EROOT}/usr/lib/llvm/roc/lib"
+       EOF
+       doenvd "99${PN}"
+}

diff --git a/sys-devel/llvm-roc/llvm-roc-4.0.0-r2.ebuild 
b/sys-devel/llvm-roc/llvm-roc-4.0.0-r2.ebuild
new file mode 100644
index 00000000000..1c7a0fec017
--- /dev/null
+++ b/sys-devel/llvm-roc/llvm-roc-4.0.0-r2.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Radeon Open Compute llvm,lld,clang"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/";
+SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz
 -> llvm-rocm-ocl-${PV}.tar.gz"
+
+LICENSE="UoI-NCSA rc BSD public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug +runtime"
+
+RDEPEND="virtual/cblas
+       dev-libs/libxml2
+       sys-libs/zlib
+       sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/llvm-project-rocm-${PV}/llvm"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.7.0-current_pos.patch"
+       "${FILESDIR}/${PN}-3.9.0-tensorflow.patch"
+)
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+       cd "${WORKDIR}/llvm-project-rocm-${PV}" || die
+       eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch"
+       eapply "${FILESDIR}/${PN}-4.0.0-remove-isystem-usr-include.patch"
+       eapply "${FILESDIR}/${PN}-4.0.0-hip-location.patch"
+
+       if [[ -n ${EPREFIX} ]]; then
+               pushd "${S}"/../clang >/dev/null || die
+               sed -i -e "s@DEFAULT_SYSROOT \"\"@DEFAULT_SYSROOT 
\"${EPREFIX}\"@" CMakeLists.txt
+               eend $?
+               ebegin "Use "${EPREFIX}" as default sysroot"
+               cd lib/Driver/ToolChains >/dev/null || die
+               ebegin "Use dynamic linker from ${EPREFIX}"
+               sed -i -e "/LibDir.*Loader/s@return \"\/\"@return 
\"${EPREFIX}/\"@" Linux.cpp
+               eend $?
+
+               ebegin "Remove --sysroot call on ld for native toolchain"
+               sed -i -e "$(grep -n -B1 sysroot= Gnu.cpp | sed -ne 
'{1s/-.*//;1p}'),+1 d" Gnu.cpp
+               eend $?
+               popd >/dev/null || die
+       fi
+
+       # handled by sysroot, don't prefixify here.
+       sed -e 's:/opt/rocm:/usr/lib/hip:' \
+               -i "${S}"/../clang/lib/Driver/ToolChains/AMDGPU.cpp
+
+       eapply_user
+       cmake_src_prepare
+}
+
+src_configure() {
+       PROJECTS="clang;lld"
+
+       if usex runtime; then
+               PROJECTS+=";compiler-rt"
+       fi
+
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc"
+               -DLLVM_ENABLE_PROJECTS="${PROJECTS}"
+               -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86"
+               -DLLVM_BUILD_DOCS=NO
+               -DLLVM_ENABLE_OCAMLDOC=OFF
+               -DLLVM_ENABLE_SPHINX=NO
+               -DLLVM_ENABLE_DOXYGEN=OFF
+               -DLLVM_INSTALL_UTILS=ON
+               -DLLVM_VERSION_SUFFIX=roc
+               -DOCAMLFIND=NO
+       )
+
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       cat > "99${PN}" <<-EOF
+               LDPATH="${EROOT}/usr/lib/llvm/roc/lib"
+       EOF
+       doenvd "99${PN}"
+}

diff --git a/sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild 
b/sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild
new file mode 100644
index 00000000000..3967ddabbea
--- /dev/null
+++ b/sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Radeon Open Compute llvm,lld,clang"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/";
+SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz
 -> llvm-rocm-ocl-${PV}.tar.gz"
+
+LICENSE="UoI-NCSA rc BSD public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug runtime"
+
+RDEPEND="virtual/cblas
+       dev-libs/libxml2
+       sys-libs/zlib
+       sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/llvm-project-rocm-${PV}/llvm"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.7.0-current_pos.patch"
+       "${FILESDIR}/${PN}-3.9.0-tensorflow.patch"
+)
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+       cd "${WORKDIR}/llvm-project-rocm-${PV}" || die
+       eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch"
+
+       if [[ -n ${EPREFIX} ]]; then
+               pushd "${S}"/../clang >/dev/null || die
+               sed -i -e "s@DEFAULT_SYSROOT \"\"@DEFAULT_SYSROOT 
\"${EPREFIX}\"@" CMakeLists.txt
+               eend $?
+
+               ebegin "Use "${EPREFIX}" as default sysroot"
+               cd lib/Driver/ToolChains >/dev/null || die
+               ebegin "Use dynamic linker from ${EPREFIX}"
+               sed -i -e "/LibDir.*Loader/s@return \"\/\"@return 
\"${EPREFIX}/\"@" Linux.cpp
+               eend $?
+
+               ebegin "Remove --sysroot call on ld for native toolchain"
+               sed -i -e "$(grep -n -B1 sysroot= Gnu.cpp | sed -ne 
'{1s/-.*//;1p}'),+1 d" Gnu.cpp
+               eend $?
+               popd >/dev/null || die
+       fi
+
+       sed -e 's:/opt/rocm:/usr/lib/hip:' \
+               -i "${S}"/../clang/lib/Driver/ToolChains/AMDGPU.cpp
+
+       eapply_user
+       cmake_src_prepare
+}
+
+src_configure() {
+       PROJECTS="clang;lld"
+
+       if usex runtime; then
+               PROJECTS+=";compiler-rt"
+       fi
+
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc"
+               -DLLVM_ENABLE_PROJECTS="${PROJECTS}"
+               -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86"
+               -DLLVM_BUILD_DOCS=NO
+               -DLLVM_ENABLE_OCAMLDOC=OFF
+               -DLLVM_ENABLE_SPHINX=NO
+               -DLLVM_ENABLE_DOXYGEN=OFF
+               -DLLVM_INSTALL_UTILS=ON
+               -DLLVM_VERSION_SUFFIX=roc
+               -DOCAMLFIND=NO
+       )
+
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       cat > "99${PN}" <<-EOF
+               LDPATH="${EROOT}/usr/lib/llvm/roc/lib"
+       EOF
+       doenvd "99${PN}"
+}

diff --git a/sys-devel/llvm-roc/llvm-roc-4.0.1.ebuild 
b/sys-devel/llvm-roc/llvm-roc-4.0.1.ebuild
new file mode 100644
index 00000000000..1c7a0fec017
--- /dev/null
+++ b/sys-devel/llvm-roc/llvm-roc-4.0.1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Radeon Open Compute llvm,lld,clang"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/";
+SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz
 -> llvm-rocm-ocl-${PV}.tar.gz"
+
+LICENSE="UoI-NCSA rc BSD public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug +runtime"
+
+RDEPEND="virtual/cblas
+       dev-libs/libxml2
+       sys-libs/zlib
+       sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/llvm-project-rocm-${PV}/llvm"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.7.0-current_pos.patch"
+       "${FILESDIR}/${PN}-3.9.0-tensorflow.patch"
+)
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+       cd "${WORKDIR}/llvm-project-rocm-${PV}" || die
+       eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch"
+       eapply "${FILESDIR}/${PN}-4.0.0-remove-isystem-usr-include.patch"
+       eapply "${FILESDIR}/${PN}-4.0.0-hip-location.patch"
+
+       if [[ -n ${EPREFIX} ]]; then
+               pushd "${S}"/../clang >/dev/null || die
+               sed -i -e "s@DEFAULT_SYSROOT \"\"@DEFAULT_SYSROOT 
\"${EPREFIX}\"@" CMakeLists.txt
+               eend $?
+               ebegin "Use "${EPREFIX}" as default sysroot"
+               cd lib/Driver/ToolChains >/dev/null || die
+               ebegin "Use dynamic linker from ${EPREFIX}"
+               sed -i -e "/LibDir.*Loader/s@return \"\/\"@return 
\"${EPREFIX}/\"@" Linux.cpp
+               eend $?
+
+               ebegin "Remove --sysroot call on ld for native toolchain"
+               sed -i -e "$(grep -n -B1 sysroot= Gnu.cpp | sed -ne 
'{1s/-.*//;1p}'),+1 d" Gnu.cpp
+               eend $?
+               popd >/dev/null || die
+       fi
+
+       # handled by sysroot, don't prefixify here.
+       sed -e 's:/opt/rocm:/usr/lib/hip:' \
+               -i "${S}"/../clang/lib/Driver/ToolChains/AMDGPU.cpp
+
+       eapply_user
+       cmake_src_prepare
+}
+
+src_configure() {
+       PROJECTS="clang;lld"
+
+       if usex runtime; then
+               PROJECTS+=";compiler-rt"
+       fi
+
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc"
+               -DLLVM_ENABLE_PROJECTS="${PROJECTS}"
+               -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86"
+               -DLLVM_BUILD_DOCS=NO
+               -DLLVM_ENABLE_OCAMLDOC=OFF
+               -DLLVM_ENABLE_SPHINX=NO
+               -DLLVM_ENABLE_DOXYGEN=OFF
+               -DLLVM_INSTALL_UTILS=ON
+               -DLLVM_VERSION_SUFFIX=roc
+               -DOCAMLFIND=NO
+       )
+
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       cat > "99${PN}" <<-EOF
+               LDPATH="${EROOT}/usr/lib/llvm/roc/lib"
+       EOF
+       doenvd "99${PN}"
+}

Reply via email to