public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Marek Szuba" <marecki@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/amdgpu-pro-opencl/
Date: Tue, 27 Jun 2017 10:58:01 +0000 (UTC)	[thread overview]
Message-ID: <1498561067.777fd2b49b77f17662acc160bc734c51fd626cd7.marecki@gentoo> (raw)

commit:     777fd2b49b77f17662acc160bc734c51fd626cd7
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 27 10:52:24 2017 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Tue Jun 27 10:57:47 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=777fd2b4

dev-libs/amdgpu-pro-opencl: new package

Bits of AMDGPU-Pro providing OpenCL support. Work fine with the Open Source
amdgpu stack, the only catch is that one also needs the proprietary version of
libdrm_amdgpu which could conflict with the one from x11-libs/libdrm.
Fortunately, this can be easily worked around by hacking rpath of the OpenCL
library. Will hopefull integrate well with the rest of AMDGPU-Pro once it has
made it into the tree.

Please note that this driver works ONLY when loaded by dev-libs/ocl-icd;
there is no possibility for it to operate as an independent implementation.

For the time being this is a 64-bit only package. That said, although AMD
only supports AMDGPU-Pro on amd64 the driver pack does include 32-bit binaries
 - so multilib support might be added later.

Inspired-By: Arch Linux opencl-amd AUR package

Package-Manager: Portage-2.3.6, Repoman-2.3.1

 dev-libs/amdgpu-pro-opencl/Manifest                |  1 +
 .../amdgpu-pro-opencl-17.10.429170.ebuild          | 67 ++++++++++++++++++++++
 dev-libs/amdgpu-pro-opencl/metadata.xml            | 14 +++++
 3 files changed, 82 insertions(+)

diff --git a/dev-libs/amdgpu-pro-opencl/Manifest b/dev-libs/amdgpu-pro-opencl/Manifest
new file mode 100644
index 00000000000..728950f3c6a
--- /dev/null
+++ b/dev-libs/amdgpu-pro-opencl/Manifest
@@ -0,0 +1 @@
+DIST amdgpu-pro-17.10-429170.tar.xz 121382128 SHA256 cb1ea7f9756f197a976138d2c00f239ae4ee43b839fbb1ea57f8770957d4afd6 SHA512 2d9d0a97478564e259dc8494083df8dc13e3bc664384978aff369070b1105703653d8dc4dca38e94dc8bdf3ddfb5c6f4de39cec5a9b263423de8fb91fd0117c6 WHIRLPOOL 1e07579d2c9d5d8a796973658cbb6627418b133a630ca5e977f93da0d27b900da2078d2ea8b35a13071b0b05e3d5e7f47e17d61042dcca60709f6599c18380a2

diff --git a/dev-libs/amdgpu-pro-opencl/amdgpu-pro-opencl-17.10.429170.ebuild b/dev-libs/amdgpu-pro-opencl/amdgpu-pro-opencl-17.10.429170.ebuild
new file mode 100644
index 00000000000..c75b64c1091
--- /dev/null
+++ b/dev-libs/amdgpu-pro-opencl/amdgpu-pro-opencl-17.10.429170.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit unpacker versionator
+
+SUPER_PN='amdgpu-pro'
+MY_PV=$(replace_version_separator 2 '-')
+
+DESCRIPTION="Proprietary OpenCL implementation for AMD GPUs"
+HOMEPAGE="https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx"
+SRC_URI="${SUPER_PN}-${MY_PV}.tar.xz"
+
+LICENSE="AMD-GPU-PRO-EULA"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT="mirror fetch strip"
+
+DEPEND="dev-util/patchelf"
+RDEPEND="dev-libs/ocl-icd"
+
+QA_PREBUILT="/opt/${SUPER_PN}/lib*/*"
+
+S="${WORKDIR}/${SUPER_PN}-${MY_PV}"
+
+pkg_nofetch() {
+	local pkgver=$(get_version_component_range 1-2)
+	einfo "Please download the AMDGPU-Pro Driver ${pkgver} for Ubuntu from"
+	einfo "    ${HOMEPAGE}"
+	einfo "The archive should then be placed into ${DISTDIR}."
+}
+
+src_unpack() {
+	default
+
+	local libdrm_ver="2.4.70"
+	local patchlevel=$(get_version_component_range 3)
+	cd "${S}" || die
+	unpack_deb opencl-${SUPER_PN}-icd_${MY_PV}_amd64.deb
+	unpack_deb libdrm-${SUPER_PN}-amdgpu1_${libdrm_ver}-${patchlevel}_amd64.deb
+}
+
+src_prepare() {
+	default
+
+	cd "${S}/opt/${SUPER_PN}/lib/x86_64-linux-gnu" || die
+	patchelf --set-rpath '$ORIGIN' libamdocl64.so || die "Failed to fix library rpath"
+}
+
+src_install() {
+
+	into "/opt/${SUPER_PN}"
+	dolib opt/${SUPER_PN}/lib/x86_64-linux-gnu/*
+
+	insinto /etc/OpenCL/vendors/
+	echo "/opt/${SUPER_PN}/$(get_libdir)/libamdocl64.so" > "${SUPER_PN}.icd" || die "Failed to generate ICD file"
+	doins "${SUPER_PN}.icd"
+}
+
+pkg_postinst() {
+	elog "AMD OpenCL driver relies on dev-libs/ocl-icd to work. To enable it, please run"
+	elog ""
+	elog "    eselect opencl set ocl-icd"
+	elog ""
+}

diff --git a/dev-libs/amdgpu-pro-opencl/metadata.xml b/dev-libs/amdgpu-pro-opencl/metadata.xml
new file mode 100644
index 00000000000..8c9e58cc4d2
--- /dev/null
+++ b/dev-libs/amdgpu-pro-opencl/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>marecki@gentoo.org</email>
+		<name>Marek Szuba</name>
+	</maintainer>
+	<longdescription lang="en">
+		This package contains the libraries necessary to enable OpenCL support
+		on AMD GPUs supported by the amdgpu driver. The libraries themselves
+		are part of the proprietary AMDGPU-Pro suite but work fine with the
+		free amdgpu driver stack.
+	</longdescription>
+</pkgmetadata>


             reply	other threads:[~2017-06-27 10:58 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-27 10:58 Marek Szuba [this message]
  -- strict thread matches above, loose matches on Subject: below --
2017-06-30 12:58 [gentoo-commits] repo/gentoo:master commit in: dev-libs/amdgpu-pro-opencl/ Marek Szuba
2017-08-02 19:46 Marek Szuba
2017-08-06 16:38 Marek Szuba
2017-08-06 16:38 Marek Szuba
2017-10-13 22:26 Marek Szuba
2017-11-19 21:03 Marek Szuba
2017-11-20 15:32 Marek Szuba
2017-11-21 11:00 Marek Szuba
2017-12-11  0:55 Ulrich Müller
2017-12-16  9:44 Marek Szuba
2017-12-16 10:03 Marek Szuba
2018-05-25 10:04 Marek Szuba
2018-05-25 10:04 Marek Szuba
2018-06-20 10:10 Marek Szuba
2018-06-26 19:47 Marek Szuba
2018-07-09 14:04 Marek Szuba
2018-07-09 14:04 Marek Szuba
2018-08-31 13:44 Marek Szuba
2018-09-27  9:49 Marek Szuba
2018-11-09  8:45 Marek Szuba
2019-01-15  9:52 Marek Szuba
2019-05-25 12:03 Marek Szuba
2019-05-25 21:12 Marek Szuba
2019-05-29 10:31 Marek Szuba
2019-05-30 22:17 Marek Szuba
2019-06-18 18:24 Thomas Deutschmann
2019-08-10 15:46 Marek Szuba
2019-08-10 21:10 Marek Szuba
2019-08-20 15:14 Marek Szuba
2019-08-20 15:14 Marek Szuba
2019-09-23 17:16 Michał Górny
2019-09-30 12:49 Marek Szuba
2019-10-07 10:19 Marek Szuba
2020-04-08 14:57 Marek Szuba
2020-11-11 11:25 Joonas Niilola
2021-03-21  8:24 Joonas Niilola

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1498561067.777fd2b49b77f17662acc160bc734c51fd626cd7.marecki@gentoo \
    --to=marecki@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox