summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarjan Krijan2019-10-21 09:20:59 +0200
committerDarjan Krijan2019-10-21 09:20:59 +0200
commit83fa01a9fa704076279a690175ecc2b7e7c8e7b7 (patch)
treec5661fa9d2d78a6a1f96808028bc480026191b29
parent4352113d6729ccab0cf7630679063a15609896e3 (diff)
downloadaur-83fa01a9fa704076279a690175ecc2b7e7c8e7b7.tar.gz
Updated aocl with a cleaner install
-rw-r--r--.SRCINFO20
-rw-r--r--PKGBUILD331
-rw-r--r--amd-blis-mt.pc9
-rw-r--r--amd-blis.pc9
-rw-r--r--amd-fftw3.pc10
-rw-r--r--amd-fftw3f.pc10
-rw-r--r--amd-libflame.pc9
-rw-r--r--amd-libm.pc9
-rw-r--r--amd-rng-omp.pc9
-rw-r--r--amd-rng.pc9
-rw-r--r--amd-securerng.pc9
-rw-r--r--modulefile32
12 files changed, 309 insertions, 157 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 15610b9d6746..1231536d3101 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = aocl
pkgdesc = AMD Optimizing CPU Libraries
pkgver = 2.0
- pkgrel = 1
+ pkgrel = 2
url = https://developer.amd.com/amd-aocl/
install = aocl.install
arch = x86_64
@@ -10,27 +10,11 @@ pkgbase = aocl
options = staticlibs
options = !strip
source = local://aocl-ubuntu-2.0.tar.gz
- source = local://amd-blis.pc
- source = local://amd-blis-mt.pc
- source = local://amd-fftw3.pc
- source = local://amd-fftw3f.pc
- source = local://amd-libflame.pc
- source = local://amd-libm.pc
- source = local://amd-rng.pc
- source = local://amd-rng-omp.pc
- source = local://amd-securerng.pc
+ source = local://aocl.install
source = local://modulefile
sha256sums = 4fd14dc838ce13a6d1468ed0812905b102d85709b17ab8228513da37448d2993
sha256sums = SKIP
sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = SKIP
pkgname = aocl
diff --git a/PKGBUILD b/PKGBUILD
index 6da427bbb731..2b19444812e0 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,24 +1,17 @@
# Maintainer: Darjan Krijan (daren) <darjan_krijan@gmx.de>
-# Manual download of 'aocl-ubuntu-${pkgver}.tar.gz' required from upstream
+# Manual download of '${pkgname}-${os}-${pkgver}.tar.gz' required from upstream
pkgname=aocl
pkgver=2.0
-pkgrel=1
+pkgrel=2
pkgdesc="AMD Optimizing CPU Libraries"
arch=('x86_64')
license=('custom')
url="https://developer.amd.com/amd-aocl/"
+os=ubuntu
source=(
- "local://aocl-ubuntu-${pkgver}.tar.gz"
- "local://amd-blis.pc"
- "local://amd-blis-mt.pc"
- "local://amd-fftw3.pc"
- "local://amd-fftw3f.pc"
- "local://amd-libflame.pc"
- "local://amd-libm.pc"
- "local://amd-rng.pc"
- "local://amd-rng-omp.pc"
- "local://amd-securerng.pc"
+ "local://${pkgname}-${os}-${pkgver}.tar.gz"
+ "local://aocl.install"
"local://modulefile"
)
options=('staticlibs' '!strip')
@@ -28,50 +21,298 @@ sha256sums=(
"4fd14dc838ce13a6d1468ed0812905b102d85709b17ab8228513da37448d2993"
"SKIP"
"SKIP"
- "SKIP"
- "SKIP"
- "SKIP"
- "SKIP"
- "SKIP"
- "SKIP"
- "SKIP"
- "SKIP"
)
+aocl_prefix=/opt/aocl
+
+# gen_pkg_config_file \
+# <basename> <libdir_from_prefix> <includedir_from_prefix> <ldflags> <requires>
+gen_pkg_config_file() {
+ pcfile=${prefix}/${_pkgname}/lib/pkgconfig/${1}.pc
+ mkdir -p ${prefix}/${_pkgname}/lib/pkgconfig
+ echo " -> Generating pkg-config file '${pcfile}'..."
+ cat > ${pcfile} <<EOF
+prefix=${aocl_prefix}/${_pkgname}
+includedir=\${prefix}/${3}
+libdir=\${prefix}/${2}
+
+Name: ${_pkgname}
+Version: ${_pkgver}
+Description: ${_pkgdesc}
+URL: ${_pkgurl}
+Requires: ${5}
+Cflags: -I\${includedir}
+Libs: -L\${libdir} ${4}
+EOF
+}
+
+# gen_static pkg_config_file \
+# <basename> <libdir_from_prefix> <includedir_from_prefix> <ldflags> <ldflags_private> <requires>
+gen_static_pkg_config_file() {
+ pcfile_static=${prefix}/${_pkgname}/lib/pkgconfig/${1}.pc
+ echo " -> Generating pkg-config file '${pcfile_static}'..."
+ cat > ${pcfile_static} <<EOF
+prefix=${aocl_prefix}/${_pkgname}
+libdir=\${prefix}/${2}
+includedir=\${prefix}/${3}
+
+Name: ${_pkgname}
+Version: ${_pkgver}
+Description: ${_pkgdesc}
+URL: ${_pkgurl}
+Requires: ${6}
+Cflags: -I\${includedir}
+Libs: -L\${libdir} ${4}
+Libs.private: ${5}
+EOF
+}
+
+get_dynlibs() {
+ objdump -p ${prefix}/${_pkgname}/lib/lib${1}.so | grep NEEDED >> /tmp/get_dynlibs.txt
+ objdump -p ${prefix}/${_pkgname}/lib/lib${1}.so \
+ | grep "NEEDED" \
+ | grep -v "libc\|linux-" \
+ | sed -e "s/.*lib\(.*\)\.so.*/-l\1/g" \
+ | tr '\n' ' ' \
+ && echo ""
+}
+
package() {
- mkdir -p ${pkgdir}/opt/aocl
+ prefix=${pkgdir}/${aocl_prefix}
+ mkdir -p ${prefix}
+
+ src_prefix=${srcdir}/${pkgname}-${os}-${pkgver}
+
+ cp ${src_prefix}/AOCL_User_Guide_${pkgver}.pdf \
+ ${prefix}
+
+ # =========================
+ # amd-blis
+ # -------------------------
+ _pkgname="amd-blis"
+ _pkgver="2.0"
+ _pkgdesc="BLIS is a portable software framework for instantiating high-performance BLAS-like dense linear algebra libraries"
+ _pkgurl="https://developer.amd.com/amd-aocl/blas-library/"
+
+ echo -e "\nInstalling ${_pkgname} to '${prefix}/${_pkgname}/..."
+ mkdir -p ${prefix}/${_pkgname}
+ tar --no-same-owner -xf \
+ ${src_prefix}/aocl-${_pkgname#"amd-"}-${os}-${_pkgver}.tar.gz \
+ --strip-components=1 \
+ -C ${prefix}/${_pkgname}
+
+ # The shared library is missing all dynamic links, linking against this won't work
+ gen_pkg_config_file \
+ ${_pkgname} lib include/blis -lblis
+ # Hardcoding Libs.private
+ gen_static_pkg_config_file \
+ ${_pkgname}-static lib include/blis -l:libblis.a "-lm -lpthread"
+
+ # =========================
+ # amd-blis-mt
+ # -------------------------
+ _pkgname="amd-blis-mt"
+ _pkgver="2.0"
+ _pkgdesc="BLIS is a portable software framework for instantiating high-performance BLAS-like dense linear algebra libraries"
+ _pkgurl="https://developer.amd.com/amd-aocl/blas-library/"
+
+ echo -e "\nInstalling ${_pkgname} to '${prefix}/${_pkgname}/..."
+ mkdir -p ${prefix}/${_pkgname}
+ tar --no-same-owner -xf \
+ ${src_prefix}/aocl-${_pkgname#"amd-"}-${os}-${_pkgver}.tar.gz \
+ --strip-components=1 \
+ -C ${prefix}/${_pkgname}
+
+ # fix lib: symlink libblis-mt.so -> libblis.so.2.0.0 collides with amd-blis
+ # since the linker resolves the link during compile time
+ # when all the lib directories are set in LD_LIBRARY_PATH
+ mv ${prefix}/${_pkgname}/lib/libblis.so.2.0.0 ${prefix}/${_pkgname}/lib/libblis-mt.so
+
+ gen_pkg_config_file \
+ ${_pkgname} lib include/blis -lblis-mt
+
+ gen_static_pkg_config_file \
+ ${_pkgname}-static lib include/blis -l:libblis-mt.a "$(get_dynlibs blis-mt)"
+
+ # =========================
+ # amd-fftw
+ # -------------------------
+ _pkgname="amd-fftw"
+ _pkgver="2.0"
+ _pkgdesc="Fast Fourier transform library"
+ _pkgurl="https://developer.amd.com/amd-aocl/fftw/"
+
+ echo -e "\nInstalling ${_pkgname} to '${prefix}/${_pkgname}/..."
+ mkdir -p ${prefix}/${_pkgname}
+ tar --no-same-owner -xf \
+ ${src_prefix}/aocl-${_pkgname#"amd-"}-${os}-${_pkgver}.tar.gz \
+ --strip-components=1 \
+ -C ${prefix}/${_pkgname}
+
+ # pkg-config fftw3
+ gen_pkg_config_file \
+ ${_pkgname} lib include -lfftw3
+ gen_static_pkg_config_file \
+ ${_pkgname}-static lib include -l:libfftw3.a "$(get_dynlibs fftw3)"
+ gen_pkg_config_file \
+ ${_pkgname}-mpi lib include -lfftw3_mpi ${_pkgname}
+ gen_static_pkg_config_file \
+ ${_pkgname}-mpi-static lib include -l:libfftw3_mpi.a "$(get_dynlibs fftw3_mpi)" ${_pkgname}-static
+ gen_pkg_config_file \
+ ${_pkgname}-omp lib include -lfftw3_omp ${_pkgname}
+ gen_static_pkg_config_file \
+ ${_pkgname}-omp-static lib include -l:libfftw3_omp.a "$(get_dynlibs fftw3_omp)" ${_pkgname}-static
+
+ # pkg-config fftw3f
+ gen_pkg_config_file \
+ ${_pkgname}f lib include -lfftw3f
+ gen_static_pkg_config_file \
+ ${_pkgname}f-static lib include -l:libfftw3f.a "$(get_dynlibs fftw3f)"
+ gen_pkg_config_file \
+ ${_pkgname}f-mpi lib include -lfftw3f_mpi ${_pkgname}f
+ gen_static_pkg_config_file \
+ ${_pkgname}f-mpi-static lib include -l:libfftw3f_mpi.a "$(get_dynlibs fftw3f_mpi)" ${_pkgname}f-static
+ gen_pkg_config_file \
+ ${_pkgname}f-omp lib include -lfftw3f_omp ${_pkgname}f
+ gen_static_pkg_config_file \
+ ${_pkgname}f-omp-static lib include -l:libfftw3f_omp.a "$(get_dynlibs fftw3f_omp)" ${_pkgname}f-static
+
+ # =========================
+ # amd-libflame
+ # -------------------------
+ _pkgname="amd-libflame"
+ _pkgver="2.0"
+ _pkgdesc="libFLAME is a portable library for dense matrix computations, providing much of the functionality present in LAPACK"
+ _pkgurl="https://developer.amd.com/amd-aocl/blas-library/#libflame"
+
+ echo -e "\nInstalling ${_pkgname} to '${prefix}/${_pkgname}/..."
+ mkdir -p ${prefix}/${_pkgname}
+ tar --no-same-owner -xf \
+ ${src_prefix}/aocl-${_pkgname#"amd-"}-${os}-${_pkgver}.tar.gz \
+ --strip-components=1 \
+ -C ${prefix}/${_pkgname}
+
+ gen_pkg_config_file \
+ ${_pkgname} lib include -lflame
+ gen_static_pkg_config_file \
+ ${_pkgname}-static lib include -l:libflame.a $(get_dynlibs flame)
+
+ # =========================
+ # amd-libm
+ # -------------------------
+ _pkgname="amd-libm"
+ _pkgver="3.4.0"
+ _pkgdesc="AMD LibM is a software library containing a collection of basic math functions optimized for x86-64 processor based machines"
+ _pkgurl="https://developer.amd.com/amd-aocl/amd-math-library-libm/"
+
+ echo -e "\nInstalling ${_pkgname} to '${prefix}/${_pkgname}/..."
+ mkdir -p ${prefix}/${_pkgname}
+ tar --no-same-owner -xf \
+ ${src_prefix}/aocl-${_pkgname#"amd-"}-${os}-${_pkgver}.tar.gz \
+ --strip-components=1 \
+ -C ${prefix}/${_pkgname}
+
+ # amd-libm cleanup
+ mv ${prefix}/${_pkgname}/lib/dynamic/* ${prefix}/${_pkgname}/lib
+ mv ${prefix}/${_pkgname}/lib/static/* ${prefix}/${_pkgname}/lib
+ rmdir ${prefix}/${_pkgname}/lib/dynamic
+ rmdir ${prefix}/${_pkgname}/lib/static
+
+ gen_pkg_config_file \
+ ${_pkgname} lib include -lamdlibm
+ gen_pkg_config_file \
+ ${_pkgname}-static lib include -l:libamdlibm.a $(get_dynlibs amdlibm)
+
+ # =========================
+ # amd-rng
+ # -------------------------
+ _pkgname="amd-rng"
+ _pkgver="2.0"
+ _pkgdesc="AMD Random Number Generator Library is a pseudorandom number generator library. A pseudo-random number generator (PRNG) produces a stream of variates that are independent and statistically indistinguishable from a random sequence"
+ _pkgurl="https://developer.amd.com/amd-aocl/rng-library/"
+
+ echo -e "\nInstalling ${_pkgname} to '${prefix}/${_pkgname}/..."
+ mkdir -p ${prefix}/${_pkgname}
+ tar --no-same-owner -xf \
+ ${src_prefix}/aocl-${_pkgname#"amd-"}-${os}-${_pkgver}.tar.gz \
+ --strip-components=1 \
+ -C ${prefix}/${_pkgname}
+
+ # amd-rng cleanup
+ mv ${prefix}/${_pkgname}/rng/* ${prefix}/${_pkgname}
+ rm -r ${prefix}/${_pkgname}/rng
+ mv ${prefix}/${_pkgname}/rng-omp/lib_omp/* ${prefix}/${_pkgname}/lib
+ rm -r ${prefix}/${_pkgname}/rng-omp
+ rm -r ${prefix}/${_pkgname}/lib/libamdsecrng* # duplicate from aocl-securerng? not linked to rng_amd
+ chmod a-x ${prefix}/${_pkgname}/include/rng.h # for some reason this is executable
+
+ gen_pkg_config_file \
+ ${_pkgname} lib include -lrng_amd
+ gen_static_pkg_config_file \
+ ${_pkgname}-static lib include -l:librng_amd.a $(get_dynlibs rng_amd)
+ gen_pkg_config_file \
+ ${_pkgname}-omp lib include -lrng_omp_amd
+ gen_static_pkg_config_file \
+ ${_pkgname}-omp-static lib include -l:librng_omp_amd.a $(get_dynlibs rng_omp_amd)
+
+ # =========================
+ # amd-securerng
+ # -------------------------
+ _pkgname="amd-securerng"
+ _pkgver="2.0"
+ _pkgdesc="The AMD Secure Random Number Generator (RNG) is a library that provides APIs to access the cryptographically secure random numbers generated by AMD’s hardware-based random number generator implementation"
+ _pkgurl="https://developer.amd.com/amd-aocl/rng-library/"
+
+ echo -e "\nInstalling ${_pkgname} to '${prefix}/${_pkgname}/..."
+ mkdir -p ${prefix}/${_pkgname}
+ tar --no-same-owner -xf \
+ ${src_prefix}/aocl-${_pkgname#"amd-"}-${os}-${_pkgver}.tar.gz \
+ --strip-components=1 \
+ -C ${prefix}/${_pkgname}
+
+ # Name this lib properly
+ mv ${prefix}/${_pkgname}/lib/libamdsecrng-*.so ${prefix}/${_pkgname}/lib/libamdsecrng.so
+ mv ${prefix}/${_pkgname}/lib/libamdsecrng-*.a ${prefix}/${_pkgname}/lib/libamdsecrng.a
- cd ${srcdir}/aocl-ubuntu-${pkgver}
+ gen_pkg_config_file \
+ ${_pkgname} lib include -lamdsecrng
+ gen_static_pkg_config_file \
+ ${_pkgname}-static lib include -l:libamdsecrng.a $(get_dynlibs amdsecrng)
- ./install.sh -t ${pkgdir}/opt/aocl
- cp AOCL_User_Guide_${pkgver}.pdf ${pkgdir}/opt/aocl
- mv ${pkgdir}/opt/aocl/amd/aocl/${pkgver}/* ${pkgdir}/opt/aocl
+ # =========================
+ # Finalize
+ # -------------------------
+ # Delete symlinks, remove version string from dynamic libs so they can be linked directly
+ echo -e "\nRemoving lib symlinks and renaming the libs..."
+ find ${prefix} -type l \( -name "lib*.so*" -o -name "lib*.a*" \) -delete
+ sofiles=`find ${prefix} -type f -name "lib*.so*" -printf '%p\n' | sort`
- # clean amd-libm
- mv ${pkgdir}/opt/aocl/amd-libm/lib/dynamic/* \
- ${pkgdir}/opt/aocl/amd-libm/lib
- mv ${pkgdir}/opt/aocl/amd-libm/lib/static/* \
- ${pkgdir}/opt/aocl/amd-libm/lib
- rm -r ${pkgdir}/opt/aocl/amd-libm/lib/dynamic
- rm -r ${pkgdir}/opt/aocl/amd-libm/lib/static
+ for so in ${sofiles}; do
+ if [ ${so} != ${so%.so*}.so ]; then
+ mv ${so} ${so%.so*}.so
+ fi
+ done
- # clean amd-rng
- mv ${pkgdir}/opt/aocl/amd-rng/rng-omp/lib_omp/* \
- ${pkgdir}/opt/aocl/amd-rng/rng-omp/lib
- rm -r ${pkgdir}/opt/aocl/amd-rng/rng-omp/lib_omp/
- rm -r ${pkgdir}/opt/aocl/amd-rng/rng/lib/libamdsecrng*
- rm -r ${pkgdir}/opt/aocl/amd-rng/rng-omp/lib/libamdsecrng*
+ afiles=`find ${prefix} -type f -name "lib*.a*" -printf '%p\n' | sort`
- rm -rf ${pkgdir}/opt/aocl/amd ${pkgdir}/opt/aocl/libs
+ for a in ${afiles}; do
+ if [ ${a} != ${a%.a*}.a ]; then
+ mv ${a} ${a%.a*}.a
+ fi
+ done
- cd ${srcdir}
+ # Some dynamic libs are not executable for some reason, fix this
+ echo -e "\nFixing some dynamic libs not being executable..."
+ find ${prefix} -type f -name "lib*.so" -exec chmod a+x {} \;
- # pkg-config
- mkdir -p ${pkgdir}/opt/aocl/pkgconfig
- cp ${srcdir}/*.pc ${pkgdir}/opt/aocl/pkgconfig
+ # Clean pkg-config files
+ echo -e "\nCleaning pkg-config files..."
+ find ${prefix} -type f -name "*.pc" -exec sed -i {} -e "s/[[:space:]]*$//g" \;
+
# modulefile
- cp modulefile ${pkgdir}/opt/aocl
+ echo -e "\nSymlinking modulefile '${modulefile}'..."
+ cp ${srcdir}/modulefile ${pkgdir}${aocl_prefix}
mkdir -p ${pkgdir}${MODULESHOME}/modulefiles/
- ln -s /opt/aocl/modulefile ${pkgdir}${MODULESHOME}/modulefiles/aocl
+ ln -s ${aocl_prefix}/modulefile ${pkgdir}${MODULESHOME}/modulefiles/${pkgname}
}
diff --git a/amd-blis-mt.pc b/amd-blis-mt.pc
deleted file mode 100644
index 2b7b01465909..000000000000
--- a/amd-blis-mt.pc
+++ /dev/null
@@ -1,9 +0,0 @@
-libdir=/opt/aocl/amd-blis-mt/lib
-includedir=/opt/aocl/amd-blis-mt/include
-
-Name: AMD Multi-threaded BLIS
-Description: BLIS is a portable software framework for instantiating high-performance BLAS-like dense linear algebra libraries
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/blas-library/
-Libs: -L${libdir} -lblis-mt
-Cflags: -I${includedir}
diff --git a/amd-blis.pc b/amd-blis.pc
deleted file mode 100644
index 19c9590e6a3b..000000000000
--- a/amd-blis.pc
+++ /dev/null
@@ -1,9 +0,0 @@
-libdir=/opt/aocl/amd-blis/lib
-includedir=/opt/aocl/amd-blis/include
-
-Name: AMD BLIS
-Description: BLIS is a portable software framework for instantiating high-performance BLAS-like dense linear algebra libraries
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/blas-library/
-Libs: -L${libdir} -lblis
-Cflags: -I${includedir}
diff --git a/amd-fftw3.pc b/amd-fftw3.pc
deleted file mode 100644
index 00e5a86bb3ba..000000000000
--- a/amd-fftw3.pc
+++ /dev/null
@@ -1,10 +0,0 @@
-libdir=/opt/aocl/amd-fftw/lib
-includedir=/opt/aocl/amd-fftw/include
-
-Name: AMD FFTW
-Description: Fast Fourier transform library
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/fftw/
-Libs: -L${libdir} -lfftw3
-Libs.private: -lm
-Cflags: -I${includedir}
diff --git a/amd-fftw3f.pc b/amd-fftw3f.pc
deleted file mode 100644
index 22eda36c79ad..000000000000
--- a/amd-fftw3f.pc
+++ /dev/null
@@ -1,10 +0,0 @@
-libdir=/opt/aocl/amd-fftw/lib
-includedir=/opt/aocl/amd-fftw/include
-
-Name: AMD FFTW (single precision)
-Description: Fast Fourier transform library
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/fftw/
-Libs: -L${libdir} -lfftw3f
-Libs.private: -lm
-Cflags: -I${includedir}
diff --git a/amd-libflame.pc b/amd-libflame.pc
deleted file mode 100644
index 8a03e8318dd7..000000000000
--- a/amd-libflame.pc
+++ /dev/null
@@ -1,9 +0,0 @@
-libdir=/opt/aocl/amd-libflame/lib
-includedir=/opt/aocl/amd-libflame/include
-
-Name: AMD libFLAME
-Description: libFLAME is a portable library for dense matrix computations, providing much of the functionality present in LAPACK
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/blas-library/
-Libs: -L${libdir} -lflame
-Cflags: -I${includedir}
diff --git a/amd-libm.pc b/amd-libm.pc
deleted file mode 100644
index 1b6df48b7c33..000000000000
--- a/amd-libm.pc
+++ /dev/null
@@ -1,9 +0,0 @@
-libdir=/opt/aocl/amd-libm/lib
-includedir=/opt/aocl/amd-libm/include
-
-Name: AMD libm
-Description: AMD LibM is a software library containing a collection of basic math functions optimized for x86-64 processor based machines
-Version: 3.4.0
-URL: https://developer.amd.com/amd-aocl/amd-math-library-libm/
-Libs: -L${libdir} -lamdlibm
-Cflags: -I${includedir}
diff --git a/amd-rng-omp.pc b/amd-rng-omp.pc
deleted file mode 100644
index 37cc87efcb9d..000000000000
--- a/amd-rng-omp.pc
+++ /dev/null
@@ -1,9 +0,0 @@
-libdir=/opt/aocl/amd-rng/rng-omp/lib
-includedir=/opt/aocl/amd-rng/rng-omp/include
-
-Name: AMD RNG
-Description: AMD Random Number Generator Library is a pseudorandom number generator library. A pseudo-random number generator (PRNG) produces a stream of variates that are independent and statistically indistinguishable from a random sequence
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/rng-library/
-Libs: -L${libdir} -lrng_omp_amd
-Cflags: -I${includedir}
diff --git a/amd-rng.pc b/amd-rng.pc
deleted file mode 100644
index c6c9cc643d61..000000000000
--- a/amd-rng.pc
+++ /dev/null
@@ -1,9 +0,0 @@
-libdir=/opt/aocl/amd-rng/rng/lib
-includedir=/opt/aocl/amd-rng/rng/include
-
-Name: AMD RNG
-Description: AMD Random Number Generator Library is a pseudorandom number generator library. A pseudo-random number generator (PRNG) produces a stream of variates that are independent and statistically indistinguishable from a random sequence
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/rng-library/
-Libs: -L${libdir} -lrng_amd
-Cflags: -I${includedir}
diff --git a/amd-securerng.pc b/amd-securerng.pc
deleted file mode 100644
index a1f3ef194052..000000000000
--- a/amd-securerng.pc
+++ /dev/null
@@ -1,9 +0,0 @@
-libdir=/opt/aocl/amd-securerng/lib
-includedir=/opt/aocl/amd-securerng/include
-
-Name: AMD Secure RNG Library
-Description: The AMD Secure Random Number Generator (RNG) is a library that provides APIs to access the cryptographically secure random numbers generated by AMD’s hardware-based random number generator implementation
-Version: 2.0
-URL: https://developer.amd.com/amd-aocl/rng-library/
-Libs: -L${libdir} -lamdsecrng
-Cflags: -I${includedir}
diff --git a/modulefile b/modulefile
index 8ac75c209a04..dd849bffab1d 100644
--- a/modulefile
+++ b/modulefile
@@ -3,23 +3,33 @@
# Created by Darjan Krijan <darjan_krijan@gmx.de>
#
-set MODULE "aocl"
-set BASE_DIR "/opt"
-set VERSION "2.0"
-set AOCL_ROOT "$BASE_DIR/$MODULE"
-set AOCL_TEXT "AMD Optimizing CPU Libraries"
+set MODULE "aocl"
+set BASE_DIR "/opt"
+set VERSION "2.0"
+set AOCL_ROOT "$BASE_DIR/$MODULE"
+set AOCL_TEXT "AMD Optimizing CPU Libraries (AOCL)"
-append-path PKG_CONFIG_PATH $AOCL_ROOT/pkgconfig
+prepend-path LD_LIBRARY_PATH ${AOCL_ROOT}/amd-securerng/lib
+prepend-path LD_LIBRARY_PATH ${AOCL_ROOT}/amd-rng/lib
+prepend-path LD_LIBRARY_PATH ${AOCL_ROOT}/amd-libm/lib
+prepend-path LD_LIBRARY_PATH ${AOCL_ROOT}/amd-libflame/lib
+prepend-path LD_LIBRARY_PATH ${AOCL_ROOT}/amd-fftw/lib
+prepend-path LD_LIBRARY_PATH ${AOCL_ROOT}/amd-blis-mt/lib
+prepend-path LD_LIBRARY_PATH ${AOCL_ROOT}/amd-blis/lib
+prepend-path PKG_CONFIG_PATH ${AOCL_ROOT}/amd-securerng/lib/pkgconfig
+prepend-path PKG_CONFIG_PATH ${AOCL_ROOT}/amd-rng/lib/pkgconfig
+prepend-path PKG_CONFIG_PATH ${AOCL_ROOT}/amd-libm/lib/pkgconfig
+prepend-path PKG_CONFIG_PATH ${AOCL_ROOT}/amd-libflame/lib/pkgconfig
+prepend-path PKG_CONFIG_PATH ${AOCL_ROOT}/amd-fftw/lib/pkgconfig
+prepend-path PKG_CONFIG_PATH ${AOCL_ROOT}/amd-blis-mt/lib/pkgconfig
+prepend-path PKG_CONFIG_PATH ${AOCL_ROOT}/amd-blis/lib/pkgconfig
-module-whatis "$AOCL_TEXT version $VERSION"
+module-whatis "$AOCL_TEXT version $VERSION"
proc ModulesHelp {} {
global AOCL_TEXT
puts stderr "This module sets up the environment for $AOCL_TEXT"
puts stderr "by adapting the following environment variables:"
- puts stderr "PATH"
- puts stderr "LIBRARY_PATH"
puts stderr "LD_LIBRARY_PATH"
- puts stderr "C_INCLUDE_PATH"
- puts stderr "CPLUS_INCLUDE_PATH"
+ puts stderr "PKG_CONFIG_PATH"
}