diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 20:18:26 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 20:18:26 +0100 |
commit | 6c30cc2d5bd48ddbdbe8d75544899cd5dbfcaba4 (patch) | |
tree | 6ef7f6e1d48141a5da904d788b906da5bba4b697 /dev-libs/beignet | |
parent | 62f82c107c3904ac6917ece47301d2999c7dd90e (diff) |
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-libs/beignet')
-rw-r--r-- | dev-libs/beignet/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/beignet/beignet-1.3.2-r1.ebuild | 106 | ||||
-rw-r--r-- | dev-libs/beignet/files/beignet-1.3.2_llvm6.patch | 27 |
3 files changed, 135 insertions, 0 deletions
diff --git a/dev-libs/beignet/Manifest b/dev-libs/beignet/Manifest index d45eea7f0d09..eac6d2260967 100644 --- a/dev-libs/beignet/Manifest +++ b/dev-libs/beignet/Manifest @@ -1,11 +1,13 @@ AUX beignet-1.2.0_no-hardcoded-cflags.patch 721 BLAKE2B 033bd173462a38e9a35aedb7090adf6c621c040d3a732dfec12c2807a33ffeebbd3dac85a1bfc500f86b997604c6e66d144653cf2ada95b589fac6f6bd4f2600 SHA512 fdb922091986a60a416f9f7be3487e30974e085f8d1fddf0dba2fdcca155d26523c504289d8775e4943acce01bbb7bd3619c1af5e9a43af8afada276a52506e6 AUX beignet-1.3.1-oclicd_no_upstream_icdfile.patch 564 BLAKE2B f90bdf1c1a795007e9c9322e43df988267eaa1544b2f896bfc1b0bf333647fff753cc7a2e0ec5715f4251b1c54220590d796e48b8a0d0d1681e30f51247639f3 SHA512 c26772accbd5c2a04f8b8a108b87a518cba5ee4fdd142c7514d67f387080d2d37d6d3e87020b4d44b602dfa0cd6387dad29d5fc1bb75e1d5d090f674f937ddd9 AUX beignet-1.3.2_cmake-llvm-config-multilib.patch 950 BLAKE2B 9028eede7ee68dfd539bb268914c354eeaac8a9d26647c6dfb030078199e749cf67d2c396305ccaa7a139f10fcc8eca7b36657d4425439137e7199a4e62c4d13 SHA512 9a9a0348b39f0f9d256166141b48e255ccbc03e4d5150e660cfad2c23af8ff67b75049361fa84f2c2c26be2be914ad07efeae5e150f4f390ec7d5503c49b1c74 +AUX beignet-1.3.2_llvm6.patch 1039 BLAKE2B 990a653b7ff52ec89ec1204cc5bae1d0b041ae51da4a16fd1a459abfe083be1e5647e9fdac3b336284fcdb6c460dbd9c151d5818c084d49c0c2d68fb56aed905 SHA512 634ddb79878b017be984c0327160affc06d7acaf17b1030e55542d2d2cc873bebd3808638f0966538b0dd7bca763eda2263f22f818dd0b73167a4ba3f5933aaa AUX beignet-1.4.0-oclicd_no_upstream_icdfile.patch 726 BLAKE2B 4d182497c099e174a95524b4bd7bda66c03e128cb089b7536716afda442d8959beab19f0e6015173fbe761f1f569ce065fd1701545ebfdd0680b070644a4d9c4 SHA512 3a77f85cb8f28096b21a77e70f901ccc64291e7439c5e4ae6d7259c30531ea550604f54d0cf910e4482089ab5782f50dcb1940e5df723b0457fdafd550b2b537 AUX beignet-1.4.0_no-debian-multiarch.patch 862 BLAKE2B 54fb9124832e57b3466c11696cf311d32863bdc36d9f4f4e946958233884f95ad9c212bf63f598e52ad054da79f453fb5a3208958de48e45bd9f21a010309edf SHA512 6760b3b7038ba0dc125998de65ec688b5eb840d8a41543ab35f6d6b6084a877fe0e383bd44b6947695ff835b391794547d7eec21bf787548e6bb03ccf2b73587 AUX llvm-terminfo.patch 788 BLAKE2B cb652c28aac1cca566cb801b9e7f2b6ea8a9ff9457896a50b3323b41a009e039085d2d4aeff14d9d8cf35fca3e4a23bacb3078451c4981b6f806cec4146aec83 SHA512 63706376f086b02be067ab54e818afab55cddb34668bc67c2c3f546142e4ca50f5536be4c15f359b3c1c6f62f36b90b3e76d67095d4bba452cf5b5a2c8891312 AUX no-debian-multiarch.patch 1652 BLAKE2B 4d112429412a7ada957228aa8e6beb145fbaf04065d6f816b0f13513631211894c57e9999157db5f22d7044f231be65396040efe450d090e3774bd24c9c93482 SHA512 c77dd485d22e61e558f002a18103bd8dd8091ac51e702335e8713fe7f8fef24e44607744165cf0997e10941b1044d96a4876f251e8e32ffd82781e5c303f0383 DIST beignet-1.3.2-source.tar.gz 1143573 BLAKE2B e95e9ad352e7e695a0c56a8cea7bff312d7e1e811e17da6c744f16833130ca5339c163504afff3ed61947e752b94dc0465f6702317feb7662fb9676939838f20 SHA512 ed09a895c2f7e9b6e18687a899f1303dfda95e505c3c2d54bf7598cc4eba6c2fb5926589b19dd294384a4ff3f832c43235b1f03f8b7fd295cd558e78bda1400a +EBUILD beignet-1.3.2-r1.ebuild 2668 BLAKE2B 12e4ec730bd82c38086c7b6516353c3d884cc6578f9b73a9d671b409ac1ac1e2c575887252c762b2df2323c098e89c134030850a7919acaa4ada20809d303557 SHA512 3e59792f8235d1f659abfff9be27b69384b01c1bd6cfc6fe15bfbc4d5da0860a12bfe13dd3c506d132695ee739631a413e5f4d70ac481f3348e9c4f5d90d1f57 EBUILD beignet-1.3.2.ebuild 2630 BLAKE2B 09a301f4174494e0f8007de277f9c3d888361661631ace7e1858a0a4cfec7cac07f494b2187862e447e1079716b9561bc6526422ce8100df54bdaf282de8cf0b SHA512 823a890987d1c6e3c16f9127ebe20947ea09d9114f9e5e42fe97e212d32ae53d44dcfb37aead35608c8b3c2f2214f9c493c99381073cabd4d6ab8872f49762db EBUILD beignet-9999.ebuild 2452 BLAKE2B 91b4102d667aa6e265c725f7e77a5bf66198b75569d15a6ea7ea6e89a064639a5783d7670dd7627e47b6ee90124a076fba3abc8a13aeb7f82d3aaf9a7e4ab7a0 SHA512 def37f0a7884bcf1f87f3ec1da46d499a7cb6f8dc216ce51212f72039490f70746a5ca3fe3ab1bc7da481834b16d54c0bdf11f7834de319b5e978e5b641d203b MISC metadata.xml 473 BLAKE2B e805dfe8af6753bfd30bc46d81637c28106320d8a149a41adb893b3fbe6deb54ef16589f78223153ae9446110b9b905267724034664896f9970bd6fd200c52fc SHA512 79c6f3d28b6c15b05616af2b5224f7b6e79642ae6e6b3579ac510c0935f288940d015258b1c2d07820fcbdca117eca66f25a5a4dc7df3af92c771e9ff9243186 diff --git a/dev-libs/beignet/beignet-1.3.2-r1.ebuild b/dev-libs/beignet/beignet-1.3.2-r1.ebuild new file mode 100644 index 000000000000..c562b68c13b3 --- /dev/null +++ b/dev-libs/beignet/beignet-1.3.2-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} ) +CMAKE_BUILD_TYPE="Release" + +inherit python-any-r1 cmake-multilib flag-o-matic llvm toolchain-funcs + +DESCRIPTION="OpenCL implementation for Intel GPUs" +HOMEPAGE="https://01.org/beignet" + +LICENSE="LGPL-2.1+" +SLOT="0" +IUSE="ocl-icd ocl20" + +if [[ "${PV}" == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://anongit.freedesktop.org/git/beignet.git" + KEYWORDS="" +else + KEYWORDS="~amd64" + SRC_URI="https://01.org/sites/default/files/${P}-source.tar.gz" + S=${WORKDIR}/Beignet-${PV}-Source +fi + +COMMON="media-libs/mesa[${MULTILIB_USEDEP}] + <sys-devel/clang-6.0.9999:=[${MULTILIB_USEDEP}] + >=x11-libs/libdrm-2.4.70[video_cards_intel,${MULTILIB_USEDEP}] + x11-libs/libXext[${MULTILIB_USEDEP}] + x11-libs/libXfixes[${MULTILIB_USEDEP}]" +RDEPEND="${COMMON} + app-eselect/eselect-opencl" +DEPEND="${COMMON} + ${PYTHON_DEPS} + ocl-icd? ( dev-libs/ocl-icd ) + virtual/pkgconfig" + +LLVM_MAX_SLOT=6 + +PATCHES=( + "${FILESDIR}"/no-debian-multiarch.patch + "${FILESDIR}"/${PN}-1.3.2_cmake-llvm-config-multilib.patch + "${FILESDIR}"/${PN}-1.3.2_llvm6.patch + "${FILESDIR}"/${PN}-1.3.1-oclicd_no_upstream_icdfile.patch + "${FILESDIR}"/${PN}-1.2.0_no-hardcoded-cflags.patch + "${FILESDIR}"/llvm-terminfo.patch +) + +DOCS=( + docs/. +) + +pkg_pretend() { + if [[ ${MERGE_TYPE} != "binary" ]]; then + if tc-is-gcc; then + if [[ $(gcc-major-version) -eq 4 ]] && [[ $(gcc-minor-version) -lt 6 ]]; then + eerror "Compilation with gcc older than 4.6 is not supported" + die "Too old gcc found." + fi + fi + fi +} + +pkg_setup() { + llvm_pkg_setup + python_setup +} + +src_prepare() { + # See Bug #593968 + append-flags -fPIC + + cmake-utils_src_prepare + # We cannot run tests because they require permissions to access + # the hardware, and building them is very time-consuming. + cmake_comment_add_subdirectory utests +} + +multilib_src_configure() { + VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}" + + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="${VENDOR_DIR}" + -DOCLICD_COMPAT=$(usex ocl-icd) + $(usex ocl20 "" "-DENABLE_OPENCL_20=OFF") + ) + + cmake-utils_src_configure +} + +multilib_src_install() { + VENDOR_DIR="/usr/$(get_libdir)/OpenCL/vendors/${PN}" + + cmake-utils_src_install + + insinto /etc/OpenCL/vendors/ + echo "${VENDOR_DIR}/lib/${PN}/libcl.so" > "${PN}-${ABI}.icd" || die "Failed to generate ICD file" + doins "${PN}-${ABI}.icd" + + dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so.1 + dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libOpenCL.so + dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so.1 + dosym "lib/${PN}/libcl.so" "${VENDOR_DIR}"/libcl.so +} diff --git a/dev-libs/beignet/files/beignet-1.3.2_llvm6.patch b/dev-libs/beignet/files/beignet-1.3.2_llvm6.patch new file mode 100644 index 000000000000..be3ccbc44325 --- /dev/null +++ b/dev-libs/beignet/files/beignet-1.3.2_llvm6.patch @@ -0,0 +1,27 @@ +--- a/backend/src/llvm/llvm_to_gen.cpp ++++ b/backend/src/llvm/llvm_to_gen.cpp +@@ -322,7 +322,11 @@ namespace gbe + DataLayout DL(&mod); + + gbeDiagnosticContext dc; ++#if LLVM_VERSION_MAJOR >= 6 ++ mod.getContext().setDiagnosticHandlerCallBack(&gbeDiagnosticHandler,&dc); ++#else + mod.getContext().setDiagnosticHandler(&gbeDiagnosticHandler,&dc); ++#endif + + #if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 37 + mod.setDataLayout(DL); +--- a/backend/src/llvm/llvm_unroll.cpp ++++ b/backend/src/llvm/llvm_unroll.cpp +@@ -205,7 +205,9 @@ namespace gbe { + if (parentTripCount != 0 && currTripCount * parentTripCount > 32) { + //Don't change the unrollID if doesn't force unroll. + //setUnrollID(parentL, false); +-#if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 38 ++#if LLVM_VERSION_MAJOR >= 6 ++ loopInfo.erase(parentL); ++#elif LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 38 + loopInfo.markAsRemoved(parentL); + #else + LPM.deleteLoopFromQueue(parentL); |