summary refs log tree commit diff
diff options
context:
space:
mode:
authorDavid Wood <david@davidtw.co>2019-10-04 13:45:26 +0100
committerDavid Wood <david@davidtw.co>2019-10-04 13:45:26 +0100
commit4820d630bf789a9d1aa32694d4d227ab5f324812 (patch)
tree70cfd8213176361ae3fbc8501efa2e7a5627de5d
parentb52fb3b0789b143e4f4c92972ce62d1880e3b1fe (diff)
downloadnixpkgs-4820d630bf789a9d1aa32694d4d227ab5f324812.tar
nixpkgs-4820d630bf789a9d1aa32694d4d227ab5f324812.tar.gz
nixpkgs-4820d630bf789a9d1aa32694d4d227ab5f324812.tar.bz2
nixpkgs-4820d630bf789a9d1aa32694d4d227ab5f324812.tar.lz
nixpkgs-4820d630bf789a9d1aa32694d4d227ab5f324812.tar.xz
nixpkgs-4820d630bf789a9d1aa32694d4d227ab5f324812.tar.zst
nixpkgs-4820d630bf789a9d1aa32694d4d227ab5f324812.zip
khronos-ocl-icd-loader: init at 6c03f8b
-rw-r--r--pkgs/development/libraries/khronos-ocl-icd-loader/default.nix26
-rw-r--r--pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch13
-rw-r--r--pkgs/top-level/all-packages.nix2
3 files changed, 41 insertions, 0 deletions
diff --git a/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix b/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
new file mode 100644
index 00000000000..a57b103b0d9
--- /dev/null
+++ b/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, opencl-clhpp, cmake, withTracing ? false }:
+
+stdenv.mkDerivation rec {
+  name = "khronos-ocl-icd-loader-${version}";
+  version = "6c03f8b";
+
+  src = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "OpenCL-ICD-Loader";
+    rev = "6c03f8b58fafd9dd693eaac826749a5cfad515f8";
+    sha256 = "00icrlc00dpc87prbd2j1350igi9pbgkz27hc3rf73s5994yn86a";
+  };
+
+  patches = stdenv.lib.lists.optional withTracing ./tracing.patch;
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ opencl-clhpp ];
+
+  meta = with stdenv.lib; {
+    description = "Offical Khronos OpenCL ICD Loader";
+    homepage = https://github.com/KhronosGroup/OpenCL-ICD-Loader;
+    license = licenses.asl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ davidtwco ];
+  };
+}
diff --git a/pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch b/pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch
new file mode 100644
index 00000000000..415a1b1dfe4
--- /dev/null
+++ b/pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch
@@ -0,0 +1,13 @@
+diff --git a/loader/icd.h b/loader/icd.h
+index a1b6969..cf4e272 100644
+--- a/loader/icd.h
++++ b/loader/icd.h
+@@ -122,7 +122,7 @@ void khrIcdContextPropertiesGetPlatform(
+     cl_platform_id *outPlatform);
+
+ // internal tracing macros
+-#if 0
++#if 1
+     #include <stdio.h>
+     #define KHR_ICD_TRACE(...) \
+     do \
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index fb906ed884a..d1e17f7526e 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -9787,6 +9787,8 @@ in
 
   kind = callPackage ../development/tools/kind {  };
 
+  khronos-ocl-icd-loader = callPackage ../development/libraries/khronos-ocl-icd-loader {  };
+
   kube-aws = callPackage ../development/tools/kube-aws { };
 
   kubectx = callPackage ../development/tools/kubectx { };