summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCristiano Urban <cristiano.urban.slack@gmail.com>2020-04-01 23:59:37 +0700
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2020-04-01 23:59:37 +0700
commitea816dcc9f1274f2138668123d1b18babb1a77be (patch)
tree63262eeaaec8d83cb04bf9c1125b7edca5ed86fa
parenta71904b100525d0dfe6ea53b673fbed08eb7bc24 (diff)
downloadslackbuilds-ea816dcc9f1274f2138668123d1b18babb1a77be.tar.gz
libraries/opencl-amd: Added (OpenCL Userspace Driver).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--libraries/opencl-amd/README6
-rw-r--r--libraries/opencl-amd/opencl-amd.SlackBuild137
-rw-r--r--libraries/opencl-amd/opencl-amd.info10
-rw-r--r--libraries/opencl-amd/slack-desc20
4 files changed, 173 insertions, 0 deletions
diff --git a/libraries/opencl-amd/README b/libraries/opencl-amd/README
new file mode 100644
index 0000000000..27b9d280af
--- /dev/null
+++ b/libraries/opencl-amd/README
@@ -0,0 +1,6 @@
+OpenCL userspace driver as provided in the amdgpu-pro driver stack and intended to work along with the free amdgpu stack.
+It's a repackage of AUR opencl-amd and don't provide the full amdgpu-pro stack.
+
+The Ubuntu 18.04 drivers can be downloaded using:
+/usr/bin/wget --referer https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx
+-N https://drivers.amd.com/drivers/linux/19.50/amdgpu-pro-19.50-967956-ubuntu-18.04.tar.xz
diff --git a/libraries/opencl-amd/opencl-amd.SlackBuild b/libraries/opencl-amd/opencl-amd.SlackBuild
new file mode 100644
index 0000000000..4aecebb654
--- /dev/null
+++ b/libraries/opencl-amd/opencl-amd.SlackBuild
@@ -0,0 +1,137 @@
+#!/bin/sh
+
+# Copyright 2020 Ciprian Stingu <ciprian dot stingu at gmail dot com>
+# Repackage of AUR : opencl-amd.git for Slackware
+#
+# Original credits of AUR : opencl-amd.git
+# Maintainer: Christopher Snowhill <kode54 at gmail dot com>
+# Contributor: ipha <ipha00 at gmail dot com>
+# Contributor: johnnybash <georgpfahler at wachenzell dot org>
+# Contributor: grmat <grmat at sub dot red>
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+PKGNAM="opencl-amd"
+VERSION=${VERSION:-19.50}
+MINVER="967956"
+AMDVER="2.4.99"
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+SRCNAM="amdgpu-pro-${VERSION}-${MINVER}-ubuntu-18.04"
+CLINFO_SHARED="opt/amdgpu-pro/bin"
+OPENCL_SHARED="opt/amdgpu-pro/lib/x86_64-linux-gnu"
+LIBDRM_SHARED="opt/amdgpu/lib/x86_64-linux-gnu"
+
+# Allow $ARCH to be preset before running the script. This is useful in the
+# case where someone is running a 32-bit chroot environment under an x86_64
+# kernel:
+ARCH=${ARCH:-$(uname -m)}
+
+case "$ARCH" in
+ x86_64) DEBARCH="amd64" ; LIBDIRSUFFIX="64" ; ARCH=x86_64 ;;
+ *) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;;
+esac
+
+if [ ! $UID = 0 ]; then
+ cat << EOF
+
+This script must be run as root.
+
+EOF
+ exit 1
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG="${TMP}/package-${PKGNAM}"
+SRCDIR="${TMP}/${SRCNAM}"
+OUTPUT=${OUTPUT:-/tmp}
+
+rm -rf "${PKG}"
+mkdir -p "${TMP}" "${PKG}" "${OUTPUT}"
+cd "${TMP}"
+
+rm -rf ${SRCDIR}
+tar -xf "${CWD}/${SRCNAM}.tar.xz"
+
+rm -rf "${TMP}/opencl"
+rm -rf "${TMP}/libdrm"
+
+#start AUR : opencl-amd.git
+mkdir -p "${TMP}/opencl"
+cd "${TMP}/opencl"
+# clinfo
+ar x "${SRCDIR}/clinfo-amdgpu-pro_${VERSION}-${MINVER}_${DEBARCH}.deb"
+tar xJf "data.tar.xz"
+# pal
+ar x "${SRCDIR}/opencl-amdgpu-pro-icd_${VERSION}-${MINVER}_${DEBARCH}.deb"
+tar xJf "data.tar.xz"
+ar x "${SRCDIR}/opencl-amdgpu-pro-comgr_${VERSION}-${MINVER}_${DEBARCH}.deb"
+tar xJf "data.tar.xz"
+# orca
+ar x "${SRCDIR}/opencl-orca-amdgpu-pro-icd_${VERSION}-${MINVER}_${DEBARCH}.deb"
+tar xJf "data.tar.xz"
+cd "${OPENCL_SHARED}"
+sed -i "s|libdrm_amdgpu|libdrm_amdgpo|g" libamdocl-orca64.so
+# libdrm
+mkdir -p "${TMP}/libdrm"
+cd "${TMP}/libdrm"
+ar x "${SRCDIR}/libdrm-amdgpu-amdgpu1_${AMDVER}-${MINVER}_${DEBARCH}.deb"
+tar xJf "data.tar.xz"
+cd "${LIBDRM_SHARED}"
+rm "libdrm_amdgpu.so.1"
+mv "libdrm_amdgpu.so.1.0.0" "libdrm_amdgpo.so.1.0.0"
+ln -s "libdrm_amdgpo.so.1.0.0" "libdrm_amdgpo.so.1"
+
+mv "${TMP}/opencl/etc" "${PKG}/"
+mkdir -p "${PKG}/usr/lib${LIBDIRSUFFIX}"
+mkdir -p "${PKG}/usr/bin"
+# clinfo
+mv "${TMP}/opencl/${CLINFO_SHARED}/clinfo" "${PKG}/usr/bin/"
+# pal
+mv "${TMP}/opencl/${OPENCL_SHARED}/libamdocl64.so" "${PKG}/usr/lib${LIBDIRSUFFIX}/"
+mv "${TMP}/opencl/${OPENCL_SHARED}/libamd_comgr.so" "${PKG}/usr/lib${LIBDIRSUFFIX}/"
+# orca
+mv "${TMP}/opencl/${OPENCL_SHARED}/libamdocl-orca64.so" "${PKG}/usr/lib${LIBDIRSUFFIX}/"
+mv "${TMP}/opencl/${OPENCL_SHARED}/libamdocl12cl64.so" "${PKG}/usr/lib${LIBDIRSUFFIX}/"
+# libdrm
+mv "${TMP}/libdrm/${LIBDRM_SHARED}/libdrm_amdgpo.so.1.0.0" "${PKG}/usr/lib${LIBDIRSUFFIX}/"
+mv "${TMP}/libdrm/${LIBDRM_SHARED}/libdrm_amdgpo.so.1" "${PKG}/usr/lib${LIBDIRSUFFIX}/"
+
+mkdir -p "${PKG}/opt/amdgpu/share/libdrm"
+cd "${PKG}/opt/amdgpu/share/libdrm"
+ln -s "/usr/share/libdrm/amdgpu.ids" "amdgpu.ids"
+
+rm -rf "${TMP}/opencl"
+rm -rf "${TMP}/libdrm"
+#end AUR : opencl-amd.git
+
+mkdir -p "${PKG}/install"
+cat "${CWD}/slack-desc" > "${PKG}/install/slack-desc"
+
+cd ${PKG}
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+/sbin/makepkg -l y -c n "${OUTPUT}/${PKGNAM}-${VERSION}-${MINVER}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-tgz}"
diff --git a/libraries/opencl-amd/opencl-amd.info b/libraries/opencl-amd/opencl-amd.info
new file mode 100644
index 0000000000..0d52a00ae2
--- /dev/null
+++ b/libraries/opencl-amd/opencl-amd.info
@@ -0,0 +1,10 @@
+PRGNAM="opencl-amd"
+VERSION="19.50-967956"
+HOMEPAGE="https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://drivers.amd.com/drivers/linux/19.50/amdgpu-pro-19.50-967956-ubuntu-18.04.tar.xz"
+MD5SUM_x86_64="aa0df956b488789896b82359ddb856c8"
+REQUIRES=""
+MAINTAINER="Ciprian Stingu"
+EMAIL="ciprian dot stingu at gmail dot com"
diff --git a/libraries/opencl-amd/slack-desc b/libraries/opencl-amd/slack-desc
new file mode 100644
index 0000000000..6d051ae8e9
--- /dev/null
+++ b/libraries/opencl-amd/slack-desc
@@ -0,0 +1,20 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler----------------------------------------------------|
+opencl-amd: opencl-amd (OpenCL Userspace Driver)
+opencl-amd:
+opencl-amd: OpenCL userspace driver as provided in the amdgpu-pro driver stack
+opencl-amd: This package is intended to work along with the free amdgpu stack
+opencl-amd:
+opencl-amd:
+opencl-amd:
+opencl-amd: Homepage: https://support.amd.com/en-us/kb-articles/Pages/
+opencl-amd: AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx
+opencl-amd:
+opencl-amd:
+opencl-amd: