Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 Apr 2020 15:50:46 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r531020 - in head: devel devel/level-zero lang/intel-compute-runtime lang/intel-compute-runtime/files
Message-ID:  <202004071550.037FokBv017269@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Tue Apr  7 15:50:46 2020
New Revision: 531020
URL: https://svnweb.freebsd.org/changeset/ports/531020

Log:
  lang/intel-compute-runtime: expose oneAPI support
  
  Need help testing runtime e.g., finding a simple consumer.

Added:
  head/devel/level-zero/
  head/devel/level-zero/Makefile   (contents, props changed)
  head/devel/level-zero/distinfo   (contents, props changed)
  head/devel/level-zero/pkg-descr   (contents, props changed)
  head/devel/level-zero/pkg-plist   (contents, props changed)
  head/lang/intel-compute-runtime/files/patch-glibc   (contents, props changed)
Modified:
  head/devel/Makefile   (contents, props changed)
  head/lang/intel-compute-runtime/Makefile   (contents, props changed)
  head/lang/intel-compute-runtime/files/patch-unix   (contents, props changed)

Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile	Tue Apr  7 15:16:48 2020	(r531019)
+++ head/devel/Makefile	Tue Apr  7 15:50:46 2020	(r531020)
@@ -1092,6 +1092,7 @@
     SUBDIR += leatherman
     SUBDIR += leiningen
     SUBDIR += lemon
+    SUBDIR += level-zero
     SUBDIR += lfcbase
     SUBDIR += lfcxml
     SUBDIR += libCello

Added: head/devel/level-zero/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/level-zero/Makefile	Tue Apr  7 15:50:46 2020	(r531020)
@@ -0,0 +1,27 @@
+# $FreeBSD$
+
+PORTNAME=	level-zero
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.91.10
+CATEGORIES=	devel
+
+PATCH_SITES=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
+PATCHFILES+=	4a42aa94cad2.patch:-p1 # https://github.com/oneapi-src/level-zero/pull/9
+
+MAINTAINER=	jbeich@FreeBSD.org
+COMMENT=	oneAPI Level Zero Specification Headers and Loader
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${LOCALBASE}/include/CL/cl.h:devel/opencl
+
+USES=		cmake compiler:c++14-lang
+USE_GITHUB=	yes
+USE_LDCONFIG=	yes
+GH_ACCOUNT=	oneapi-src
+
+post-extract:
+	@${ECHO_CMD} ${DISTVERSION:E} >${WRKSRC}/VERSION_PATCH
+
+.include <bsd.port.mk>

Added: head/devel/level-zero/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/level-zero/distinfo	Tue Apr  7 15:50:46 2020	(r531020)
@@ -0,0 +1,5 @@
+TIMESTAMP = 1585258131
+SHA256 (oneapi-src-level-zero-v0.91.10_GH0.tar.gz) = 9193d8cc57cd63f9b0f44bbc51c9d099c6e899781edb33f9869a850865c64d3d
+SIZE (oneapi-src-level-zero-v0.91.10_GH0.tar.gz) = 291352
+SHA256 (4a42aa94cad2.patch) = 295946e6d77152e0b82bfd483b0e4bbb207c762016692a4aa62ee7d6338aa698
+SIZE (4a42aa94cad2.patch) = 2289

Added: head/devel/level-zero/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/level-zero/pkg-descr	Tue Apr  7 15:50:46 2020	(r531020)
@@ -0,0 +1,7 @@
+Contains the following components of oneAPI:
+
+- Copies of the Level Zero Specification API C/C++ header files
+- Level Zero Loader
+- Level Zero Validation Layer
+
+WWW: https://spec.oneapi.com/versions/latest/elements/l0/source/index.html

Added: head/devel/level-zero/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/level-zero/pkg-plist	Tue Apr  7 15:50:46 2020	(r531020)
@@ -0,0 +1,73 @@
+include/level_zero/layers/validation/ze_layer.h
+include/level_zero/lib/core/ze_lib.h
+include/level_zero/lib/loader/driver_discovery.h
+include/level_zero/lib/loader/ze_core_loader.h
+include/level_zero/lib/loader/ze_loader.h
+include/level_zero/lib/loader/ze_object.h
+include/level_zero/lib/loader/ze_tools_loader.h
+include/level_zero/lib/tools/zet_lib.h
+include/level_zero/wrapper/core/ze_api.hpp
+include/level_zero/wrapper/core/ze_barrier.hpp
+include/level_zero/wrapper/core/ze_cl_interop.hpp
+include/level_zero/wrapper/core/ze_cmdlist.hpp
+include/level_zero/wrapper/core/ze_cmdqueue.hpp
+include/level_zero/wrapper/core/ze_common.hpp
+include/level_zero/wrapper/core/ze_copy.hpp
+include/level_zero/wrapper/core/ze_device.hpp
+include/level_zero/wrapper/core/ze_driver.hpp
+include/level_zero/wrapper/core/ze_event.hpp
+include/level_zero/wrapper/core/ze_fence.hpp
+include/level_zero/wrapper/core/ze_image.hpp
+include/level_zero/wrapper/core/ze_memory.hpp
+include/level_zero/wrapper/core/ze_module.hpp
+include/level_zero/wrapper/core/ze_residency.hpp
+include/level_zero/wrapper/core/ze_sampler.hpp
+include/level_zero/wrapper/tools/zet_api.hpp
+include/level_zero/wrapper/tools/zet_cmdlist.hpp
+include/level_zero/wrapper/tools/zet_common.hpp
+include/level_zero/wrapper/tools/zet_debug.hpp
+include/level_zero/wrapper/tools/zet_device.hpp
+include/level_zero/wrapper/tools/zet_driver.hpp
+include/level_zero/wrapper/tools/zet_metric.hpp
+include/level_zero/wrapper/tools/zet_module.hpp
+include/level_zero/wrapper/tools/zet_pin.hpp
+include/level_zero/wrapper/tools/zet_sysman.hpp
+include/level_zero/wrapper/tools/zet_tracing.hpp
+include/level_zero/ze_api.h
+include/level_zero/ze_barrier.h
+include/level_zero/ze_callbacks.h
+include/level_zero/ze_cl_interop.h
+include/level_zero/ze_cmdlist.h
+include/level_zero/ze_cmdqueue.h
+include/level_zero/ze_common.h
+include/level_zero/ze_copy.h
+include/level_zero/ze_ddi.h
+include/level_zero/ze_device.h
+include/level_zero/ze_driver.h
+include/level_zero/ze_event.h
+include/level_zero/ze_fence.h
+include/level_zero/ze_image.h
+include/level_zero/ze_memory.h
+include/level_zero/ze_module.h
+include/level_zero/ze_residency.h
+include/level_zero/ze_sampler.h
+include/level_zero/ze_singleton.h
+include/level_zero/ze_util.h
+include/level_zero/zet_api.h
+include/level_zero/zet_cmdlist.h
+include/level_zero/zet_common.h
+include/level_zero/zet_ddi.h
+include/level_zero/zet_debug.h
+include/level_zero/zet_device.h
+include/level_zero/zet_driver.h
+include/level_zero/zet_metric.h
+include/level_zero/zet_module.h
+include/level_zero/zet_pin.h
+include/level_zero/zet_sysman.h
+include/level_zero/zet_tracing.h
+lib/libze_loader.so
+lib/libze_loader.so.0.91
+lib/libze_loader.so.0.91.10
+lib/libze_validation_layer.so
+lib/libze_validation_layer.so.0.91
+lib/libze_validation_layer.so.0.91.10

Modified: head/lang/intel-compute-runtime/Makefile
==============================================================================
--- head/lang/intel-compute-runtime/Makefile	Tue Apr  7 15:16:48 2020	(r531019)
+++ head/lang/intel-compute-runtime/Makefile	Tue Apr  7 15:50:46 2020	(r531020)
@@ -2,6 +2,7 @@
 
 PORTNAME=	compute-runtime
 DISTVERSION=	20.13.16352
+PORTREVISION=	1
 CATEGORIES=	lang
 PKGNAMEPREFIX=	intel-
 
@@ -26,6 +27,15 @@ CMAKE_ARGS=	-DNEO_DRIVER_VERSION:STRING="${DISTVERSION
 PLIST_FILES=	etc/OpenCL/vendors/intel.icd \
 		bin/ocloc \
 		lib/intel-opencl/libigdrcl.so
+
+OPTIONS_DEFINE_amd64=	L0
+OPTIONS_DEFAULT_amd64=	L0
+
+L0_DESC=		oneAPI Level Zero support
+L0_BUILD_DEPENDS=	level-zero>0:devel/level-zero
+L0_CMAKE_BOOL=		BUILD_WITH_L0
+L0_PLIST_FILES=		lib/libze_intel_gpu.so.0.8 \
+			lib/libze_intel_gpu.so.0.8.0
 
 post-patch:
 	@${REINPLACE_CMD} -e '/-Werror/d' \

Added: head/lang/intel-compute-runtime/files/patch-glibc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/intel-compute-runtime/files/patch-glibc	Tue Apr  7 15:50:46 2020	(r531020)
@@ -0,0 +1,17 @@
+major/minor/makedev aren't used, so drop Linux-specific header.
+
+In file included from level_zero/tools/source/sysman/linux/os_sysman_imp.h:12:
+level_zero/tools/source/sysman/linux/fs_access.h:19:10: fatal error: 'sys/sysmacros.h' file not found
+#include <sys/sysmacros.h>
+         ^~~~~~~~~~~~~~~~~
+
+--- level_zero/tools/source/sysman/linux/fs_access.h.orig	2020-03-27 09:53:58 UTC
++++ level_zero/tools/source/sysman/linux/fs_access.h
+@@ -16,7 +16,6 @@
+ #include <sstream>
+ #include <string>
+ #include <sys/stat.h>
+-#include <sys/sysmacros.h>
+ #include <sys/types.h>
+ #include <unistd.h>
+ #include <vector>

Modified: head/lang/intel-compute-runtime/files/patch-unix
==============================================================================
--- head/lang/intel-compute-runtime/files/patch-unix	Tue Apr  7 15:16:48 2020	(r531019)
+++ head/lang/intel-compute-runtime/files/patch-unix	Tue Apr  7 15:50:46 2020	(r531020)
@@ -1,5 +1,13 @@
 Relax Linux checks for the code works on any non-Windows platform
 
+In file included from level_zero/tools/source/pin/pin.cpp:11:
+level_zero/source/inc/ze_intel_gpu.h:34:2: error: "Unsupported OS"
+#error "Unsupported OS"
+ ^
+level_zero/api/core/ze_core_loader.cpp:29:41: error: use of undeclared identifier 'LOAD_INTEL_GPU_LIBRARY'
+        driver_ddiTable.driverLibrary = LOAD_INTEL_GPU_LIBRARY();
+                                        ^
+
 core/elf/writer.cpp:54:9: error:
       use of undeclared identifier 'memcpy_s'
         memcpy_s(data, queueFront.dataSize, queueFront.data.c_str(), queueFront.dataSize);
@@ -13,6 +21,26 @@ core/elf/writer.cpp:76:5: error:
     memcpy_s(curSectionHeader, sizeof(SElf64SectionHeader),
     ^
 
+--- level_zero/source/inc/ze_intel_gpu.h.orig	2020-03-27 09:53:58 UTC
++++ level_zero/source/inc/ze_intel_gpu.h
+@@ -12,7 +12,7 @@
+ #include <string.h>
+ 
+ ///////////////////////////////////////////////////////////////////////////////
+-#if defined(__linux__)
++#if !defined(__APPLE__) && !defined(_WIN32)
+ #include <dlfcn.h>
+ #define HMODULE void *
+ #define MAKE_VERSION() L0_PROJECT_VERSION_MAJOR "." L0_PROJECT_VERSION_MINOR
+@@ -42,7 +42,7 @@ inline bool getenv_tobool(const char *name) {
+     return (0 == strcmp("1", env));
+ }
+ 
+-#if defined(__linux__)
++#if !defined(__APPLE__) && !defined(_WIN32)
+ #define LOAD_INTEL_GPU_LIBRARY() LOAD_DRIVER_LIBRARY(MAKE_LIBRARY_NAME("ze_intel_gpu", MAKE_VERSION()))
+ #elif defined(_WIN32)
+ #if _WIN64
 --- shared/source/helpers/string.h.orig	2020-02-28 16:16:42 UTC
 +++ shared/source/helpers/string.h
 @@ -10,7 +10,7 @@



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202004071550.037FokBv017269>