uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
49
pkgs/development/libraries/beignet/clang_llvm.patch
Normal file
49
pkgs/development/libraries/beignet/clang_llvm.patch
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
diff --git a/./CMake/FindLLVM.cmake b/../Beignet-1.1.2-Source_new/CMake/FindLLVM.cmake
|
||||
index a148321..96cafb8 100644
|
||||
--- a/./CMake/FindLLVM.cmake
|
||||
+++ b/../Beignet-1.1.2-Source_new/CMake/FindLLVM.cmake
|
||||
@@ -22,6 +22,7 @@ if (LLVM_CONFIG_EXECUTABLE)
|
||||
else (LLVM_CONFIG_EXECUTABLE)
|
||||
message(FATAL_ERROR "Could NOT find LLVM executable, please add -DLLVM_INSTALL_DIR=/path/to/llvm-config/ in cmake command")
|
||||
endif (LLVM_CONFIG_EXECUTABLE)
|
||||
+
|
||||
execute_process(
|
||||
COMMAND ${LLVM_CONFIG_EXECUTABLE} --version
|
||||
OUTPUT_VARIABLE LLVM_VERSION
|
||||
@@ -44,10 +45,16 @@ if (LLVM_FIND_VERSION_MAJOR AND LLVM_FIND_VERSION_MINOR)
|
||||
endif (LLVM_VERSION_NODOT VERSION_LESS LLVM_FIND_VERSION_NODOT)
|
||||
endif (LLVM_FIND_VERSION_MAJOR AND LLVM_FIND_VERSION_MINOR)
|
||||
|
||||
-if (LLVM_INSTALL_DIR)
|
||||
+if (CLANG_INSTALL_DIR)
|
||||
find_program(CLANG_EXECUTABLE
|
||||
NAMES clang-${LLVM_VERSION_NODOT} clang-${LLVM_VERSION_NOPATCH} clang
|
||||
- PATHS ${LLVM_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
+ PATHS ${CLANG_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
+else (CLANG_INSTALL_DIR)
|
||||
+ find_program(CLANG_EXECUTABLE
|
||||
+ NAMES clang-${LLVM_VERSION_NODOT} clang-${LLVM_VERSION_NOPATCH} clang)
|
||||
+endif (CLANG_INSTALL_DIR)
|
||||
+
|
||||
+if (LLVM_INSTALL_DIR)
|
||||
find_program(LLVM_AS_EXECUTABLE
|
||||
NAMES llvm-as-${LLVM_VERSION_NODOT} llvm-as-${LLVM_VERSION_NOPATCH} llvm-as
|
||||
PATHS ${LLVM_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
@@ -55,8 +62,6 @@ if (LLVM_INSTALL_DIR)
|
||||
NAMES llvm-link-${LLVM_VERSION_NODOT} llvm-link-${LLVM_VERSION_NOPATCH} llvm-link
|
||||
PATHS ${LLVM_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
else (LLVM_INSTALL_DIR)
|
||||
- find_program(CLANG_EXECUTABLE
|
||||
- NAMES clang-${LLVM_VERSION_NODOT} clang-${LLVM_VERSION_NOPATCH} clang)
|
||||
find_program(LLVM_AS_EXECUTABLE
|
||||
NAMES llvm-as-${LLVM_VERSION_NODOT} llvm-as-${LLVM_VERSION_NOPATCH} llvm-as)
|
||||
find_program(LLVM_LINK_EXECUTABLE
|
||||
@@ -105,7 +110,7 @@ endif (LLVM_VERSION_NODOT VERSION_GREATER 34)
|
||||
macro(add_one_lib name)
|
||||
FIND_LIBRARY(CLANG_LIB
|
||||
NAMES ${name}
|
||||
- PATHS ${LLVM_LIBRARY_DIR} NO_DEFAULT_PATH)
|
||||
+ PATHS ${CLANG_LIBRARY_DIR} NO_DEFAULT_PATH)
|
||||
set(CLANG_LIBRARIES ${CLANG_LIBRARIES} ${CLANG_LIB})
|
||||
unset(CLANG_LIB CACHE)
|
||||
endmacro()
|
||||
112
pkgs/development/libraries/beignet/default.nix
Normal file
112
pkgs/development/libraries/beignet/default.nix
Normal file
|
|
@ -0,0 +1,112 @@
|
|||
{ lib, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, pkg-config
|
||||
, libclang
|
||||
, libllvm
|
||||
, libdrm
|
||||
, libX11
|
||||
, libpthreadstubs
|
||||
, libXdmcp
|
||||
, libXdamage
|
||||
, libXext
|
||||
, python3
|
||||
, ocl-icd
|
||||
, libGL
|
||||
, makeWrapper
|
||||
, beignet
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "beignet";
|
||||
version = "unstable-2018.08.20";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "intel";
|
||||
repo = "beignet";
|
||||
rev = "fc5f430cb7b7a8f694d86acbb038bd5b38ec389c";
|
||||
sha256 = "1z64v69w7f52jrskh1jfyh1x46mzfhjrqxj9hhgzh3xxv9yla32h";
|
||||
};
|
||||
|
||||
patches = [ ./clang_llvm.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace CMakeLists.txt --replace /etc/OpenCL/vendors "\''${CMAKE_INSTALL_PREFIX}/etc/OpenCL/vendors"
|
||||
patchShebangs src/git_sha1.sh
|
||||
'';
|
||||
|
||||
cmakeFlags = [ "-DCLANG_LIBRARY_DIR=${libclang.lib}/lib" ];
|
||||
|
||||
buildInputs = [
|
||||
libllvm
|
||||
libclang
|
||||
libX11
|
||||
libXext
|
||||
libpthreadstubs
|
||||
libdrm
|
||||
libXdmcp
|
||||
libXdamage
|
||||
ocl-icd
|
||||
libGL
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
python3
|
||||
];
|
||||
|
||||
passthru.utests = stdenv.mkDerivation {
|
||||
pname = "beignet-utests";
|
||||
inherit version src;
|
||||
|
||||
preConfigure = ''
|
||||
cd utests
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
python3
|
||||
pkg-config
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
ocl-icd
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
wrapBin() {
|
||||
install -Dm755 "$1" "$out/bin/$(basename "$1")"
|
||||
wrapProgram "$out/bin/$(basename "$1")" \
|
||||
--set OCL_BITCODE_LIB_PATH ${beignet}/lib/beignet/beignet.bc \
|
||||
--set OCL_HEADER_FILE_DIR "${beignet}/lib/beignet/include" \
|
||||
--set OCL_PCH_PATH "${beignet}/lib/beignet/beignet.pch" \
|
||||
--set OCL_GBE_PATH "${beignet}/lib/beignet/libgbe.so" \
|
||||
--set OCL_INTERP_PATH "${beignet}/lib/beignet/libgbeinterp.so" \
|
||||
--set OCL_KERNEL_PATH "$out/lib/beignet/kernels" \
|
||||
--set OCL_IGNORE_SELF_TEST 1
|
||||
}
|
||||
|
||||
install -Dm755 libutests.so $out/lib/libutests.so
|
||||
wrapBin utest_run
|
||||
wrapBin flat_address_space
|
||||
mkdir $out/lib/beignet
|
||||
cp -r ../../kernels $out/lib/beignet
|
||||
'';
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://cgit.freedesktop.org/beignet/";
|
||||
description = "OpenCL Library for Intel Ivy Bridge and newer GPUs";
|
||||
longDescription = ''
|
||||
The package provides an open source implementation of the OpenCL specification for Intel GPUs.
|
||||
It supports the Intel OpenCL runtime library and compiler.
|
||||
'';
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = with maintainers; [ artuuge zimbatm ];
|
||||
platforms = platforms.linux;
|
||||
# Requires libdrm_intel
|
||||
badPlatforms = [ "aarch64-linux" ];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue