diff --git a/app-admin/ananicy/ananicy-2.2.1-r1.ebuild b/app-admin/ananicy/ananicy-2.2.1-r1.ebuild index 4ad74bc5a5..359b99a091 100644 --- a/app-admin/ananicy/ananicy-2.2.1-r1.ebuild +++ b/app-admin/ananicy/ananicy-2.2.1-r1.ebuild @@ -31,6 +31,6 @@ src_compile() { src_install() { emake PREFIX="${D}" install python_fix_shebang "${ED}/usr/bin/ananicy" - doinitd ananicy.initd + doinitd "${FILESDIR}/ananicy.initd" einstalldocs } diff --git a/app-crypt/reop/reop-2.1.1.ebuild b/app-crypt/reop/reop-2.1.1.ebuild index 439cf435b6..b0b69c931b 100644 --- a/app-crypt/reop/reop-2.1.1.ebuild +++ b/app-crypt/reop/reop-2.1.1.ebuild @@ -15,7 +15,7 @@ DEPEND="dev-libs/libsodium:=" RDEPEND="${DEPEND}" src_compile() { - emake CC="${CC:-cc}" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS} -lsodium" + emake CC="${CC:-cc}" CFLAGS="${CFLAGS}" LDFLAGS="-lsodium ${LDFLAGS}" } src_test() { diff --git a/dev-libs/pocl/Manifest b/dev-libs/pocl/Manifest new file mode 100644 index 0000000000..0be7d35d80 --- /dev/null +++ b/dev-libs/pocl/Manifest @@ -0,0 +1 @@ +DIST pocl-1.6.tar.gz 1595212 BLAKE2B ee628ec466df03c44f02235c78b516aeea0e02f82ce095cd798d6d4d4cf81773adf16493837306243ac7e0de58b2ccfbdcfb3a63ff8e287f6c83c58160811712 SHA512 ecd3a3867a62a2a555183741fa4586eeefae00514d66d15a79b9094ff0a0248b213f62ab23b3e61bdb1042e760cd34b07e546f97b304ac86c3f861a9161df1b1 diff --git a/dev-libs/pocl/files/vendor_opencl_libs_location.patch b/dev-libs/pocl/files/vendor_opencl_libs_location.patch new file mode 100644 index 0000000000..548589ca41 --- /dev/null +++ b/dev-libs/pocl/files/vendor_opencl_libs_location.patch @@ -0,0 +1,20 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -125,7 +125,7 @@ + endif() + + # for libpocl.so +-set(POCL_INSTALL_PUBLIC_LIBDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" CACHE PATH "POCL public libdir") ++set(POCL_INSTALL_PUBLIC_LIBDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/OpenCL/vendors/pocl" CACHE PATH "POCL public libdir") + + # for llvmopencl.so + set(POCL_INSTALL_PRIVATE_LIBDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/pocl" CACHE PATH "POCL private libdir") +@@ -134,7 +134,7 @@ + if(UNIX AND NOT CMAKE_CROSSCOMPILING AND CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(POCL_INSTALL_ICD_VENDORDIR "/etc/OpenCL/vendors" CACHE PATH "POCL ICD file destination") + else() +- set(POCL_INSTALL_ICD_VENDORDIR "${CMAKE_INSTALL_PREFIX}/etc/OpenCL/vendors" CACHE PATH "POCL ICD file destination") ++ set(POCL_INSTALL_ICD_VENDORDIR "${SYSCONFDIR}/etc/OpenCL/vendors" CACHE PATH "POCL ICD file destination") + endif() + + # for kernel-.bc diff --git a/dev-libs/pocl/metadata.xml b/dev-libs/pocl/metadata.xml new file mode 100644 index 0000000000..5070dbc08d --- /dev/null +++ b/dev-libs/pocl/metadata.xml @@ -0,0 +1,30 @@ + + + + + comaintainers welcome + lssndrbarbieri@gmail.com + Alessandro Barbieri + + +PoCL is a portable open source (MIT-licensed) implementation of the OpenCL standard (1.2 with some 2.0 features supported). In addition to being an easily portable multi-device (truely heterogeneous) open-source OpenCL implementation, a major goal of this project is improving interoperability of diversity of OpenCL-capable devices by integrating them to a single centrally orchestrated platform. Also one of the key goals longer term is to enhance performance portability of OpenCL programs across device types utilizing runtime and compiler techniques. + +Upstream PoCL currently supports various CPUs, NVIDIA GPUs via libcuda, HSA-supported GPUs and TCE ASIPs (experimental, see: OpenASIP). It is also known to have multiple (private) adaptations in active production use. + +PoCL uses Clang as an OpenCL C frontend and LLVM for kernel compiler implementation, and as a portability layer. Thus, if your desired target has an LLVM backend, it should be able to get OpenCL support easily by using PoCL. + + + pocl/pocl + + + Enable the generic hardware accelerator device driver + Enable reporting OpenCL 2.0 for the CPU device + Ensures that certain build options which would result in non-conformant pocl build stay disabled. Note that this does not quarantee a fully conformant build of pocl by itself + Enable the CUDA backend for NVIDIA GPUs + When enabled, OpenCL printf() call's f/e/g formatters are handled by pocl. When disabled, these are handled by system C library. + Enable hardening against various attacks. May worsen performance + + Enable hwloc support + Enables custom memory manager. Except for special circumstances, this should be disabled + + diff --git a/dev-libs/pocl/pocl-1.6.ebuild b/dev-libs/pocl/pocl-1.6.ebuild new file mode 100644 index 0000000000..cef334945c --- /dev/null +++ b/dev-libs/pocl/pocl-1.6.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +DOCS_AUTODOC=0 +DOCS_BUILDER="sphinx" +DOCS_DIR="doc/sphinx/source" +PYTHON_COMPAT=( python3_{7..9} ) + +inherit cmake llvm python-any-r1 docs + +LLVM_MAX_SLOT=11 + +DESCRIPTION="Portable Computing Language (an implementation of OpenCL)" +HOMEPAGE=" + http://portablecl.org + https://github.com/pocl/pocl +" +SRC_URI="https://github.com/pocl/pocl/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" +IUSE="accel cl20 +conformance cuda debug examples float-conversion hardening +hwloc memmanager" #hsa tce + +#TODO: add dependencies for cuda +RDEPEND=" + dev-libs/libltdl + sys-devel/llvm:${LLVM_MAX_SLOT} + virtual/opencl + + !cuda? ( sys-devel/clang:${LLVM_MAX_SLOT} ) + cuda? ( sys-devel/clang:${LLVM_MAX_SLOT}[llvm_targets_NVPTX] ) + debug? ( dev-util/lttng-ust ) + hwloc? ( sys-apps/hwloc[cuda?] ) +" +DEPEND=" + ${RDEPEND} + doc? ( $(python_gen_any_dep '