mirror of
git://git.yoctoproject.org/meta-intel
synced 2026-01-01 13:58:05 +00:00
Compare commits
No commits in common. "master" and "zeus-22.0.0" have entirely different histories.
master
...
zeus-22.0.
87
CHANGELOG
Normal file
87
CHANGELOG
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
This file will only list major changes that occur within a release.
|
||||
For a full list of changes, view the git log of the repository.
|
||||
|
||||
Rocko Release 11/2017
|
||||
=====================
|
||||
|
||||
Moved qat support to separate layer
|
||||
-----------------------------------
|
||||
Quick Assist Technology (QAT) is more middleware and should not be part of the
|
||||
core BSP. The new layer can be found here:
|
||||
https://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-qat/
|
||||
|
||||
Moved dpdk support to separate layer
|
||||
------------------------------------
|
||||
We had some requests to make DPDK standalone so that it could be included
|
||||
without bringing in anything else from meta-intel, as it is not specific to
|
||||
Intel(R) hardware. The new layer is located here:
|
||||
https://git.yoctoproject.org/cgit/cgit.cgi/meta-dpdk/
|
||||
|
||||
Added support for out-of-tree iwlwifi drivers
|
||||
---------------------------------------------
|
||||
Backport-iwlwifi out-of-tree wifi modules are now available via meta-intel.
|
||||
Backport-iwlwifi brings the latest iwlwifi drivers to almost any kernel
|
||||
Note that mac80211 and cfg80211 backports are also necessary, which will most
|
||||
likely cause incompatibility with other in-tree wifi drivers.
|
||||
See https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi for more info.
|
||||
|
||||
Added support for out-of-tree ixgbe drivers
|
||||
-------------------------------------------
|
||||
The out-of-tree ixgbe drivers bring ixgbe support to nearly any kernel. See
|
||||
here: http://www.intel.com/network/connectivity/products/server_adapters.htm
|
||||
|
||||
Added an implementation of Secure Boot
|
||||
--------------------------------------
|
||||
meta-intel now supports a simple Secure Boot implementation. This implementation
|
||||
consists of a single binary consisting of an EFI stub, the kernel, an
|
||||
initrd, and a kernel command line. The binary is then signed via keys defined by
|
||||
the variables SECUREBOOT_SIGNING_KEY and SECUREBOOT_SIGNING_CERT. These keys
|
||||
should match the keys embedded in your hardware's firmware.
|
||||
See documentation/secureboot/README for more information on this feature.
|
||||
|
||||
Improved Yocto Project Compatibility status
|
||||
-------------------------------------------
|
||||
The common layer should now be considered Yocto Project compatible - it should
|
||||
no longer modify OE-core values when adding the layer to your bblayers.conf.
|
||||
The meta-tlk layer is still not Yocto Project compatible, however.
|
||||
|
||||
Pyro Release 5/2017
|
||||
===================
|
||||
|
||||
Changed default kernel provider from linux-yocto to linux-intel.
|
||||
----------------------------------------------------------------
|
||||
Linux-intel is an Intel(R)-maintained kernel based on the latest stable
|
||||
branch, along with backports from upstream to better support Intel(R)
|
||||
hardware. The intel-linux kernel also has a branch with the preempt-rt
|
||||
patches applied, providing a preempt-rt kernel with no additional work.
|
||||
|
||||
Added QEMU support.
|
||||
-------------------
|
||||
We now build several virtio drivers into the kernel by default, and
|
||||
have qemuboot.conf files for intel-corei7-64 and intel-core2-32
|
||||
targets. This allows one to do basic testing on meta-intel images
|
||||
without having to use hardware. The virtio drivers are added via
|
||||
KERNEL_FEATURES_INTEL_COMMON. This prevents them from being added to
|
||||
custom kernels by default. They can be removed by adding the
|
||||
following to a conf or kernel bbappend file:
|
||||
KERNEL_FEATURES_INTEL_COMMON_remove = “cfg/virtio.scc”
|
||||
OVMF firmware is also built and can be used in order to emulate a UEFI
|
||||
environment. A full runqemu command line for intel-corei7-64 could look
|
||||
like this:
|
||||
runqemu core-image-minimal intel-corei7-64 wic ovmf
|
||||
|
||||
Musl support
|
||||
------------
|
||||
Meta-intel is now compatible with the musl C library. You can specify musl
|
||||
As your C library by adding the following to your local.conf:
|
||||
TCLIBC = “musl”
|
||||
Note: there is a known failure with DPDK.
|
||||
|
||||
X32 support
|
||||
-----------
|
||||
The meta-intel layer can now build with the x32 tune settings in a multi-lib
|
||||
setting, it will not work in as the primary MACHINE tune as the bootloader needs
|
||||
to be built as a 64bit binary. The setup for this would be as follows:
|
||||
require conf/multilib.conf
|
||||
MULTILIBS = "multilib:libx32
|
||||
DEFAULTTUNE_virtclass-multilib-libx32 = "corei7-64-x32"
|
||||
32
MAINTAINERS
Normal file
32
MAINTAINERS
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
This file contains a list of BSP maintainers for the BSPs contained in
|
||||
the meta-intel repository.
|
||||
|
||||
The purpose of this file is to provide contact information for
|
||||
specific BSPs and other code contained within meta-intel. You should
|
||||
address questions and patches for a particular BSP or other code to
|
||||
the appropriate maintainer listed in this file, cc'ing the meta-intel
|
||||
mailing list. This ensures that your question or patch will be
|
||||
addressed by the appropriate person, and that it will be seen by other
|
||||
users who may be facing similar problems or questions.
|
||||
|
||||
Please see the top-level README file for guidelines relating to the
|
||||
details of submitting patches, reporting problems, or asking questions
|
||||
about any of the BSPs or other recipes contained within meta-intel.
|
||||
|
||||
Descriptions of section entries:
|
||||
|
||||
M: Mail patches to: FullName <address@domain>
|
||||
F: Files and directories with wildcard patterns.
|
||||
A trailing slash includes all files and subdirectory files.
|
||||
F: common/ all files in and below common
|
||||
F: common/* all files in common, but not below
|
||||
One pattern per line. Multiple F: lines acceptable.
|
||||
|
||||
Please keep this list in alphabetical order.
|
||||
|
||||
Maintainers List (try to look for most precise areas first)
|
||||
|
||||
-----------------------------------
|
||||
|
||||
M: Anuj Mittal <anuj.mittal@intel.com>
|
||||
F: *
|
||||
459
README
Normal file
459
README
Normal file
|
|
@ -0,0 +1,459 @@
|
|||
meta-intel
|
||||
==========
|
||||
|
||||
This README file contains information on building and booting
|
||||
meta-intel BSP layers. Please see the corresponding sections below
|
||||
for details.
|
||||
|
||||
|
||||
Yocto Project Compatible
|
||||
========================
|
||||
|
||||
The BSPs contained in this layer are compatible with the Yocto Project
|
||||
as per the requirements listed here:
|
||||
|
||||
https://www.yoctoproject.org/webform/yocto-project-compatible-registration
|
||||
|
||||
|
||||
Dependencies
|
||||
============
|
||||
|
||||
This layer depends on:
|
||||
|
||||
URI: git://git.openembedded.org/bitbake
|
||||
|
||||
URI: git://git.openembedded.org/openembedded-core
|
||||
layers: meta
|
||||
branch: master
|
||||
|
||||
|
||||
Table of Contents
|
||||
=================
|
||||
|
||||
I. Overview
|
||||
II. Building and booting meta-intel BSP layers
|
||||
a. Building the intel-common BSP layers
|
||||
b. Booting the intel-common BSP images
|
||||
c. Building the installer image
|
||||
III. Technical Miscellany
|
||||
Benefits of using meta-intel
|
||||
The intel-common kernel package architecture
|
||||
Intel-specific machine features
|
||||
IV. Tested Hardware
|
||||
V. Guidelines for submitting patches
|
||||
|
||||
|
||||
I. Overview
|
||||
===========
|
||||
|
||||
This is the location for Intel-maintained BSPs.
|
||||
|
||||
For details on the intel-common, see the information below.
|
||||
|
||||
For all others, please see the README files contained in the
|
||||
individual BSP layers for BSP-specific information.
|
||||
|
||||
If you have problems with or questions about a particular BSP, please
|
||||
contact the maintainer listed in the MAINTAINERS file directly (cc:ing
|
||||
the Yocto mailing list puts it in the archive and helps other people
|
||||
who might have the same questions in the future), but please try to do
|
||||
the following first:
|
||||
|
||||
- look in the Yocto Project Bugzilla
|
||||
(http://bugzilla.yoctoproject.org/) to see if a problem has
|
||||
already been reported
|
||||
|
||||
- look through recent entries of the meta-intel
|
||||
(https://lists.yoctoproject.org/pipermail/meta-intel/) and Yocto
|
||||
(https://lists.yoctoproject.org/pipermail/yocto/) mailing list
|
||||
archives to see if other people have run into similar problems or
|
||||
had similar questions answered.
|
||||
|
||||
If you believe you have encountered a bug, you can open a new bug and
|
||||
enter the details in the Yocto Project Bugzilla
|
||||
(http://bugzilla.yoctoproject.org/). If you're relatively certain
|
||||
that it's a bug against the BSP itself, please use the 'Yocto Project
|
||||
Components: BSPs | meta-intel' category for the bug; otherwise, please
|
||||
submit the bug against the most likely category for the problem - if
|
||||
you're wrong, it's not a big deal and the bug will be recategorized
|
||||
upon triage.
|
||||
|
||||
|
||||
II. Building and booting meta-intel BSP layers
|
||||
==============================================
|
||||
|
||||
The following sections contain information on building and booting the
|
||||
BSPs contained in the meta-intel layer.
|
||||
|
||||
Note that these instructions specifically cover the intel-common, which
|
||||
may or may not be applicable to other BSPs contained in this layer - if
|
||||
a given BSP contains its own README, that version should be used instead,
|
||||
and these instructions can be ignored.
|
||||
|
||||
a. Building the intel-common BSP layers
|
||||
-------------------------------------------------
|
||||
|
||||
In order to build an image with BSP support for a given release, you
|
||||
need to download the corresponding BSP tarball from the 'Board Support
|
||||
Package (BSP) Downloads' page of the Yocto Project website (or
|
||||
equivalently, check out the appropriate branch from the meta-intel git
|
||||
repository, see below). For the intel-common BSPs, those tarballs would
|
||||
correspond to the following choices in the BSP downloads section:
|
||||
|
||||
- Intel-core2-32 Intel® Common Core BSP (Intel-core2-32)
|
||||
- Intel-corei7-64 Intel® Common Core BSP (Intel-corei7-64)
|
||||
|
||||
The intel-* BSPs, also known as the intel-common BSPs, provide a few
|
||||
carefully selected tune options and generic hardware support to cover
|
||||
the majority of current Intel CPUs and devices. The naming follows the
|
||||
convention of intel-<TUNE>-<BITS>, where TUNE is the gcc cpu-type
|
||||
(used with mtune and march typically) and BITS is either 32 bit or 64
|
||||
bit.
|
||||
|
||||
Having done that, and assuming you extracted the BSP tarball contents
|
||||
at the top-level of your yocto build tree, you can build a BSP image
|
||||
by adding the location of the meta-intel layer to bblayers.conf e.g.:
|
||||
|
||||
yocto/meta-intel \
|
||||
|
||||
To enable a particular machine, you need to add a MACHINE line naming
|
||||
the BSP to the local.conf file:
|
||||
|
||||
MACHINE ?= "xxx"
|
||||
|
||||
where 'xxx' is replaced by one of the following BSP names:
|
||||
|
||||
- intel-core2-32
|
||||
|
||||
This BSP is optimized for the Core2 family of CPUs as well as all
|
||||
Atom CPUs prior to the Silvermont core.
|
||||
|
||||
- intel-corei7-64
|
||||
|
||||
This BSP is optimized for Nehalem and later Core and Xeon CPUs as
|
||||
well as Silvermont and later Atom CPUs, such as the Baytrail SoCs.
|
||||
|
||||
You should then be able to build an image as such:
|
||||
|
||||
$ source oe-init-build-env
|
||||
$ bitbake core-image-sato
|
||||
|
||||
At the end of a successful build, you should have an image that
|
||||
you can boot from a USB flash drive (see instructions on how to do
|
||||
that below, in the section 'Booting the intel-common BSP images').
|
||||
|
||||
As an alternative to downloading the BSP tarball, you can also work
|
||||
directly from the meta-intel git repository. For each BSP in the
|
||||
'meta-intel' repository, there are multiple branches, one
|
||||
corresponding to each major release starting with 'laverne' (0.90), in
|
||||
addition to the latest code which tracks the current master (note that
|
||||
not all BSPs are present in every release). Instead of extracting
|
||||
a BSP tarball at the top level of your yocto build tree, you can
|
||||
equivalently check out the appropriate branch from the meta-intel
|
||||
repository at the same location.
|
||||
|
||||
b. Booting the intel-common BSP images
|
||||
--------------------------------------
|
||||
|
||||
If you've built your own image, either from the downloaded BSP layer
|
||||
or from the meta-intel git repository, you'll find the bootable
|
||||
image in the build/tmp/deploy/images/xxx directory, where again
|
||||
'xxx' refers to the machine name used in the build.
|
||||
|
||||
Under Linux, insert a USB flash drive. Assuming the USB flash drive
|
||||
takes device /dev/sdf, use dd to copy the image to it. Before the image
|
||||
can be burned onto a USB drive, it should be un-mounted. Some Linux distros
|
||||
may automatically mount a USB drive when it is plugged in. Using USB device
|
||||
/dev/sdf as an example, find all mounted partitions:
|
||||
|
||||
$ mount | grep sdf
|
||||
|
||||
and un-mount those that are mounted, for example:
|
||||
|
||||
$ umount /dev/sdf1
|
||||
$ umount /dev/sdf2
|
||||
|
||||
Now burn the image onto the USB drive:
|
||||
|
||||
$ sudo dd if=core-image-sato-intel-corei7-64.wic of=/dev/sdf status=progress
|
||||
$ sync
|
||||
$ eject /dev/sdf
|
||||
|
||||
This should give you a bootable USB flash device. Insert the device
|
||||
into a bootable USB socket on the target, and power on. This should
|
||||
result in a system booted to the Sato graphical desktop.
|
||||
|
||||
If you want a terminal, use the arrows at the top of the UI to move to
|
||||
different pages of available applications, one of which is named
|
||||
'Terminal'. Clicking that should give you a root terminal.
|
||||
|
||||
If you want to ssh into the system, you can use the root terminal to
|
||||
ifconfig the IP address and use that to ssh in. The root password is
|
||||
empty, so to log in type 'root' for the user name and hit 'Enter' at
|
||||
the Password prompt: and you should be in.
|
||||
|
||||
If you find you're getting corrupt images on the USB (it doesn't show
|
||||
the syslinux boot: prompt, or the boot: prompt contains strange
|
||||
characters), try doing this first:
|
||||
|
||||
$ dd if=/dev/zero of=/dev/sdf bs=1M count=512
|
||||
|
||||
c. Building the installer image
|
||||
-----------------------------------------------
|
||||
|
||||
If you plan to install your image to your target machine, you can build a wic
|
||||
based installer image instead of default wic image. To build it, you need to
|
||||
add below configuration to local.conf :
|
||||
|
||||
WKS_FILE = "image-installer.wks.in"
|
||||
IMAGE_FSTYPES_append = " ext4"
|
||||
IMAGE_TYPEDEP_wic = "ext4"
|
||||
INITRD_IMAGE_LIVE="core-image-minimal-initramfs"
|
||||
do_image_wic[depends] += "${INITRD_IMAGE_LIVE}:do_image_complete"
|
||||
do_rootfs[depends] += "virtual/kernel:do_deploy"
|
||||
IMAGE_BOOT_FILES_append = "\
|
||||
${KERNEL_IMAGETYPE} \
|
||||
microcode.cpio \
|
||||
${IMGDEPLOYDIR}/${IMAGE_BASENAME}-${MACHINE}.ext4;rootfs.img \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', 'grub-efi-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', '${IMAGE_ROOTFS}/boot/EFI/BOOT/grub.cfg;EFI/BOOT/grub.cfg', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', 'systemd-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/loader.conf;loader/loader.conf ', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/entries/boot.conf;loader/entries/boot.conf', '', d)} "
|
||||
|
||||
Burn the wic image onto USB flash device, insert the device to target machine
|
||||
and power on. This should start the installation process.
|
||||
|
||||
III. Technical Miscellany
|
||||
=========================
|
||||
|
||||
Benefits of using meta-intel
|
||||
----------------------------
|
||||
|
||||
Using meta-intel has the following benefits over a generic BSP:
|
||||
|
||||
tune flags
|
||||
++++++++++
|
||||
intel-* MACHINEs each have different compilation flags appropriate for their
|
||||
targeted hardware sets. intel-corei7-64 has tune flags appropriate for modern
|
||||
64-bit Intel Core i microarchitecture, and includes instruction sets up to
|
||||
SSE4.2. intel-core2-32 has tune flags appropriate for legacy 32-bit Intel Core2
|
||||
microarchitecture, and includes instruction sets up to SSE3.
|
||||
|
||||
linux-intel kernel
|
||||
++++++++++++++++++
|
||||
The linux-intel kernel is an initiative to bring better Intel(R) hardware
|
||||
support to the current LTS linux kernel. It contains a base LTS kernel with
|
||||
additional backports from upstream Intel drivers. In addition, a default kernel
|
||||
config containing most features found on Intel boards is supplied via the
|
||||
yocto-kernel-cache.
|
||||
|
||||
graphics stack
|
||||
++++++++++++++
|
||||
Meta-intel provides the latest Intel Graphics Linux Stack drivers to support
|
||||
Intel hardware as defined by the https://01.org/linuxgraphics.
|
||||
|
||||
Other software
|
||||
++++++++++++++
|
||||
* intel ucode - provides the latest microcode updates for Intel processors
|
||||
|
||||
* thermald - which proactively controls thermal, using P-states, T-states, and
|
||||
the Intel power clamp driver.
|
||||
(https://01.org/linux-thermal-daemon/documentation/introduction-thermal-daemon)
|
||||
|
||||
The intel-common kernel package architecture
|
||||
--------------------------------------------
|
||||
|
||||
These BSPs use what we call the intel-common Linux kernel package
|
||||
architecture. This includes core2-32-intel-common and
|
||||
corei7-64-intel-common. These kernel packages can also be used by any
|
||||
of the BSPs in meta-intel that choose to include the
|
||||
intel-common-pkgarch.inc file.
|
||||
|
||||
To minimize the proliferation of vendor trees, reduce the sources we
|
||||
must support, and consolidate QA efforts, all BSP maintainers are
|
||||
encouraged to make use of the intel-common Linux kernel package
|
||||
architecture.
|
||||
|
||||
Intel-specific machine features
|
||||
-------------------------------
|
||||
|
||||
The meta-intel layer makes some additional machine features available
|
||||
to BSPs. These machine features can be used in a BSP layer in the
|
||||
same way that machine features are used in other layers based on
|
||||
oe-core, via the MACHINE_FEATURES variable.
|
||||
|
||||
Requirements
|
||||
++++++++++++
|
||||
|
||||
The meta-intel-specific machine features are only available to a BSP
|
||||
when the meta-intel layer is included in the build configuration, and
|
||||
the meta-intel.inc file is included in the machine configuration of
|
||||
that BSP.
|
||||
|
||||
To make these features available for your machine, you will need to:
|
||||
|
||||
1. include a configuration line such as the below in bblayers.conf
|
||||
BBLAYERS += "<local path>/meta-intel"
|
||||
2. include the following line in the machine configuration file
|
||||
require conf/machine/include/meta-intel.inc
|
||||
|
||||
Once the above requirements are met, the machine features provided by
|
||||
the meta-intel layer will be available for the BSP to use.
|
||||
|
||||
Available machine features
|
||||
++++++++++++++++++++++++++
|
||||
|
||||
Currently, the meta-intel layer makes the following set of
|
||||
Intel-specific machine features available:
|
||||
|
||||
* intel-ucode
|
||||
|
||||
These machine features can be included by listing them in the
|
||||
MACHINE_FEATURES variable in the machine configuration file. For
|
||||
example:
|
||||
|
||||
MACHINE_FEATURES += "intel-ucode"
|
||||
|
||||
Machine feature details
|
||||
+++++++++++++++++++++++
|
||||
|
||||
* intel-ucode
|
||||
|
||||
This feature provides support for microcode updates to Intel
|
||||
processors. The intel-ucode feature runs at early boot and uses
|
||||
the microcode data file added by the feature into the BSP's
|
||||
initrd. It also puts the userland microcode-updating tool,
|
||||
iucode_tool, into the target images along with the microcode data
|
||||
file.
|
||||
|
||||
Q. Why might a user want to enable the intel-ucode feature?
|
||||
|
||||
A. Intel releases microcode updates to correct processor behavior
|
||||
as documented in the respective processor specification
|
||||
updates. While the normal approach to getting such microcode
|
||||
updates is via a BIOS upgrade, this can be an administrative
|
||||
hassle and not always possible in the field. The intel-ucode
|
||||
feature enables the microcode update capability present in the
|
||||
Linux kernel. It provides an easy path for upgrading processor
|
||||
microcode without the need to change the BIOS. If the feature
|
||||
is enabled, it is also possible to update the existing target
|
||||
images with a newer microcode update in the future.
|
||||
|
||||
Q. How would a user bundle only target-specific microcode in the
|
||||
target image?
|
||||
|
||||
A. The Intel microcode data file released by Intel contains
|
||||
microcode updates for multiple processors. If the BSP image is
|
||||
meant to run on only a certain subset of processor types, a
|
||||
processor-specific subset of microcode can be bundled into the
|
||||
target image via the UCODE_FILTER_PARAMETERS variable. This
|
||||
works by listing a sequence of iucode-tool parameters in the
|
||||
UCODE_FILTER_PARAMETERS variable, which in this case will
|
||||
select only the specific microcode relevant to the BSP. For
|
||||
more information on the underlying parameters refer to the
|
||||
iucode-tool manual page at http://manned.org/iucode-tool
|
||||
|
||||
To define a set of parameters for microcode-filtering via the
|
||||
UCODE_FILTER_PARAMETERS variable, one needs to identify the
|
||||
cpuid signatures of all the processors the BSP is meant to run
|
||||
on. One way to determine the cpuid signature for a specific
|
||||
processor is to build and run an intel-ucode-feature-enabled
|
||||
image on the target hardware, without first assigning any value
|
||||
to the UCODE_FILTER_PARAMETERS variable, and then once the
|
||||
image is booted, run the "ucode_tool -S" command to have the
|
||||
ucode tool scan the system for processor signatures. These
|
||||
signatures can then be used in the UCODE_FILTER_PARAMETERS
|
||||
variable in conjunction with -s parameter. For example, for
|
||||
the fri2 BSP, the cpuid can be determined as such:
|
||||
|
||||
[root@fri2 ~]# iucode_tool -S
|
||||
iucode_tool: system has processor(s) with signature 0x00020661
|
||||
|
||||
Given that output, a suitable UCODE_FILTER_PARAMETERS variable
|
||||
definition could be specified in the machine configuration as
|
||||
such:
|
||||
|
||||
UCODE_FILTER_PARAMETERS = "-s 0x00020661"
|
||||
|
||||
Q. Are there any reasons a user might want to disable the
|
||||
intel-ucode feature?
|
||||
|
||||
A. The microcode data file and associated tools occupy a small
|
||||
amount of space (a few KB) on the target image. BSPs which are
|
||||
highly sensitive to target image size and which are not
|
||||
experiencing microcode-related issues might consider not
|
||||
enabling this feature.
|
||||
|
||||
|
||||
IV. Tested Hardware
|
||||
===================
|
||||
|
||||
The following undergo regular basic testing with their respective MACHINE types.
|
||||
Note that both 64-bit and 32-bit firmware is available for the MinnowBoard
|
||||
Turbot, so it is tested against both intel-corei7-64 and intel-core2-32.
|
||||
|
||||
intel-corei7-64:
|
||||
NUC6i5SYH
|
||||
NUC7i7BNH
|
||||
Coffee Lake-H
|
||||
|
||||
intel-core2-32:
|
||||
MinnowBoard Turbot
|
||||
|
||||
|
||||
V. Guidelines for submitting patches
|
||||
====================================
|
||||
|
||||
Please submit any patches against meta-intel BSPs to the meta-intel
|
||||
mailing list (meta-intel@yoctoproject.org). Also, if your patches are
|
||||
available via a public git repository, please also include a URL to
|
||||
the repo and branch containing your patches as that makes it easier
|
||||
for maintainers to grab and test your patches.
|
||||
|
||||
There are patch submission scripts available that will, among other
|
||||
things, automatically include the repo URL and branch as mentioned.
|
||||
Please see the Yocto Project Development Manual sections entitled
|
||||
'Using Scripts to Push a Change Upstream and Request a Pull' and
|
||||
'Using Email to Submit a Patch' for details.
|
||||
|
||||
Regardless of how you submit a patch or patchset, the patches should
|
||||
at minimum follow the suggestions outlined in the 'Submitting a Change
|
||||
to the Yocto Project' section in the Yocto Project Development Manual.
|
||||
Specifically, they should:
|
||||
|
||||
- Include a 'Signed-off-by:' line. A commit can't legally be pulled
|
||||
in without this.
|
||||
|
||||
- Provide a single-line, short summary of the change. This short
|
||||
description should be prefixed by the BSP or recipe name, as
|
||||
appropriate, followed by a colon. Capitalize the first character
|
||||
of the summary (following the colon).
|
||||
|
||||
- For the body of the commit message, provide detailed information
|
||||
that describes what you changed, why you made the change, and the
|
||||
approach you used.
|
||||
|
||||
- If the change addresses a specific bug or issue that is associated
|
||||
with a bug-tracking ID, include a reference to that ID in your
|
||||
detailed description in the following format: [YOCTO #<bug-id>].
|
||||
|
||||
- Pay attention to line length - please don't allow any particular
|
||||
line in the commit message to stretch past 72 characters.
|
||||
|
||||
- For any non-trivial patch, provide information about how you
|
||||
tested the patch, and for any non-trivial or non-obvious testing
|
||||
setup, provide details of that setup.
|
||||
|
||||
Doing a quick 'git log' in meta-intel will provide you with many
|
||||
examples of good example commits if you have questions about any
|
||||
aspect of the preferred format.
|
||||
|
||||
The meta-intel maintainers will do their best to review and/or pull in
|
||||
a patch or patchset within 24 hours of the time it was posted. For
|
||||
larger and/or more involved patches and patchsets, the review process
|
||||
may take longer.
|
||||
|
||||
Please see the meta-intel/MAINTAINERS file for the list of maintainers
|
||||
and their specific areas; it's also a good idea to cc: the specific
|
||||
maintainer, if applicable.
|
||||
35
README.md
35
README.md
|
|
@ -1,35 +0,0 @@
|
|||
# meta-intel
|
||||
|
||||
OpenEmbedded/Yocto BSP layer for Intel platforms.
|
||||
|
||||
## Dependencies
|
||||
|
||||
This layer primarily depends on OpenEmbedded-Core (OE-Core). However, certain
|
||||
recipes may require additional layers to support optional features or
|
||||
programming languages not supported by OE-Core. Such recipes are located within
|
||||
the `dynamic-layers` directory.
|
||||
|
||||
Base dependencies:
|
||||
- [Bitbake](https://git.openembedded.org/bitbake)
|
||||
- [OE-Core](https://git.openembedded.org/openembedded-core)
|
||||
|
||||
Dynamic additional dependencies:
|
||||
|
||||
- [meta-openembedded](https://git.openembedded.org/meta-openembedded/tree/meta-oe)
|
||||
- [meta-python](https://git.openembedded.org/meta-openembedded/tree/meta-python)
|
||||
- [meta-clang](https://github.com/kraj/meta-clang.git)
|
||||
|
||||
|
||||
## Contents
|
||||
|
||||
- [Building and booting meta-intel BSP layers](documentation/building_and_booting.md)
|
||||
- [Intel oneAPI DPC++/C++ Compiler](documentation/dpcpp-compiler.md)
|
||||
- [Build Image with OpenVINO™ toolkit](documentation/openvino.md)
|
||||
- [Tested Hardware](documentation/tested_hardware.md)
|
||||
- [Guidelines for submitting patches](documentation/submitting_patches.md)
|
||||
- [Reporting bugs](documentation/reporting_bugs.md)
|
||||
- [Reporting security bugs](SECURITY.md)
|
||||
|
||||
## Maintainers
|
||||
|
||||
- Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
17
README.sources
Normal file
17
README.sources
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
The sources for the packages comprising the images shipped with this
|
||||
BSP can be found at the following location:
|
||||
|
||||
http://downloads.yoctoproject.org/mirror/sources/
|
||||
|
||||
The metadata used to generate the images shipped with this BSP, in
|
||||
addition to the code contained in this BSP, can be found at the
|
||||
following location:
|
||||
|
||||
http://downloads.yoctoproject.org/releases/yocto/yocto-2.7/poky-warrior-21.0.0.tar.bz2
|
||||
|
||||
The metadata used to generate the images shipped with this BSP, in
|
||||
addition to the code contained in this BSP, can also be found at the
|
||||
following locations:
|
||||
|
||||
git://git.yoctoproject.org/poky.git
|
||||
git://git.yoctoproject.org/meta-intel
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
# Security Policy
|
||||
Intel is committed to rapidly addressing security vulnerabilities affecting our customers and providing clear guidance on the solution, impact, severity and mitigation.
|
||||
|
||||
## Reporting a Vulnerability
|
||||
Please report any security vulnerabilities in this project [utilizing the guidelines here](https://www.intel.com/content/www/us/en/security-center/vulnerability-handling-guidelines.html).
|
||||
|
||||
151
classes/uefi-comboapp.bbclass
Normal file
151
classes/uefi-comboapp.bbclass
Normal file
|
|
@ -0,0 +1,151 @@
|
|||
# This class brings a more generic version of the UEFI combo app from refkit to meta-intel.
|
||||
# It uses a combo file, containing kernel, initramfs and
|
||||
# command line, presented to the BIOS as UEFI application, by prepending
|
||||
# it with the efi stub obtained from systemd-boot.
|
||||
|
||||
# Don't add syslinux or build an ISO
|
||||
PCBIOS_forcevariable = "0"
|
||||
NOISO_forcevariable = "1"
|
||||
|
||||
# image-live.bbclass will default INITRD_LIVE to the image INITRD_IMAGE creates.
|
||||
# We want behavior to be consistent whether or not "live" is in IMAGE_FSTYPES, so
|
||||
# we default INITRD_LIVE to the INITRD_IMAGE as well.
|
||||
INITRD_IMAGE ?= "core-image-minimal-initramfs"
|
||||
INITRD_LIVE ?= " ${@ ('${DEPLOY_DIR_IMAGE}/' + d.getVar('INITRD_IMAGE', expand=True) + '-${MACHINE}.cpio.gz') if d.getVar('INITRD_IMAGE', True) else ''}"
|
||||
|
||||
do_uefiapp[depends] += " \
|
||||
intel-microcode:do_deploy \
|
||||
systemd-boot:do_deploy \
|
||||
virtual/kernel:do_deploy \
|
||||
"
|
||||
|
||||
# INITRD_IMAGE is added to INITRD_LIVE, which we use to create our initrd, so depend on it if it is set
|
||||
do_uefiapp[depends] += "${@ '${INITRD_IMAGE}:do_image_complete' if d.getVar('INITRD_IMAGE') else ''}"
|
||||
|
||||
# The image does without traditional bootloader.
|
||||
# In its place, instead, it uses a single UEFI executable binary, which is
|
||||
# composed by:
|
||||
# - an UEFI stub
|
||||
# The linux kernel can generate a UEFI stub, however the one from systemd-boot can fetch
|
||||
# the command line from a separate section of the EFI application, avoiding the need to
|
||||
# rebuild the kernel.
|
||||
# - the kernel
|
||||
# - an initramfs (optional)
|
||||
|
||||
def create_uefiapp(d, uuid=None, app_suffix=''):
|
||||
import glob, re
|
||||
from subprocess import check_call
|
||||
|
||||
build_dir = d.getVar('B')
|
||||
deploy_dir_image = d.getVar('DEPLOY_DIR_IMAGE')
|
||||
image_link_name = d.getVar('IMAGE_LINK_NAME')
|
||||
|
||||
cmdline = '%s/cmdline.txt' % build_dir
|
||||
linux = '%s/%s' % (deploy_dir_image, d.getVar('KERNEL_IMAGETYPE'))
|
||||
initrd = '%s/initrd' % build_dir
|
||||
|
||||
stub_path = '%s/linux*.efi.stub' % deploy_dir_image
|
||||
stub = glob.glob(stub_path)[0]
|
||||
m = re.match(r"\S*(ia32|x64)(.efi)\S*", os.path.basename(stub))
|
||||
app = "boot%s%s%s" % (m.group(1), app_suffix, m.group(2))
|
||||
executable = '%s/%s.%s' % (deploy_dir_image, image_link_name, app)
|
||||
|
||||
if d.getVar('INITRD_LIVE'):
|
||||
with open(initrd, 'wb') as dst:
|
||||
for cpio in d.getVar('INITRD_LIVE').split():
|
||||
with open(cpio, 'rb') as src:
|
||||
dst.write(src.read())
|
||||
initrd_cmd = "--add-section .initrd=%s --change-section-vma .initrd=0x3000000 " % initrd
|
||||
else:
|
||||
initrd_cmd = ""
|
||||
|
||||
root = 'root=PARTUUID=%s' % uuid if uuid else ''
|
||||
|
||||
with open(cmdline, 'w') as f:
|
||||
f.write('%s %s' % (d.getVar('APPEND'), root))
|
||||
|
||||
objcopy_cmd = ("objcopy "
|
||||
"--add-section .cmdline=%s --change-section-vma .cmdline=0x30000 "
|
||||
"--add-section .linux=%s --change-section-vma .linux=0x40000 "
|
||||
"%s %s %s") % \
|
||||
(cmdline, linux, initrd_cmd, stub, executable)
|
||||
|
||||
check_call(objcopy_cmd, shell=True)
|
||||
|
||||
python create_uefiapps () {
|
||||
# We must clean up anything that matches the expected output pattern, to ensure that
|
||||
# the next steps do not accidentally use old files.
|
||||
import glob
|
||||
pattern = d.expand('${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.boot*.efi')
|
||||
for old_efi in glob.glob(pattern):
|
||||
os.unlink(old_efi)
|
||||
uuid = d.getVar('DISK_SIGNATURE_UUID')
|
||||
create_uefiapp(d, uuid=uuid)
|
||||
}
|
||||
|
||||
# This is intentionally split into different parts. This way, derived
|
||||
# classes or images can extend the individual parts. We can also use
|
||||
# whatever language (shell script or Python) is more suitable.
|
||||
python do_uefiapp() {
|
||||
bb.build.exec_func('create_uefiapps', d)
|
||||
}
|
||||
|
||||
do_uefiapp[vardeps] += "APPEND DISK_SIGNATURE_UUID INITRD_LIVE KERNEL_IMAGETYPE IMAGE_LINK_NAME"
|
||||
|
||||
uefiapp_deploy_at() {
|
||||
dest=$1
|
||||
for i in ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.boot*.efi; do
|
||||
target=`basename $i`
|
||||
target=`echo $target | sed -e 's/${IMAGE_LINK_NAME}.//'`
|
||||
cp --preserve=timestamps -r $i $dest/$target
|
||||
done
|
||||
}
|
||||
|
||||
fakeroot do_uefiapp_deploy() {
|
||||
rm -rf ${IMAGE_ROOTFS}/boot/*
|
||||
dest=${IMAGE_ROOTFS}/boot/EFI/BOOT
|
||||
mkdir -p $dest
|
||||
uefiapp_deploy_at $dest
|
||||
}
|
||||
|
||||
do_uefiapp_deploy[depends] += "${PN}:do_uefiapp virtual/fakeroot-native:do_populate_sysroot"
|
||||
|
||||
|
||||
# This decides when/how we add our tasks to the image
|
||||
python () {
|
||||
image_fstypes = d.getVar('IMAGE_FSTYPES', True)
|
||||
initramfs_fstypes = d.getVar('INITRAMFS_FSTYPES', True)
|
||||
|
||||
# Don't add any of these tasks to initramfs images
|
||||
if initramfs_fstypes not in image_fstypes:
|
||||
bb.build.addtask('uefiapp', 'do_image', 'do_rootfs', d)
|
||||
bb.build.addtask('uefiapp_deploy', 'do_image', 'do_rootfs', d)
|
||||
}
|
||||
|
||||
SIGN_AFTER ?= "do_uefiapp"
|
||||
SIGN_BEFORE ?= "do_uefiapp_deploy"
|
||||
SIGNING_DIR ?= "${DEPLOY_DIR_IMAGE}"
|
||||
SIGNING_BINARIES ?= "${IMAGE_LINK_NAME}.boot*.efi"
|
||||
inherit uefi-sign
|
||||
|
||||
# Legacy hddimg support below this line
|
||||
efi_hddimg_populate() {
|
||||
uefiapp_deploy_at "$1"
|
||||
}
|
||||
|
||||
build_efi_cfg() {
|
||||
# The command line is built into the combo app, so this is a null op
|
||||
:
|
||||
}
|
||||
|
||||
populate_kernel_append() {
|
||||
# The kernel and initrd are built into the app, so we don't need these
|
||||
if [ -f $dest/initrd ]; then
|
||||
rm $dest/initrd
|
||||
fi
|
||||
if [ -f $dest/vmlinuz ]; then
|
||||
rm $dest/vmlinuz
|
||||
fi
|
||||
}
|
||||
|
||||
IMAGE_FEATURES[validitems] += "secureboot"
|
||||
50
classes/uefi-sign.bbclass
Normal file
50
classes/uefi-sign.bbclass
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
# By default, sign all .efi binaries in ${B} after compiling and before deploying
|
||||
SIGNING_DIR ?= "${B}"
|
||||
SIGNING_BINARIES ?= "*.efi"
|
||||
SIGN_AFTER ?= "do_compile"
|
||||
SIGN_BEFORE ?= "do_deploy"
|
||||
|
||||
python () {
|
||||
import os
|
||||
import hashlib
|
||||
|
||||
# Ensure that if the signing key or cert change, we rerun the uefiapp process
|
||||
if bb.utils.contains('IMAGE_FEATURES', 'secureboot', True, False, d):
|
||||
for varname in ('SECURE_BOOT_SIGNING_CERT', 'SECURE_BOOT_SIGNING_KEY'):
|
||||
filename = d.getVar(varname)
|
||||
if filename is None:
|
||||
bb.fatal('%s is not set.' % varname)
|
||||
if not os.path.isfile(filename):
|
||||
bb.fatal('%s=%s is not a file.' % (varname, filename))
|
||||
with open(filename, 'rb') as f:
|
||||
data = f.read()
|
||||
hash = hashlib.sha256(data).hexdigest()
|
||||
d.setVar('%s_HASH' % varname, hash)
|
||||
|
||||
# Must reparse and thus rehash on file changes.
|
||||
bb.parse.mark_dependency(d, filename)
|
||||
|
||||
bb.build.addtask('uefi_sign', d.getVar('SIGN_BEFORE'), d.getVar('SIGN_AFTER'), d)
|
||||
|
||||
# Original binary needs to be regenerated if the hash changes since we overwrite it
|
||||
# SIGN_AFTER isn't necessarily when it gets generated, but its our best guess
|
||||
d.appendVarFlag(d.getVar('SIGN_AFTER'), 'vardeps', 'SECURE_BOOT_SIGNING_CERT_HASH SECURE_BOOT_SIGNING_KEY_HASH')
|
||||
}
|
||||
|
||||
do_uefi_sign() {
|
||||
if [ -f ${SECURE_BOOT_SIGNING_KEY} ] && [ -f ${SECURE_BOOT_SIGNING_CERT} ]; then
|
||||
for i in `find ${SIGNING_DIR}/ -name '${SIGNING_BINARIES}'`; do
|
||||
sbsign --key ${SECURE_BOOT_SIGNING_KEY} --cert ${SECURE_BOOT_SIGNING_CERT} $i
|
||||
sbverify --cert ${SECURE_BOOT_SIGNING_CERT} $i.signed
|
||||
mv $i.signed $i
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
do_uefi_sign[depends] += "sbsigntool-native:do_populate_sysroot"
|
||||
|
||||
do_uefi_sign[vardeps] += "SECURE_BOOT_SIGNING_CERT_HASH \
|
||||
SECURE_BOOT_SIGNING_KEY_HASH \
|
||||
SIGNING_BINARIES SIGNING_DIR \
|
||||
SIGN_BEFORE SIGN_AFTER \
|
||||
"
|
||||
|
|
@ -1,46 +1,24 @@
|
|||
# This file contains a list of recipe maintainers for meta-intel
|
||||
|
||||
RECIPE_MAINTAINER:pn-backport-iwlwifi = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-core-image-rt = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-core-image-rt-sdk = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-core-image-tiny = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-core-image-minimal-initramfs = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-embree = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-gmmlib = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-intel-cmt-cat = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-intel-compute-runtime = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-intel-crypto-mb = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-intel-graphics-compiler = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-intel-media-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-intel-microcode = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-intel-vaapi-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-ipmctl = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-isa-l = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-ispc = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-itt = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-ixgbe = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-ixgbevf = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-iucode-tool = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-level-zero = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-libipt = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-libva-intel = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-libva-intel-utils = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-libxcam = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-linux-intel = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-linux-intel-rt = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-linux-intel-dev = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-linux-npu-driver = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-lms = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-metee = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-metrics-discovery = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-oidn = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-onednn = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-onedpl = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-onevpl = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-onevpl-intel-gpu = "Yew Chang Ching <chang.ching.yew@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-opencl-clang = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-openvkl = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-ospray = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-rkcommon = "Naveen Saini <naveen.kumar.saini@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-thermald = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER:pn-xf86-video-ast = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-core-image-rt = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-core-image-rt-sdk = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-gma500-gfx-check = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-gmmlib = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-intel-gpu-tools = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-intel-media-driver = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-intel-mediasdk = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-intel-microcode = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-core-image-minimal-initramfs = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-iucode-tool = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-intel-vaapi-driver = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libyami = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libyami-utils = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-linux-intel = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-linux-intel-rt = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-thermald = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xf86-video-ast = "Anuj Mittal <anuj.mittal@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-mkl-dnn = "Ankit Navik <ankit.tarot@gmail.com>"
|
||||
RECIPE_MAINTAINER_pn-metrics-discovery = "Ankit Navik <ankit.tarot@gmail.com>"
|
||||
RECIPE_MAINTAINER_pn-libxcam = "Ankit Navik <ankit.tarot@gmail.com>"
|
||||
RECIPE_MAINTAINER_pn-isa-l = "Ankit Navik <ankit.tarot@gmail.com>"
|
||||
RECIPE_MAINTAINER_pn-libipt = "Ankit Navik <ankit.tarot@gmail.com>"
|
||||
|
|
|
|||
|
|
@ -10,16 +10,15 @@ BBFILE_PATTERN_intel := "^${LAYERDIR}/"
|
|||
BBFILE_PRIORITY_intel = "5"
|
||||
|
||||
# Additional license directories.
|
||||
CUSTOM_LICENSES_PATH = "${LAYERDIR}/custom-licenses"
|
||||
LICENSE_PATH += "${CUSTOM_LICENSES_PATH}"
|
||||
LICENSE_PATH += "${LAYERDIR}/custom-licenses"
|
||||
|
||||
LAYERDEPENDS_intel = "core"
|
||||
LAYERRECOMMENDS_intel = "dpdk"
|
||||
LAYERRECOMMENDS_intel = "dpdk intel-qat"
|
||||
|
||||
# This should only be incremented on significant changes that will
|
||||
# cause compatibility issues with other layers
|
||||
LAYERVERSION_intel = "5"
|
||||
LAYERSERIES_COMPAT_intel = "scarthgap whinlatter"
|
||||
LAYERSERIES_COMPAT_intel = "thud warrior zeus"
|
||||
|
||||
BBFILES_DYNAMIC += " \
|
||||
clang-layer:${LAYERDIR}/dynamic-layers/clang-layer/*/*/*.bb \
|
||||
|
|
@ -32,14 +31,6 @@ BBFILES_DYNAMIC += " \
|
|||
|
||||
require ${LAYERDIR}/conf/include/maintainers.inc
|
||||
|
||||
# Use the libva from OE-Core when layer is included but no MACHINE
|
||||
# from meta-intel is being used.
|
||||
PREFERRED_PROVIDER_libva ?= "libva"
|
||||
PREFERRED_PROVIDER_libva-native ?= "libva-native"
|
||||
PREFERRED_PROVIDER_nativesdk-libva ?= "nativesdk-libva"
|
||||
|
||||
PREFERRED_PROVIDER_libva-utils ?= "libva-utils"
|
||||
PREFERRED_PROVIDER_libva-utils-native ?= "libva-utils-native"
|
||||
PREFERRED_PROVIDER_nativesdk-libva-utils ?= "nativesdk-libva-utils"
|
||||
|
||||
addpylib ${LAYERDIR}/lib oeqa
|
||||
PREFERRED_PROVIDER_zlib ?= "zlib"
|
||||
PREFERRED_PROVIDER_zlib-native ?= "zlib-native"
|
||||
PREFERRED_PROVIDER_nativesdk-zlib ?= "nativesdk-zlib"
|
||||
|
|
|
|||
|
|
@ -1,15 +1,15 @@
|
|||
INTEL_COMMON_PACKAGE_ARCH ?= "${TUNE_PKGARCH}-intel-common"
|
||||
PACKAGE_ARCH:pn-linux-intel = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-linux-intel-rt = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-linux-intel-tiny = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-linux-intel-dev = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-linux-yocto = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-linux-yocto-rt = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-linux-yocto-tiny = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-linux-yocto-dev = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-intel-microcode = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-backport-iwlwifi = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-ixgbe = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH:pn-ixgbevf = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_EXTRA_ARCHS:append = " ${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-intel = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-intel-rt = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-intel-tiny = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-intel-dev = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-yocto = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-yocto-rt = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-yocto-tiny = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-linux-yocto-dev = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-intel-microcode = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-backport-iwlwifi = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-ixgbe = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_ARCH_pn-ixgbevf = "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
PACKAGE_EXTRA_ARCHS_append += "${INTEL_COMMON_PACKAGE_ARCH}"
|
||||
MACHINEOVERRIDES =. "${INTEL_COMMON_PACKAGE_ARCH}:"
|
||||
|
|
|
|||
|
|
@ -3,5 +3,5 @@
|
|||
#
|
||||
|
||||
DEFAULTTUNE ?= "core2-32"
|
||||
require conf/machine/include/x86/tune-core2.inc
|
||||
require conf/machine/include/x86/x86-base.inc
|
||||
require conf/machine/include/tune-core2.inc
|
||||
require conf/machine/include/x86-base.inc
|
||||
|
|
|
|||
|
|
@ -3,5 +3,5 @@
|
|||
#
|
||||
|
||||
DEFAULTTUNE ?= "corei7-64"
|
||||
require conf/machine/include/x86/tune-corei7.inc
|
||||
require conf/machine/include/x86/x86-base.inc
|
||||
require conf/machine/include/tune-corei7.inc
|
||||
require conf/machine/include/x86-base.inc
|
||||
|
|
|
|||
|
|
@ -5,40 +5,36 @@
|
|||
#
|
||||
|
||||
PREFERRED_PROVIDER_virtual/kernel ?= "linux-intel"
|
||||
PREFERRED_PROVIDER_virtual/kernel:poky-tiny ?= "linux-intel"
|
||||
PREFERRED_PROVIDER_virtual/kernel_poky-tiny ?= "linux-intel"
|
||||
|
||||
PREFERRED_VERSION_linux-intel ?= "6.12%"
|
||||
PREFERRED_VERSION_linux-intel-rt ?= "6.12%"
|
||||
PREFERRED_VERSION_linux-intel:poky-altcfg ?= "6.12%"
|
||||
PREFERRED_VERSION_linux-intel-rt:poky-altcfg ?= "6.12%"
|
||||
# Only use the Intel-tuned zlib for target builds to improve reuse
|
||||
PREFERRED_PROVIDER_zlib = "zlib-intel"
|
||||
PREFERRED_PROVIDER_zlib-native = "zlib-native"
|
||||
PREFERRED_PROVIDER_nativesdk-zlib = "nativesdk-zlib"
|
||||
|
||||
# Need to point to latest version of libva needed for media components
|
||||
PREFERRED_PROVIDER_libva = "libva-intel"
|
||||
PREFERRED_PROVIDER_libva-native = "libva-intel-native"
|
||||
PREFERRED_PROVIDER_nativesdk-libva = "nativesdk-libva-intel"
|
||||
|
||||
PREFERRED_PROVIDER_libva-utils = "libva-intel-utils"
|
||||
PREFERRED_PROVIDER_libva-utils-native = "libva-intel-utils-native"
|
||||
PREFERRED_PROVIDER_nativesdk-libva-utils = "nativesdk-libva-intel-utils"
|
||||
PREFERRED_VERSION_linux-intel ?= "4.19%"
|
||||
PREFERRED_VERSION_linux-intel-rt ?= "4.19%"
|
||||
PREFERRED_VERSION_linux-intel_poky-altcfg ?= "4.14%"
|
||||
PREFERRED_VERSION_linux-intel-rt_poky-altcfg ?= "4.14%"
|
||||
|
||||
XSERVER_X86_ASPEED_AST = "xf86-video-ast \
|
||||
"
|
||||
|
||||
# include the user space intel microcode loading support in the generated images.
|
||||
MACHINE_ESSENTIAL_EXTRA_RDEPENDS:append = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', ' intel-microcode', '', d)}"
|
||||
MACHINE_ESSENTIAL_EXTRA_RDEPENDS_append = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', ' intel-microcode', '', d)} thermald"
|
||||
|
||||
# recommended extra packages common to all intel machines
|
||||
MACHINE_EXTRA_RRECOMMENDS:append = " kernel-modules linux-firmware"
|
||||
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS:append = " kernel-module-i915 linux-firmware-i915 kernel-module-igc kernel-module-r8152"
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " kernel-modules linux-firmware"
|
||||
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS_append = " kernel-module-i915 linux-firmware-i915"
|
||||
|
||||
# for the early boot time kernel microcode loading support,
|
||||
# merge the microcode data in the final initrd image.
|
||||
INITRD_LIVE:prepend = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}"
|
||||
INITRD_LIVE_prepend = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}"
|
||||
|
||||
DISK_SIGNATURE_UUID ??= "deadbeef-dead-beef-dead-beefdeadbeef"
|
||||
|
||||
EFI_PROVIDER ?= "systemd-boot"
|
||||
EFI_PROVIDER:x86-x32 = "grub-efi"
|
||||
EFI_PROVIDER_x86-x32 = "grub-efi"
|
||||
|
||||
# Add general MACHINEOVERRIDE for meta-intel
|
||||
MACHINEOVERRIDES =. "intel-x86-common:"
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
# distro content (in particular the kernel) less than qemu.inc.
|
||||
|
||||
# Ensure that qemu gets built when building images.
|
||||
EXTRA_IMAGEDEPENDS += "qemu-system-native qemu-helper-native:do_addto_recipe_sysroot"
|
||||
EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native"
|
||||
|
||||
# Build ovmf firmware for uefi support in qemu.
|
||||
EXTRA_IMAGEDEPENDS += "ovmf"
|
||||
|
|
|
|||
|
|
@ -1,18 +1,19 @@
|
|||
# For runqemu
|
||||
IMAGE_CLASSES += "qemuboot"
|
||||
QB_SYSTEM_NAME:intel-core2-32 = "qemu-system-i386"
|
||||
QB_CPU:intel-core2-32 = "-cpu coreduo"
|
||||
QB_CPU_KVM:intel-core2-32 = "-cpu kvm32"
|
||||
QB_SYSTEM_NAME_intel-core2-32 = "qemu-system-i386"
|
||||
QB_CPU_intel-core2-32 = "-cpu coreduo"
|
||||
QB_CPU_KVM_intel-core2-32 = "-cpu kvm32"
|
||||
|
||||
QB_SYSTEM_NAME:intel-corei7-64 = "qemu-system-x86_64"
|
||||
QB_CPU:intel-corei7-64 = "-cpu Nehalem"
|
||||
QB_CPU_KVM:intel-corei7-64 = "-cpu kvm64"
|
||||
QB_SYSTEM_NAME_intel-corei7-64 = "qemu-system-x86_64"
|
||||
QB_CPU_intel-corei7-64 = "-cpu Nehalem"
|
||||
QB_CPU_KVM_intel-corei7-64 = "-cpu kvm64"
|
||||
|
||||
QB_SYSTEM_NAME:intel-skylake-64 = "qemu-system-x86_64"
|
||||
QB_CPU:intel-skylake-64 = "-cpu Skylake-Client"
|
||||
QB_CPU_KVM:intel-skylake-64 = "-cpu Skylake-Client"
|
||||
QB_SYSTEM_NAME_intel-skylake-64 = "qemu-system-x86_64"
|
||||
QB_CPU_intel-skylake-64 = "-cpu Skylake-Client"
|
||||
QB_CPU_KVM_intel-skylake-64 = "-cpu kvm64"
|
||||
|
||||
QB_AUDIO_DRV = "alsa"
|
||||
QB_AUDIO_OPT = "-device AC97"
|
||||
QB_KERNEL_CMDLINE_APPEND = " oprofile.timer=1"
|
||||
QB_OPT_APPEND = " -usb -usbdevice tablet "
|
||||
QB_AUDIO_OPT = "-soundhw ac97,es1370"
|
||||
QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1"
|
||||
# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
|
||||
QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci"
|
||||
|
|
|
|||
48
conf/machine/include/tune-skylake.inc
Normal file
48
conf/machine/include/tune-skylake.inc
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
# Settings for the GCC(1) cpu-type "skylake":
|
||||
#
|
||||
# Intel Skylake CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
|
||||
# SSE4.2, AVX, AVX2 and POPCNT instruction set support.
|
||||
#
|
||||
# This tune is recommended for Intel Skylake CPU (and beyond).
|
||||
#
|
||||
DEFAULTTUNE ?= "skylake-64"
|
||||
|
||||
# Include the previous tune to pull in PACKAGE_EXTRA_ARCHS
|
||||
require conf/machine/include/tune-corei7.inc
|
||||
|
||||
# Extra tune features
|
||||
TUNEVALID[skylake] = "Enable skylake specific processor optimizations"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'skylake', ' -march=skylake ${SKYLAKE_TUNE} -mfpmath=sse', '', d)}"
|
||||
|
||||
# Extra tune selections
|
||||
|
||||
AVAILTUNES += "skylake-64"
|
||||
TUNE_FEATURES_tune-skylake-64 = "${TUNE_FEATURES_tune-x86-64} skylake"
|
||||
BASE_LIB_tune-skylake-64 = "lib64"
|
||||
TUNE_PKGARCH_tune-skylake-64 = "skylake-64"
|
||||
PACKAGE_EXTRA_ARCHS_tune-skylake-64 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64} skylake-64"
|
||||
QEMU_EXTRAOPTIONS_skylake-64 = " -cpu Skylake-Client"
|
||||
|
||||
|
||||
# Disable QEMU usermode by default (get avx2)
|
||||
MACHINE_FEATURES_remove = "qemu-usermode"
|
||||
|
||||
# If qemu-usermode is enabled, we have to disable avx2 ISA extensions, but we can keep mtune as skylake vs generic
|
||||
SKYLAKE_TUNE .= "${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', ' -mtune=skylake ${QEMU_UNAVAILABLE_ISA}', '-mtune=generic -mavx2', d)}"
|
||||
|
||||
QEMU_UNAVAILABLE_ISA = " \
|
||||
-mno-avx \
|
||||
-mno-avx2 \
|
||||
-mno-avx512f \
|
||||
-mno-avx512er \
|
||||
-mno-avx512cd \
|
||||
-mno-avx512pf \
|
||||
-mno-avx512dq \
|
||||
-mno-avx512bw \
|
||||
-mno-avx512vl \
|
||||
-mno-avx512ifma \
|
||||
-mno-avx512vbmi \
|
||||
-mno-avx512vbmi2 \
|
||||
-mno-avx512vnni \
|
||||
-mno-avx512bitalg \
|
||||
"
|
||||
|
|
@ -13,6 +13,11 @@ MACHINE_FEATURES += "intel-ucode"
|
|||
|
||||
MACHINE_HWCODECS ?= "intel-vaapi-driver gstreamer1.0-vaapi"
|
||||
|
||||
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "gma500-gfx-check"
|
||||
|
||||
# Enable optional QAT items:
|
||||
COMPATIBLE_MACHINE_pn-qat17 = "intel-core2-32"
|
||||
|
||||
XSERVER ?= "${XSERVER_X86_BASE} \
|
||||
${XSERVER_X86_EXT} \
|
||||
${XSERVER_X86_FBDEV} \
|
||||
|
|
@ -24,9 +29,9 @@ XSERVER ?= "${XSERVER_X86_BASE} \
|
|||
"
|
||||
|
||||
SYSLINUX_OPTS = "serial 0 115200"
|
||||
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyPCH0"
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyPCH0"
|
||||
APPEND += "rootwait console=ttyS0,115200 console=ttyPCH0,115200 console=tty0"
|
||||
|
||||
IMAGE_FSTYPES += "wic"
|
||||
WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks.in", "grub-bootdisk-microcode.wks.in", d)}"
|
||||
WKS_FILE_DEPENDS:append = " intel-microcode"
|
||||
WKS_FILE_DEPENDS_append = " intel-microcode"
|
||||
|
|
|
|||
|
|
@ -11,11 +11,15 @@ MACHINE_FEATURES += "pcbios efi"
|
|||
MACHINE_FEATURES += "wifi 3g nfc"
|
||||
MACHINE_FEATURES += "intel-ucode"
|
||||
|
||||
MACHINE_HWCODECS ?= "${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'intel-media-driver vpl-gpu-rt', d)} gstreamer1.0-vaapi"
|
||||
MACHINE_HWCODECS ?= "${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'intel-media-driver intel-mediasdk', d)} intel-vaapi-driver gstreamer1.0-vaapi"
|
||||
|
||||
# Enable optional dpdk:
|
||||
COMPATIBLE_MACHINE:pn-dpdk = "intel-corei7-64"
|
||||
COMPATIBLE_MACHINE:pn-dpdk-module = "intel-corei7-64"
|
||||
COMPATIBLE_MACHINE_pn-dpdk = "intel-corei7-64"
|
||||
|
||||
# Enable optional QAT items:
|
||||
COMPATIBLE_MACHINE_pn-qat16 = "intel-corei7-64"
|
||||
COMPATIBLE_MACHINE_pn-qat17 = "intel-corei7-64"
|
||||
COMPATIBLE_MACHINE_pn-zlib-qat = "intel-corei7-64"
|
||||
|
||||
XSERVER ?= "${XSERVER_X86_BASE} \
|
||||
${XSERVER_X86_EXT} \
|
||||
|
|
@ -28,9 +32,9 @@ XSERVER ?= "${XSERVER_X86_BASE} \
|
|||
"
|
||||
|
||||
SYSLINUX_OPTS = "serial 0 115200"
|
||||
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2"
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2"
|
||||
APPEND += "rootwait console=ttyS0,115200 console=tty0"
|
||||
|
||||
IMAGE_FSTYPES += "wic"
|
||||
WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks.in", "grub-bootdisk-microcode.wks.in", d)}"
|
||||
WKS_FILE_DEPENDS:append = " intel-microcode"
|
||||
WKS_FILE_DEPENDS_append = " intel-microcode"
|
||||
|
|
|
|||
|
|
@ -4,18 +4,15 @@
|
|||
#@DESCRIPTION: Machine configuration for 64 bit Intel Skylake CPU (and later) with MMX, SSE, SSE2, SSE3, SSE4.1, SSE4.2, AVX, and AVX2 instruction set support. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware.
|
||||
|
||||
require conf/machine/include/meta-intel.inc
|
||||
require conf/machine/include/x86/x86-base.inc
|
||||
require conf/machine/include/x86/tune-x86-64-v3.inc
|
||||
require conf/machine/include/x86-base.inc
|
||||
require conf/machine/include/tune-skylake.inc
|
||||
require conf/machine/include/intel-common-pkgarch.inc
|
||||
|
||||
MACHINE_FEATURES += "efi"
|
||||
MACHINE_FEATURES += "wifi 3g nfc"
|
||||
MACHINE_FEATURES += "intel-ucode"
|
||||
|
||||
MACHINE_HWCODECS ?= "intel-media-driver vpl-gpu-rt gstreamer1.0-vaapi"
|
||||
|
||||
COMPATIBLE_MACHINE:pn-dpdk = "intel-skylake-64"
|
||||
COMPATIBLE_MACHINE:pn-dpdk-module = "intel-skylake-64"
|
||||
MACHINE_HWCODECS ?= "intel-vaapi-driver gstreamer1.0-vaapi"
|
||||
|
||||
XSERVER ?= "${XSERVER_X86_BASE} \
|
||||
${XSERVER_X86_EXT} \
|
||||
|
|
@ -28,9 +25,9 @@ XSERVER ?= "${XSERVER_X86_BASE} \
|
|||
"
|
||||
|
||||
SYSLINUX_OPTS = "serial 0 115200"
|
||||
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2"
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2"
|
||||
APPEND += "rootwait console=ttyS0,115200 console=tty0"
|
||||
|
||||
IMAGE_FSTYPES += "wic"
|
||||
WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks.in", "grub-bootdisk-microcode.wks.in", d)}"
|
||||
WKS_FILE_DEPENDS:append = " intel-microcode"
|
||||
WKS_FILE_DEPENDS_append = " intel-microcode"
|
||||
|
|
|
|||
111
custom-licenses/ACE-TAO-CIAO
Normal file
111
custom-licenses/ACE-TAO-CIAO
Normal file
|
|
@ -0,0 +1,111 @@
|
|||
|
||||
_________________________________________________________________
|
||||
|
||||
Copyright and Licensing Information for ACE(TM), TAO(TM), CIAO(TM),
|
||||
DAnCE(TM), and CoSMIC(TM)
|
||||
|
||||
[1]ACE(TM), [2]TAO(TM), [3]CIAO(TM), DAnCE(TM), and [4]CoSMIC(TM)
|
||||
(henceforth referred to as "DOC software") are copyrighted by
|
||||
[5]Douglas C. Schmidt and his [6]research group at [7]Washington
|
||||
University, [8]University of California, Irvine, and [9]Vanderbilt
|
||||
University, Copyright (c) 1993-2018, all rights reserved. Since DOC
|
||||
software is open-source, freely available software, you are free to
|
||||
use, modify, copy, and distribute--perpetually and irrevocably--the
|
||||
DOC software source code and object code produced from the source, as
|
||||
well as copy and distribute modified versions of this software. You
|
||||
must, however, include this copyright statement along with any code
|
||||
built using DOC software that you release. No copyright statement
|
||||
needs to be provided if you just ship binary executables of your
|
||||
software products.
|
||||
|
||||
You can use DOC software in commercial and/or binary software releases
|
||||
and are under no obligation to redistribute any of your source code
|
||||
that is built using DOC software. Note, however, that you may not
|
||||
misappropriate the DOC software code, such as copyrighting it yourself
|
||||
or claiming authorship of the DOC software code, in a way that will
|
||||
prevent DOC software from being distributed freely using an
|
||||
open-source development model. You needn't inform anyone that you're
|
||||
using DOC software in your software, though we encourage you to let
|
||||
[10]us know so we can promote your project in the [11]DOC software
|
||||
success stories.
|
||||
|
||||
The [12]ACE, [13]TAO, [14]CIAO, [15]DAnCE, and [16]CoSMIC web sites
|
||||
are maintained by the [17]DOC Group at the [18]Institute for Software
|
||||
Integrated Systems (ISIS) and the [19]Center for Distributed Object
|
||||
Computing of Washington University, St. Louis for the development of
|
||||
open-source software as part of the open-source software community.
|
||||
Submissions are provided by the submitter ``as is'' with no warranties
|
||||
whatsoever, including any warranty of merchantability, noninfringement
|
||||
of third party intellectual property, or fitness for any particular
|
||||
purpose. In no event shall the submitter be liable for any direct,
|
||||
indirect, special, exemplary, punitive, or consequential damages,
|
||||
including without limitation, lost profits, even if advised of the
|
||||
possibility of such damages. Likewise, DOC software is provided as is
|
||||
with no warranties of any kind, including the warranties of design,
|
||||
merchantability, and fitness for a particular purpose,
|
||||
noninfringement, or arising from a course of dealing, usage or trade
|
||||
practice. Washington University, UC Irvine, Vanderbilt University,
|
||||
their employees, and students shall have no liability with respect to
|
||||
the infringement of copyrights, trade secrets or any patents by DOC
|
||||
software or any part thereof. Moreover, in no event will Washington
|
||||
University, UC Irvine, or Vanderbilt University, their employees, or
|
||||
students be liable for any lost revenue or profits or other special,
|
||||
indirect and consequential damages.
|
||||
|
||||
DOC software is provided with no support and without any obligation on
|
||||
the part of Washington University, UC Irvine, Vanderbilt University,
|
||||
their employees, or students to assist in its use, correction,
|
||||
modification, or enhancement. A [20]number of companies around the
|
||||
world provide commercial support for DOC software, however. DOC
|
||||
software is Y2K-compliant, as long as the underlying OS platform is
|
||||
Y2K-compliant. Likewise, DOC software is compliant with the new US
|
||||
daylight savings rule passed by Congress as "The Energy Policy Act of
|
||||
2005," which established new daylight savings times (DST) rules for
|
||||
the United States that expand DST as of March 2007. Since DOC software
|
||||
obtains time/date and calendaring information from operating systems
|
||||
users will not be affected by the new DST rules as long as they
|
||||
upgrade their operating systems accordingly.
|
||||
|
||||
The names ACE(TM), TAO(TM), CIAO(TM), DAnCE(TM), CoSMIC(TM),
|
||||
Washington University, UC Irvine, and Vanderbilt University, may not
|
||||
be used to endorse or promote products or services derived from this
|
||||
source without express written permission from Washington University,
|
||||
UC Irvine, or Vanderbilt University. This license grants no permission
|
||||
to call products or services derived from this source ACE(TM),
|
||||
TAO(TM), CIAO(TM), DAnCE(TM), or CoSMIC(TM), nor does it grant
|
||||
permission for the name Washington University, UC Irvine, or
|
||||
Vanderbilt University to appear in their names.
|
||||
|
||||
If you have any suggestions, additions, comments, or questions, please
|
||||
let [21]me know.
|
||||
|
||||
[22]Douglas C. Schmidt
|
||||
_________________________________________________________________
|
||||
|
||||
Back to the [23]ACE home page.
|
||||
|
||||
References
|
||||
|
||||
1. http://www.dre.vanderbilt.edu/~schmidt/ACE.html
|
||||
2. http://www.dre.vanderbilt.edu/~schmidt/TAO.html
|
||||
3. http://www.dre.vanderbilt.edu/CIAO/
|
||||
4. http://www.dre.vanderbilt.edu/cosmic/
|
||||
5. http://www.dre.vanderbilt.edu/~schmidt/
|
||||
6. http://www.dre.vanderbilt.edu/~schmidt/ACE-members.html
|
||||
7. http://www.wustl.edu/
|
||||
8. http://www.uci.edu/
|
||||
9. http://www.vanderbilt.edu/
|
||||
10. mailto:doc_group@cs.wustl.edu
|
||||
11. http://www.dre.vanderbilt.edu/~schmidt/ACE-users.html
|
||||
12. http://www.dre.vanderbilt.edu/~schmidt/ACE.html
|
||||
13. http://www.dre.vanderbilt.edu/~schmidt/TAO.html
|
||||
14. http://www.dre.vanderbilt.edu/CIAO/
|
||||
15. http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/DAnCE/
|
||||
16. http://www.dre.vanderbilt.edu/cosmic/
|
||||
17. http://www.dre.vanderbilt.edu/
|
||||
18. http://www.isis.vanderbilt.edu/
|
||||
19. http://www.cs.wustl.edu/~schmidt/doc-center.html
|
||||
20. http://www.dre.vanderbilt.edu/~schmidt/commercial-support.html
|
||||
21. mailto:d.schmidt@vanderbilt.edu
|
||||
22. http://www.dre.vanderbilt.edu/~schmidt/
|
||||
23. http://www.dre.vanderbilt.edu/~schmidt/ACE.html
|
||||
|
|
@ -1,392 +0,0 @@
|
|||
Intel End User License Agreement for Developer Tools (Version October 2021)
|
||||
|
||||
IMPORTANT NOTICE - PLEASE READ AND AGREE BEFORE DOWNLOADING, INSTALLING, COPYING
|
||||
OR USING
|
||||
|
||||
This Agreement is between you, or the company or other legal entity that you
|
||||
represent and warrant you have the legal authority to bind, (each, "You" or
|
||||
"Your") and Intel Corporation and its subsidiaries (collectively, "Intel")
|
||||
regarding Your use of the Materials. By downloading, installing, copying or
|
||||
using the Materials, You agree to be bound by the terms of this Agreement. If
|
||||
You do not agree to the terms of this Agreement, or do not have legal authority
|
||||
or required age to agree to them, do not download, install, copy or use the
|
||||
Materials.
|
||||
|
||||
1. LICENSE DEFINITIONS.
|
||||
|
||||
A. "Cloud Provider" means a third party service provider offering a cloud-based
|
||||
platform, infrastructure, application or storage services, such as Microsoft
|
||||
Azure or Amazon Web Services, which You may only utilize to host the
|
||||
Materials subject to the restrictions set forth in Section 2.3 B.
|
||||
|
||||
B. "Derivative Work" means a derivative work, as defined in 17 U.S.C. 101, of
|
||||
the Source Code.
|
||||
|
||||
C. "Executable Code" means computer programming code in binary form suitable
|
||||
for machine execution by a processor without the intervening steps of
|
||||
interpretation or compilation.
|
||||
|
||||
D. "Materials" mean the software, documentation, the software product serial
|
||||
number, and other collateral, including any updates, made available to You
|
||||
by Intel under this Agreement. Materials include Redistributables,
|
||||
Executable Code, Source Code, Sample Source Code, and Pre-Release Materials,
|
||||
but do not include Third Party Software.
|
||||
|
||||
E. "Pre-Release Materials" mean the Materials, or portions of the Materials,
|
||||
that are identified (in the product release notes, on Intel's download
|
||||
website for the Materials or elsewhere) or labeled as pre-release,
|
||||
prototype, alpha or beta code and, as such, are deemed to be pre-release
|
||||
code (i) which may not be fully functional or tested and may contain bugs or
|
||||
errors; (ii) which Intel may substantially modify in its development of a
|
||||
production version; or (iii) for which Intel makes no assurances that it
|
||||
will ever develop or make a production version generally available.
|
||||
Pre-Release Materials are subject to the terms of Section 3.2.
|
||||
|
||||
F. "Reciprocal Open Source Software" means any software that is subject to a
|
||||
license which requires that (i) it must be distributed in source code form;
|
||||
(ii) it must be licensed under the same open source license terms; and (iii)
|
||||
its derivative works must be licensed under the same open source license
|
||||
terms. Examples of this type of license are the GNU General Public License
|
||||
or the Mozilla Public License.
|
||||
|
||||
G. "Redistributables" mean the files (if any) listed in the "redist.txt,"
|
||||
"redist-rt.txt" or similarly-named text files that may be included in the
|
||||
Materials. Redistributables include Sample Source Code.
|
||||
|
||||
H. "Sample Source Code" means those portions of the Materials that are Source
|
||||
Code and are identified as sample code. Sample Source Code may not have been
|
||||
tested or validated by Intel and is provided purely as a programming example.
|
||||
|
||||
I. "Source Code" means the software portion of the Materials provided in human
|
||||
readable format.
|
||||
|
||||
J. "Third Party Software" mean the files (if any) listed in the
|
||||
"third-party-software.txt" or other similarly-named text file that may be
|
||||
included in the Materials for the applicable software. Third Party Software
|
||||
is subject to the terms of Section 2.2.
|
||||
|
||||
K. "Your Product" means one or more applications, products or projects
|
||||
developed by or for You using the Materials.
|
||||
|
||||
2. LICENSE GRANTS.
|
||||
|
||||
2.1 License to the Materials. Subject to the terms and conditions of this
|
||||
Agreement, Intel grants You a non-exclusive, worldwide, non-assignable,
|
||||
non-sublicensable, limited right and license under its copyrights, to:
|
||||
|
||||
A. reproduce internally a reasonable number of copies of the Materials for Your
|
||||
personal or business use;
|
||||
|
||||
B. use the Materials solely for Your personal or business use to develop Your
|
||||
Product, in accordance with the documentation included as part of the
|
||||
Materials;
|
||||
|
||||
C. modify or create Derivative Works only of the Redistributables, or any
|
||||
portions, that are provided to You in Source Code;
|
||||
|
||||
D. distribute (directly and through Your distributors, resellers, and other
|
||||
channel partners, if applicable), the Redistributables, including any
|
||||
modifications to or Derivative Works of the Redistributables or any portions
|
||||
made pursuant to Section 2.1.C subject to the following conditions:
|
||||
|
||||
(1) Any distribution of the Redistributables must only be as part of Your
|
||||
Product which must add significant primary functionality different than
|
||||
that of the Redistributables themselves;
|
||||
|
||||
(2) You must only distribute the Redistributables originally provided to You
|
||||
by Intel only in Executable Code subject to a license agreement that
|
||||
prohibits reverse engineering, decompiling or disassembling the
|
||||
Redistributables;
|
||||
|
||||
(3) This distribution right includes a limited right to sublicense only the
|
||||
Intel copyrights in the Redistributables and only to the extent necessary
|
||||
to perform, display, and distribute the Redistributables (including Your
|
||||
modifications and Derivative Works of the Redistributables provided in
|
||||
Source Code) solely as incorporated in Your Product; and
|
||||
|
||||
(4) You: (i) will be solely responsible to Your customers for any update,
|
||||
support obligation or other obligation or liability which may arise from
|
||||
the distribution of Your Product, (ii) will not make any statement that
|
||||
Your Product is "certified" or that its performance is guaranteed by Intel
|
||||
or its suppliers, (iii) will not use Intel's or its suppliers' names or
|
||||
trademarks to market Your Product, (iv) will comply with any additional
|
||||
restrictions which are included in the text files with the
|
||||
Redistributables and in Section 3 below, (v) will indemnify, hold
|
||||
harmless, and defend Intel and its suppliers from and against any claims
|
||||
or lawsuits, costs, damages, and expenses, including attorney's fees, that
|
||||
arise or result from (a) Your modifications or Derivative Works of the
|
||||
Materials or (b) Your distribution of Your Product.
|
||||
|
||||
2.2 Third Party Software. Third Party Software, even if included with the
|
||||
distribution of the Materials, may be governed by separate license terms,
|
||||
including without limitation, third party license terms, open source
|
||||
software notices and terms, and/or other Intel software license terms. These
|
||||
separate license terms solely govern Your use of the Third Party Software.
|
||||
|
||||
2.3 Third Party Use.
|
||||
|
||||
A. If You are an entity, Your contractors may use the Materials under the
|
||||
license specified in Section 2, provided: (i) their use of the Materials is
|
||||
solely on behalf of and in support of Your business, (ii) they agree to the
|
||||
terms and conditions of this Agreement, and (iii) You are solely responsible
|
||||
for their use, misuse or disclosure of the Materials.
|
||||
|
||||
B. You may utilize a Cloud Provider to host the Materials for You, provided:
|
||||
(i) the Cloud Provider may only host the Materials for Your exclusive use
|
||||
and may not use the Materials for any other purpose whatsoever, including the
|
||||
restriction set forth in Section 3.1(xi); (ii) the Cloud Provider's use of
|
||||
the Materials must be solely on behalf of and in support of Your Product, and
|
||||
(iii) You will indemnify, hold harmless, and defend Intel and its suppliers
|
||||
from and against any claims or lawsuits, costs, damages, and expenses,
|
||||
including attorney's fees, that arise or result from Your Cloud Provider's
|
||||
use, misuse or disclosure of the Materials.
|
||||
|
||||
3. LICENSE CONDITIONS.
|
||||
|
||||
3.1 Restrictions. Except as expressly provided in this Agreement, You may NOT:
|
||||
(i) use, reproduce, disclose, distribute, or publicly display the
|
||||
Materials; (ii) share, publish, rent or lease the Materials to any third
|
||||
party; (iii) assign this Agreement or transfer the Materials; (iv) modify,
|
||||
adapt, or translate the Materials in whole or in part; (v) reverse engineer,
|
||||
decompile, or disassemble the Materials, or otherwise attempt to derive the
|
||||
source code for the software; (vi) work around any technical limitations in
|
||||
the Materials; (vii) distribute, sublicense or transfer any Source Code,
|
||||
modifications or Derivative Works of any Source Code to any third party;
|
||||
(viii) remove, minimize, block or modify any notices of Intel or its
|
||||
suppliers in the Materials; (ix) include the Redistributables in malicious,
|
||||
deceptive, or unlawful programs or products or use the Materials in any way
|
||||
that is against the law; (x) modify, create a Derivative Work, link, or
|
||||
distribute the Materials so that any part of it becomes Reciprocal Open
|
||||
Source Software; (xi) use the Materials directly or indirectly for SaaS
|
||||
services or service bureau purposes (i.e., a service that allows use of or
|
||||
access to the Materials by a third party as part of that service, such as
|
||||
the salesforce.com service business model).
|
||||
|
||||
3.2 Pre-Release Materials. If You receive Pre-Release Materials, You may
|
||||
reproduce a reasonable number of copies and use the Pre-Release Materials
|
||||
for evaluation and testing purposes only. You may not (i) modify or
|
||||
incorporate the Pre-Release Materials into Your Product; (ii) continue to
|
||||
use the Pre-Release Materials once a commercial version is released; or
|
||||
(iii) disclose to any third party any benchmarks, performance results, or
|
||||
other information relating to the Pre-Release Materials. Intel may waive
|
||||
these restrictions in writing at its sole discretion; however, if You decide
|
||||
to use the Pre-Release Materials in Your Product (even with Intel's waiver),
|
||||
You acknowledge and agree that You are fully responsible for any and all
|
||||
issues that result from such use.
|
||||
|
||||
3.3 Safety-Critical, and Life-Saving Applications; Indemnity. The Materials may
|
||||
provide information relevant to safety-critical applications
|
||||
("Safety-Critical Applications") to allow compliance with functional safety
|
||||
standards or requirements. You acknowledge and agree that safety is Your
|
||||
responsibility. To the extent You use the Materials to create, or as part
|
||||
of, products used in Safety-Critical Applications, it is Your responsibility
|
||||
to design, manage, and ensure that there are system-level safeguards to
|
||||
anticipate, monitor, and control system failures, and You agree that You are
|
||||
solely responsible for all applicable regulatory standards and
|
||||
safety-related requirements concerning Your use of the Materials in Safety
|
||||
Critical Applications.
|
||||
|
||||
Should You use the Materials for Safety-Critical Applications or in any type
|
||||
of a system or application in which the failure of the Materials could
|
||||
create a situation where personal injury or death may occur (e.g., medical
|
||||
systems, life-sustaining or life-saving systems) ("Life-Saving
|
||||
Applications"), You agree to indemnify, defend, and hold Intel and its
|
||||
representatives harmless against any claims or lawsuits, costs, damages, and
|
||||
expenses, including reasonable attorney fees, arising in any way out of Your
|
||||
use of the Materials in Safety-Critical Applications or Life-Saving
|
||||
Applications and claims of product liability, personal injury or death
|
||||
associated with those applications; even if such claims allege that Intel
|
||||
was negligent or strictly liable regarding the design or manufacture of the
|
||||
Materials or its failure to warn regarding the Materials.
|
||||
|
||||
3.4 Media Format Codecs and Digital Rights Management. You acknowledge and agree
|
||||
that Your use of the Materials or distribution of the Redistributables with
|
||||
Your Product as permitted by this Agreement may require You to procure
|
||||
license(s) from third parties that may hold intellectual property rights
|
||||
applicable to any media decoding, encoding or transcoding technology (e.g.,
|
||||
the use of an audio or video codec) and/or digital rights management
|
||||
capabilities of the Materials, if any. Should any such additional licenses
|
||||
be required, You are solely responsible for obtaining any such licenses and
|
||||
agree to obtain any such licenses at Your own expense.
|
||||
|
||||
4. DATA COLLECTION AND PRIVACY.
|
||||
|
||||
4.1 Data Collection. The Materials may generate and collect anonymous data
|
||||
and/or provisioning data about the Materials and/or the development
|
||||
environment and transmit the data to Intel as a one-time event during
|
||||
installation. Optional data may also be collected by the Materials, however,
|
||||
You will be provided notice of the request to collect optional data and no
|
||||
optional data will be collected without Your consent. All data collection by
|
||||
Intel is performed pursuant to relevant privacy laws, including notice and
|
||||
consent requirements.
|
||||
|
||||
4.2 Intel's Privacy Notice. Intel is committed to respecting Your privacy. To
|
||||
learn more about Intel's privacy practices, please visit
|
||||
http://www.intel.com/privacy.
|
||||
|
||||
5. OWNERSHIP. Title to the Materials and all copies remain with Intel or its
|
||||
suppliers. The Materials are protected by intellectual property rights,
|
||||
including without limitation, United States copyright laws and international
|
||||
treaty provisions. You will not remove any copyright or other proprietary
|
||||
notices from the Materials. Except as expressly provided herein, no license
|
||||
or right is granted to You directly or by implication, inducement, estoppel
|
||||
or otherwise; specifically, Intel does not grant any express or implied right
|
||||
to You under Intel patents, copyrights, trademarks, or trade secrets.
|
||||
|
||||
6. NO WARRANTY AND NO SUPPORT.
|
||||
|
||||
6.1 No Warranty. Disclaimer. Intel disclaims all warranties of any kind and the
|
||||
terms and remedies provided in this Agreement are instead of any other
|
||||
warranty or condition, express, implied or statutory, including those
|
||||
regarding merchantability, fitness for any particular purpose,
|
||||
non-infringement or any warranty arising out of any course of dealing, usage
|
||||
of trade, proposal, specification or sample. Intel does not assume (and does
|
||||
not authorize any person to assume on its behalf) any liability.
|
||||
|
||||
6.2 No Support; Priority Support. Intel may make changes to the Materials, or to
|
||||
items referenced therein, at any time without notice, but is not obligated
|
||||
to support, update or provide training for the Materials under the terms of
|
||||
this Agreement. Intel offers free community and paid priority support
|
||||
options. More information on these support options can be found at:
|
||||
https://software.intel.com/content/www/us/en/develop/support/priority-support.html.
|
||||
|
||||
7. LIMITATION OF LIABILITY.
|
||||
|
||||
7.1 Intel will not be liable for any of the following losses or damages (whether
|
||||
such losses or damages were foreseen, foreseeable, known or otherwise): (i)
|
||||
loss of revenue; (ii) loss of actual or anticipated profits; (iii) loss of
|
||||
the use of money; (iv) loss of anticipated savings; (v) loss of business;
|
||||
(vi) loss of opportunity; (vii) loss of goodwill; (viii) loss of use of the
|
||||
Materials; (ix) loss of reputation; (x) loss of, damage to, or corruption of
|
||||
data; or (xi) any indirect, incidental, special or consequential loss of
|
||||
damage however caused (including loss or damage of the type specified in
|
||||
this Section 7).
|
||||
|
||||
7.2 Intel's total cumulative liability to You, including for direct damages for
|
||||
claims relating to this Agreement, and whether for breach of contract,
|
||||
negligence, or for any other reason, will not exceed $100.
|
||||
|
||||
7.3 You acknowledge that the limitations of liability provided in this Section 7
|
||||
are an essential part of this Agreement. You agree that the limitations of
|
||||
liability provided in this Agreement with respect to Intel will be conveyed
|
||||
to and made binding upon any customer of Yours that acquires the
|
||||
Redistributables.
|
||||
|
||||
8. USER SUBMISSIONS. Should you provide Intel with comments, modifications,
|
||||
corrections, enhancements or other input ("Feedback") related to the
|
||||
Materials, Intel will be free to use, disclose, reproduce, license or
|
||||
otherwise distribute or exploit the Feedback in its sole discretion without
|
||||
any obligations or restrictions of any kind, including without limitation,
|
||||
intellectual property rights or licensing obligations. If You wish to provide
|
||||
Intel with information that You intend to be treated as confidential
|
||||
information, Intel requires that such confidential information be provided
|
||||
pursuant to a non-disclosure agreement ("NDA"); please contact Your Intel
|
||||
representative to ensure the proper NDA is in place.
|
||||
|
||||
9. NON-DISCLOSURE. Information provided by Intel to You may include information
|
||||
marked as confidential. You must treat such information as confidential under
|
||||
the terms of the applicable NDA between Intel and You. If You have not
|
||||
entered into an NDA with Intel, You must not disclose, distribute or make use
|
||||
of any information marked as confidential, except as expressly authorized in
|
||||
writing by Intel. Intel retains all rights in and to its confidential
|
||||
information specifications, designs, engineering details, discoveries,
|
||||
inventions, patents, copyrights, trademarks, trade secrets, and other
|
||||
proprietary rights relating to the Materials. Any breach by You of the
|
||||
confidentiality obligations provided for in this Section 9 will cause
|
||||
irreparable injury to Intel for which money damages may be inadequate to
|
||||
compensate Intel for losses arising from such a breach. Intel may obtain
|
||||
equitable relief, including injunctive relief, if You breach or threaten to
|
||||
breach Your confidentiality obligations.
|
||||
|
||||
10. TERM AND TERMINATION. This Agreement becomes effective on the date You
|
||||
accept this Agreement and will continue until terminated as provided for in
|
||||
this Agreement. The term for any Pre-Release Materials terminates upon
|
||||
release of a commercial version. This Agreement will terminate if You are in
|
||||
breach of any of its terms and conditions. Upon termination, You will
|
||||
promptly destroy the Materials and all copies. In the event of termination of
|
||||
this Agreement, Your license to any Redistributables distributed by You in
|
||||
accordance with the terms and conditions of this Agreement, prior to the
|
||||
effective date of such termination, will survive any such termination of this
|
||||
Agreement. Sections 1, 2.1.D(4)(v), 2.2, 2.3.A(iii), 2.3.B(iii), 3.3, 5, 6,
|
||||
7, 8, 9, 10 (with respect to these survival provisions in the last sentence),
|
||||
and 12 will survive expiration or termination of this Agreement.
|
||||
|
||||
11. U.S. GOVERNMENT RESTRICTED RIGHTS. The technical data and computer software
|
||||
covered by this license is a "Commercial Item," as such term is defined by
|
||||
the FAR 2.101 (48 C.F.R. 2.101) and is "commercial computer software" and
|
||||
"commercial computer software documentation" as specified under FAR 12.212
|
||||
(48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable.
|
||||
This commercial computer software and related documentation is provided to
|
||||
end users for use by and on behalf of the U.S. Government with only those
|
||||
rights as are granted to all other end users pursuant to the terms and
|
||||
conditions of this Agreement.
|
||||
|
||||
12. GENERAL PROVISIONS.
|
||||
|
||||
12.1 ENTIRE AGREEMENT. This Agreement contains the complete and exclusive
|
||||
agreement and understanding between the parties concerning the subject
|
||||
matter of this Agreement, and supersedes all prior and contemporaneous
|
||||
proposals, agreements, understanding, negotiations, representations,
|
||||
warranties, conditions, and communications, oral or written, between the
|
||||
parties relating to the same subject matter. Each party acknowledges and
|
||||
agrees that in entering into this Agreement it has not relied on, and will
|
||||
not be entitled to rely on, any oral or written representations,
|
||||
warranties, conditions, understanding, or communications between the
|
||||
parties that are not expressly set forth in this Agreement. The express
|
||||
provisions of this Agreement control over any course of performance, course
|
||||
of dealing, or usage of the trade inconsistent with any of the provisions
|
||||
of this Agreement. The provisions of this Agreement will prevail
|
||||
notwithstanding any different, conflicting, or additional provisions that
|
||||
may appear on any purchase order, acknowledgement, invoice, or other
|
||||
writing issued by either party in connection with this Agreement. No
|
||||
modification or amendment to this Agreement will be effective unless in
|
||||
writing and signed by authorized representatives of each party, and must
|
||||
specifically identify this Agreement by its title and version (e.g., "Intel
|
||||
End User License Agreement for Developer Tools (Version October 2021)");
|
||||
except that Intel may make changes to this Agreement as it distributes new
|
||||
versions of the Materials. When changes are made, Intel will make a new
|
||||
version of the Agreement available on its website. If You received a copy
|
||||
of this Agreement translated into another language, the English language
|
||||
version of this Agreement will prevail in the event of any conflict between
|
||||
versions.
|
||||
|
||||
12.2 EXPORT. You acknowledge that the Materials and all related technical
|
||||
information are subject to export controls and you agree to comply with all
|
||||
laws and regulations of the United States and other applicable governments
|
||||
governing export, re-export, import, transfer, distribution, and use of the
|
||||
Materials. In particular, but without limitation, the Materials may not be
|
||||
exported or re-exported (i) into any U.S. embargoed countries or (ii) to
|
||||
any person or entity listed on a denial order published by the U.S.
|
||||
government or any other applicable governments. By using the Materials, You
|
||||
represent and warrant that You are not located in any such country or on
|
||||
any such list. You also agree that You will not use the Materials for, or
|
||||
sell or transfer them to a third party who is known or suspected to be
|
||||
involved in, any purposes prohibited by the U.S. government or other
|
||||
applicable governments, including, without limitation, the development,
|
||||
design, manufacture, or production of nuclear, missile, chemical or
|
||||
biological weapons.
|
||||
|
||||
12.3 GOVERNING LAW, JURISDICTION, AND VENUE. All disputes arising out of or
|
||||
related to this Agreement, whether based on contract, tort, or any other
|
||||
legal or equitable theory, will in all respects be governed by, and
|
||||
construed and interpreted under, the laws of the United States of America
|
||||
and the State of Delaware, without reference to conflict of laws
|
||||
principles. The parties agree that the United Nations Convention on
|
||||
Contracts for the International Sale of Goods (1980) is specifically
|
||||
excluded from and will not apply to this Agreement. All disputes arising
|
||||
out of or related to this Agreement, whether based on contract, tort, or
|
||||
any other legal or equitable theory, will be subject to the exclusive
|
||||
jurisdiction of the courts of the State of Delaware or of the Federal
|
||||
courts sitting in that State. Each party submits to the personal
|
||||
jurisdiction of those courts and waives all objections to that jurisdiction
|
||||
and venue for those disputes.
|
||||
|
||||
12.4 SEVERABILITY. The parties intend that if a court holds that any provision
|
||||
or part of this Agreement is invalid or unenforceable under applicable law,
|
||||
the court will modify the provision to the minimum extent necessary to make
|
||||
it valid and enforceable, or if it cannot be made valid and enforceable,
|
||||
the parties intend that the court will sever and delete the provision or
|
||||
part from this Agreement. Any change to or deletion of a provision or part
|
||||
of this Agreement under this Section will not affect the validity or
|
||||
enforceability of the remainder of this Agreement, which will continue in
|
||||
full force and effect.
|
||||
|
|
@ -1,73 +0,0 @@
|
|||
Intel Simplified Software License (Version August 2021)
|
||||
|
||||
Use and Redistribution. You may use and redistribute the software (the
|
||||
"Software"), without modification, provided the following conditions are met:
|
||||
|
||||
* Redistributions must reproduce the above copyright notice and the following
|
||||
terms of use in the Software and in the documentation and/or other materials
|
||||
provided with the distribution.
|
||||
* Neither the name of Intel nor the names of its suppliers may be used to
|
||||
endorse or promote products derived from this Software without specific
|
||||
prior written permission.
|
||||
* No reverse engineering, decompilation, or disassembly of this Software is
|
||||
permitted.
|
||||
|
||||
No other licenses. Except as provided in the preceding section, Intel grants no
|
||||
licenses or other rights by implication, estoppel or otherwise to, patent,
|
||||
copyright, trademark, trade name, service mark or other intellectual property
|
||||
licenses or rights of Intel.
|
||||
|
||||
Third party software. The Software may contain Third Party Software. "Third
|
||||
Party Software" is open source software, third party software, or other Intel
|
||||
software that may be identified in the Software itself or in the files (if any)
|
||||
listed in the "third-party-software.txt" or similarly named text file included
|
||||
with the Software. Third Party Software, even if included with the distribution
|
||||
of the Software, may be governed by separate license terms, including without
|
||||
limitation, open source software license terms, third party software license
|
||||
terms, and other Intel software license terms. Those separate license terms
|
||||
solely govern your use of the Third Party Software, and nothing in this license
|
||||
limits any rights under, or grants rights that supersede, the terms of the
|
||||
applicable license terms.
|
||||
|
||||
DISCLAIMER. THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT ARE
|
||||
DISCLAIMED. THIS SOFTWARE IS NOT INTENDED FOR USE IN SYSTEMS OR APPLICATIONS
|
||||
WHERE FAILURE OF THE SOFTWARE MAY CAUSE PERSONAL INJURY OR DEATH AND YOU AGREE
|
||||
THAT YOU ARE FULLY RESPONSIBLE FOR ANY CLAIMS, COSTS, DAMAGES, EXPENSES, AND
|
||||
ATTORNEYS' FEES ARISING OUT OF ANY SUCH USE, EVEN IF ANY CLAIM ALLEGES THAT
|
||||
INTEL WAS NEGLIGENT REGARDING THE DESIGN OR MANUFACTURE OF THE SOFTWARE.
|
||||
|
||||
LIMITATION OF LIABILITY. IN NO EVENT WILL INTEL BE LIABLE FOR ANY DIRECT,
|
||||
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
||||
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
No support. Intel may make changes to the Software, at any time without notice,
|
||||
and is not obligated to support, update or provide training for the Software.
|
||||
|
||||
Termination. Your right to use the Software is terminated in the event of your
|
||||
breach of this license.
|
||||
|
||||
Feedback. Should you provide Intel with comments, modifications, corrections,
|
||||
enhancements or other input ("Feedback") related to the Software, Intel will be
|
||||
free to use, disclose, reproduce, license or otherwise distribute or exploit the
|
||||
Feedback in its sole discretion without any obligations or restrictions of any
|
||||
kind, including without limitation, intellectual property rights or licensing
|
||||
obligations.
|
||||
|
||||
Compliance with laws. You agree to comply with all relevant laws and regulations
|
||||
governing your use, transfer, import or export (or prohibition thereof) of the
|
||||
Software.
|
||||
|
||||
Governing law. All disputes will be governed by the laws of the United States of
|
||||
America and the State of Delaware without reference to conflict of law
|
||||
principles and subject to the exclusive jurisdiction of the state or federal
|
||||
courts sitting in the State of Delaware, and each party agrees that it submits
|
||||
to the personal jurisdiction and venue of those courts and waives any
|
||||
objections. The United Nations Convention on Contracts for the International
|
||||
Sale of Goods (1980) is specifically excluded and will not apply to the
|
||||
Software.
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
Copyright (c) 2009, Stanford University, and authors listed below.
|
||||
All rights reserved.
|
||||
|
||||
Original authors:
|
||||
Solomon Boulos
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
Redistributions of source code must retain the above copyright notice,
|
||||
this list of conditions and the following disclaimer.
|
||||
|
||||
Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
Neither the name of Stanford University nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
|
@ -1,134 +0,0 @@
|
|||
### Building the Intel BSP layers
|
||||
|
||||
The intel-common BSP provide a few carefully selected tune options and
|
||||
generic hardware support to cover the majority of current Intel CPUs and
|
||||
devices. The naming follows the convention of intel-<TUNE>-<BITS>, where
|
||||
TUNE is the gcc cpu-type (used with mtune and march typically) and BITS
|
||||
is either 32 bit or 64 bit.
|
||||
|
||||
In order to build an image with BSP support for a given release, you
|
||||
need to clone the meta-intel layer from git repository:
|
||||
```
|
||||
git clone https://git.yoctoproject.org/meta-intel
|
||||
```
|
||||
|
||||
Check out the appropriate branch or release tags. The branch name and tags
|
||||
would align with Yocto Project
|
||||
[Release Codenames](https://wiki.yoctoproject.org/wiki/Releases).
|
||||
Assuming meta-intel repository is cloned at the top-level of
|
||||
OE-Core build tree, you can build a BSP image by adding the location of
|
||||
the meta-intel layer to bblayers.conf:
|
||||
```
|
||||
BBLAYERS = " \
|
||||
/openembedded-core/meta \
|
||||
/openembedded-core/meta-intel "
|
||||
```
|
||||
|
||||
To enable a particular machine, add a MACHINE line naming the BSP
|
||||
to the local.conf file:
|
||||
```
|
||||
MACHINE ?= "intel-corei7-64"
|
||||
```
|
||||
|
||||
where this can be replaced by other MACHINE types available:
|
||||
|
||||
- intel-core2-32
|
||||
|
||||
This BSP is optimized for the Core2 family of CPUs as well as all
|
||||
Atom CPUs prior to the Silvermont core.
|
||||
|
||||
- intel-corei7-64
|
||||
|
||||
This BSP is optimized for Nehalem and later Core and Xeon CPUs as
|
||||
well as Silvermont and later Atom CPUs, such as the Baytrail SoCs.
|
||||
|
||||
- intel-skylake-64
|
||||
|
||||
This BSP uses [x86-64-v3 tuning](https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html).
|
||||
|
||||
You should then be able to build an image as such:
|
||||
```
|
||||
$ source oe-init-build-env
|
||||
$ bitbake core-image-sato
|
||||
```
|
||||
|
||||
At the end of a successful build, you should have an image that
|
||||
you can boot from a USB flash drive.
|
||||
|
||||
|
||||
## Booting the intel-common BSP images
|
||||
|
||||
If you've built your own image, you'll find the bootable
|
||||
image in the build/tmp/deploy/images/{MACHINE} directory, where
|
||||
'MACHINE' refers to the machine name used in the build.
|
||||
|
||||
Under Linux, insert a USB flash drive. Assuming the USB flash drive
|
||||
takes device /dev/sdf, use dd to copy the image to it. Before the image
|
||||
can be burned onto a USB drive, it should be un-mounted. Some Linux distros
|
||||
may automatically mount a USB drive when it is plugged in. Using USB device
|
||||
/dev/sdf as an example, find all mounted partitions:
|
||||
```
|
||||
$ mount | grep sdf
|
||||
```
|
||||
|
||||
and un-mount those that are mounted, for example:
|
||||
```
|
||||
$ umount /dev/sdf1
|
||||
$ umount /dev/sdf2
|
||||
```
|
||||
|
||||
Now burn the image onto the USB drive:
|
||||
```
|
||||
$ sudo dd if=core-image-sato-intel-corei7-64.wic of=/dev/sdf status=progress
|
||||
$ sync
|
||||
$ eject /dev/sdf
|
||||
```
|
||||
|
||||
This should give you a bootable USB flash device. Insert the device
|
||||
into a bootable USB socket on the target, and power on. This should
|
||||
result in a system booted to the Sato graphical desktop.
|
||||
|
||||
If you want a terminal, use the arrows at the top of the UI to move to
|
||||
different pages of available applications, one of which is named
|
||||
'Terminal'. Clicking that should give you a root terminal.
|
||||
|
||||
If you want to ssh into the system, you can use the root terminal to
|
||||
ifconfig the IP address and use that to ssh in. The root password is
|
||||
empty, so to log in type 'root' for the user name and hit 'Enter' at
|
||||
the Password prompt: and you should be in.
|
||||
|
||||
If you find you're getting corrupt images on the USB (it doesn't show
|
||||
the syslinux boot: prompt, or the boot: prompt contains strange
|
||||
characters), try doing this first:
|
||||
```
|
||||
$ dd if=/dev/zero of=/dev/sdf bs=1M count=512
|
||||
```
|
||||
|
||||
## Building the installer image
|
||||
|
||||
If you plan to install your image to your target machine, you can build a wic
|
||||
based installer image instead of default wic image. To build it, you need to
|
||||
add below configuration to local.conf :
|
||||
|
||||
```
|
||||
WKS_FILE = "image-installer.wks.in"
|
||||
IMAGE_FSTYPES:append = " ext4"
|
||||
IMAGE_TYPEDEP:wic = "ext4"
|
||||
INITRD_IMAGE_LIVE="core-image-minimal-initramfs"
|
||||
do_image_wic[depends] += "${INITRD_IMAGE_LIVE}:do_image_complete"
|
||||
do_rootfs[depends] += "virtual/kernel:do_deploy"
|
||||
IMAGE_BOOT_FILES:append = "\
|
||||
${KERNEL_IMAGETYPE} \
|
||||
microcode.cpio \
|
||||
${IMGDEPLOYDIR}/${IMAGE_BASENAME}-${MACHINE}.rootfs.ext4;rootfs.img \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', 'grub-efi-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', '${IMAGE_ROOTFS}/boot/EFI/BOOT/grub.cfg;EFI/BOOT/grub.cfg', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', 'systemd-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/loader.conf;loader/loader.conf ', '', d)} \
|
||||
${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/entries/boot.conf;loader/entries/boot.conf', '', d)} "
|
||||
```
|
||||
|
||||
Burn the wic image onto USB flash device, insert the device to target machine
|
||||
and power on. This should start the installation process.
|
||||
|
||||
|
||||
|
|
@ -1,107 +0,0 @@
|
|||
Intel(R) oneAPI DPC++/C++ Compiler (ICX) toolchain
|
||||
==========================================================================
|
||||
|
||||
Get Started with the Intel oneAPI DPC++/C++ Compiler:
|
||||
|
||||
https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html#
|
||||
|
||||
|
||||
Getting Started
|
||||
===============
|
||||
|
||||
Clone the required layers and include them in bblayers.conf:
|
||||
|
||||
```
|
||||
git clone https://git.openembedded.org/openembedded-core
|
||||
git clone https://git.openembedded.org/bitbake
|
||||
git clone https://git.openembedded.org/meta-openembedded
|
||||
git clone https://github.com/kraj/meta-clang.git
|
||||
git clone https://git.yoctoproject.org/meta-intel
|
||||
|
||||
$ source openembedded-core/oe-init-build-env
|
||||
|
||||
$ bitbake-layers add-layer ../meta-openembedded/meta-oe/
|
||||
$ bitbake-layers add-layer ../meta-intel
|
||||
$ bitbake-layers add-layer ../meta-clang
|
||||
```
|
||||
|
||||
Distro
|
||||
======
|
||||
|
||||
Note that oneAPI DPC++/C++ compiler currently only works when the vendor string is "oe".
|
||||
|
||||
```
|
||||
DISTRO ?= "nodistro"
|
||||
```
|
||||
|
||||
MACHINE configuration
|
||||
=====================
|
||||
|
||||
```
|
||||
MACHINE ?= "intel-skylake-64"
|
||||
```
|
||||
|
||||
Package installation
|
||||
====================
|
||||
|
||||
```
|
||||
# To include OpenCL driver that might be needed when compiling SYCL programs, include:
|
||||
IMAGE_INSTALL:append = " intel-compute-runtime intel-graphics-compiler"
|
||||
|
||||
# To install only runtime libraries, include:
|
||||
IMAGE_INSTALL:append = " intel-oneapi-dpcpp-cpp-runtime intel-oneapi-dpcpp-cpp-runtime-dev"
|
||||
|
||||
# To install the toolchain, include:
|
||||
IMAGE_INSTALL:append = " intel-oneapi-dpcpp-cpp intel-oneapi-dpcpp-cpp-dev"
|
||||
```
|
||||
in local.conf.
|
||||
|
||||
Build an image
|
||||
==============
|
||||
|
||||
```
|
||||
$ bitbake core-image-minimal
|
||||
```
|
||||
|
||||
Including oneAPI C++/DPC++ compiler in generated SDK toolchain
|
||||
==============================================================
|
||||
|
||||
The compiler is not included in the generated SDK by default. If it is expected to be part of SDK, add ICXSDK = "1" in local.conf:
|
||||
|
||||
```
|
||||
ICXSDK = "1"
|
||||
```
|
||||
|
||||
Generate SDK:
|
||||
```
|
||||
bitbake core-image-minimal -c populate_sdk
|
||||
```
|
||||
|
||||
|
||||
To setup PATH variables on target
|
||||
=================================
|
||||
|
||||
Once image is booted successfully, some variables would need to be exported to make sure compiler can be used:
|
||||
|
||||
```
|
||||
$ source /opt/intel/oneapi/compiler/2022.1.0/env/vars.sh
|
||||
|
||||
$ mkdir -p /lib64
|
||||
|
||||
$ ln -sf /lib/ld-linux-x86-64.so.2 /lib64/ld-linux-x86-64.so.2
|
||||
```
|
||||
|
||||
Build application and run
|
||||
=========================
|
||||
|
||||
To compile a sycl application, for example:
|
||||
|
||||
```
|
||||
$ icpx --target=x86_64-oe-linux -fsycl simple-sycl-app.c -o simple-sycl-app
|
||||
```
|
||||
|
||||
To run:
|
||||
|
||||
```
|
||||
$ ./simple-sycl-app
|
||||
```
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
Build a Yocto Image with OpenVINO™ toolkit
|
||||
==========================================
|
||||
|
||||
Follow the [Yocto Project official documentation](https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html#compatible-linux-distribution) to set up and configure your host machine to be compatible with BitBake.
|
||||
|
||||
## Step 1: Set Up Environment
|
||||
|
||||
1. Clone the repositories.
|
||||
|
||||
```
|
||||
git clone https://git.yoctoproject.org/git/poky
|
||||
git clone https://github.com/openembedded/meta-openembedded
|
||||
git clone https://git.yoctoproject.org/git/meta-intel
|
||||
git clone https://github.com/intel/meta-openvino
|
||||
```
|
||||
|
||||
|
||||
2. Set up the OpenEmbedded build environment.
|
||||
|
||||
```
|
||||
source poky/oe-init-build-env
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
3. Add BitBake layers.
|
||||
|
||||
|
||||
```
|
||||
bitbake-layers add-layer ../meta-openembedded/meta-oe
|
||||
bitbake-layers add-layer ../meta-openembedded/meta-python
|
||||
bitbake-layers add-layer ../meta-intel
|
||||
bitbake-layers add-layer ../meta-openvino
|
||||
|
||||
```
|
||||
|
||||
|
||||
4. Set up BitBake configurations.
|
||||
Include extra configuration in the `conf/local.conf` file in your build directory as required.
|
||||
|
||||
|
||||
```
|
||||
MACHINE = "intel-skylake-64"
|
||||
|
||||
# Enable building OpenVINO Python API.
|
||||
# This requires meta-python layer to be included in bblayers.conf.
|
||||
PACKAGECONFIG:append:pn-openvino-inference-engine = " python3"
|
||||
|
||||
# This adds OpenVINO related libraries in the target image.
|
||||
CORE_IMAGE_EXTRA_INSTALL:append = " openvino-inference-engine"
|
||||
|
||||
# This adds OpenVINO samples in the target image.
|
||||
CORE_IMAGE_EXTRA_INSTALL:append = " openvino-inference-engine-samples"
|
||||
|
||||
# Include OpenVINO Python API package in the target image.
|
||||
CORE_IMAGE_EXTRA_INSTALL:append = " openvino-inference-engine-python3"
|
||||
|
||||
```
|
||||
|
||||
## Step 2: Build a Yocto Image with OpenVINO Packages
|
||||
|
||||
Run BitBake to build your image with OpenVINO packages. For example, to build the minimal image, run the following command:
|
||||
|
||||
|
||||
```
|
||||
bitbake core-image-minimal
|
||||
|
||||
```
|
||||
|
||||
## Step 3: Verify the Yocto Image
|
||||
|
||||
Verify that OpenVINO packages were built successfully. Run the following command:
|
||||
|
||||
```
|
||||
oe-pkgdata-util list-pkgs | grep openvino
|
||||
|
||||
```
|
||||
|
||||
|
||||
If the image build is successful, it will return the list of packages as below:
|
||||
|
||||
```
|
||||
openvino-inference-engine
|
||||
openvino-inference-engine-dbg
|
||||
openvino-inference-engine-dev
|
||||
openvino-inference-engine-python3
|
||||
openvino-inference-engine-samples
|
||||
openvino-inference-engine-src
|
||||
openvino-inference-engine-doc
|
||||
|
||||
```
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
## Reporting bugs
|
||||
|
||||
If you have problems with or questions about a particular BSP, please
|
||||
contact the maintainer listed in the [Maintainer](../README.md#maintainers) section directly (cc:ing
|
||||
the Yocto mailing list puts it in the archive and helps other people
|
||||
who might have the same questions in the future), but please try to do
|
||||
the following first:
|
||||
|
||||
- look in the [Yocto Project Bugzilla](http://bugzilla.yoctoproject.org/) to see if a
|
||||
problem has already been reported
|
||||
|
||||
- look through recent entries of the [meta-intel](https://lists.yoctoproject.org/g/meta-intel/messages)
|
||||
and [Yocto Archives](https://lists.yoctoproject.org/g/yocto/messages) mailing list archives to see
|
||||
if other people have run into similar problems or had similar questions answered.
|
||||
|
||||
If you believe you have encountered a bug, you can open a new bug and
|
||||
enter the details in the [Yocto Project Bugzilla](https://bugzilla.yoctoproject.org/).
|
||||
If you're relatively certain that it's a bug against the BSP itself, please use the
|
||||
'BSPs | bsps-meta-intel' category for the bug; otherwise, please submit the bug against
|
||||
the most likely category for the problem. if you're wrong, it's not a big deal and
|
||||
the bug will be recategorized upon triage.
|
||||
|
||||
38
documentation/secureboot/README
Normal file
38
documentation/secureboot/README
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
Currently, only one implementation of Secure Boot is available out of the box,
|
||||
which is using a single signed EFI application to directly boot the kernel with
|
||||
an optional initramfs.
|
||||
|
||||
This can be added to your build either through local.conf, or via your own
|
||||
custom image recipe.
|
||||
|
||||
If you are adding it via local.conf, set the following variables:
|
||||
|
||||
IMAGE_FEATURES += "secureboot"
|
||||
WKS_FILE = "generic-bootdisk.wks.in"
|
||||
SECURE_BOOT_SIGNING_KEY = "/path/to/your/signing/key"
|
||||
SECURE_BOOT_SIGNING_CERT = "/path/to/your/signing/cert"
|
||||
IMAGE_CLASSES += "uefi-comboapp"
|
||||
|
||||
If working with an image recipe, you can inherit uefi-comboapp directly instead
|
||||
of using the IMAGE_CLASSES variable.
|
||||
|
||||
The signing keys and certs can be created via openssl commands. Here's an
|
||||
example:
|
||||
openssl req -new -x509 -newkey rsa:2048 -subj "/CN=your-subject/" -keyout \
|
||||
your-key.key -out your-key.crt -days 365 -nodes -sha256
|
||||
openssl x509 -in your-key.crt -out your-key.cer -outform DER
|
||||
|
||||
The .crt file is your SECURE_BOOT_SIGNING_CERT, and the .key file is your
|
||||
SECURE_BOOT_SIGNING_KEY.
|
||||
|
||||
You should enroll the .crt key in your firmware under the PK, KEK, and DB
|
||||
options (methods are different depending on your firmware). If a key should ever
|
||||
become invalid, enroll it under DBX to blacklist it.
|
||||
|
||||
The comboapp can be further manipulated in a number of ways. You can modify the
|
||||
kernel command line via the APPEND variable, you can change the default UUID via
|
||||
the DISK_SIGNATURE_UUID variable, and you can modify the contents of the
|
||||
initramfs via the INITRD_IMAGE or INITRD_LIVE variables.
|
||||
|
||||
A simple Secure Boot enabled image used for testing can be viewed at:
|
||||
common/recipes-selftest/images/secureboot-selftest-image-signed.bb
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
## Guidelines for submitting patches
|
||||
|
||||
Please submit any patches against meta-intel BSPs to the
|
||||
[meta-intel mailing list](https://lists.yoctoproject.org/g/meta-intel)
|
||||
(email: meta-intel@lists.yoctoproject.org). Also, if your patches are
|
||||
available via a public git repository, please also include a URL to
|
||||
the repo and branch containing your patches as that makes it easier
|
||||
for maintainers to grab and test your patches.
|
||||
|
||||
The patches should follow the suggestions outlined in the
|
||||
[Yocto Project and OpenEmbedded Contributor Guide](https://docs.yoctoproject.org/dev/contributor-guide/index.html).
|
||||
In addition, for any non-trivial patch, provide information about how you
|
||||
tested the patch, and for any non-trivial or non-obvious testing
|
||||
setup, provide details of that setup.
|
||||
|
||||
Doing a quick 'git log' in meta-intel will provide you with many
|
||||
examples of good example commits if you have questions about any
|
||||
aspect of the preferred format.
|
||||
|
||||
The meta-intel maintainers will do their best to review and/or pull in
|
||||
a patch or patch sets within 24 hours of the time it was posted. For
|
||||
larger and/or more involved patches and patch sets, the review process
|
||||
may take longer.
|
||||
|
||||
Please see the [maintainers](../README.md#maintainers) section for the list of maintainers. It's also
|
||||
a good idea to cc: the maintainer, if applicable.
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
## Tested Hardware
|
||||
|
||||
The following undergo regular testing with their respective MACHINE types:
|
||||
|
||||
- intel-corei7-64:
|
||||
* Alder Lake-P/S/PS
|
||||
* Amston Lake
|
||||
* Elkhart Lake
|
||||
* Metor Lake-P
|
||||
* Raptor Lake-P/S
|
||||
* Tiger Lake
|
||||
|
||||
- intel-skylake-64:
|
||||
* Alder Lake-P/S/PS
|
||||
* Amston Lake
|
||||
* Metor Lake-P
|
||||
* Raptor Lake-P/S
|
||||
* Tiger Lake
|
||||
|
||||
- intel-core2-32:
|
||||
* MinnowBoard Turbot
|
||||
|
|
@ -1,57 +0,0 @@
|
|||
HOMEPAGE = "https://www.oneapi.com"
|
||||
SUMMARY = "Deep Neural Network Library"
|
||||
DESCRIPTION = "This software is a user mode library that accelerates\
|
||||
deep-learning applications and frameworks on Intel architecture."
|
||||
LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b64000f6e7d52516017622a37a94ce9 \
|
||||
file://tests/gtests/gtest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
|
||||
file://src/cpu/x64/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
|
||||
file://src/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
|
||||
"
|
||||
SECTION = "lib"
|
||||
|
||||
inherit pkgconfig cmake ptest
|
||||
|
||||
DNN_BRANCH = "rls-v${@'.'.join(d.getVar('PV').split('.')[0:2])}"
|
||||
|
||||
SRCREV = "66f0cb9eb66affd2da3bf5f8d897376f04aae6af"
|
||||
SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=${DNN_BRANCH};protocol=https \
|
||||
file://run-ptest \
|
||||
"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
|
||||
|
||||
CVE_PRODUCT = "intel:math_kernel_library"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST:libc-musl = 'null'
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DDNNL_LIBRARY_TYPE=SHARED \
|
||||
-DDNNL_BUILD_EXAMPLES=ON \
|
||||
-DDNNL_BUILD_TESTS=ON \
|
||||
-DDNNL_CPU_RUNTIME=OMP \
|
||||
-DDNNL_ARCH_OPT_FLAGS="" \
|
||||
-DCMAKE_SKIP_RPATH=ON \
|
||||
-DONEDNN_BUILD_GRAPH=OFF \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ??= "gpu"
|
||||
PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-headers virtual/opencl-icd, intel-compute-runtime"
|
||||
|
||||
do_install:append () {
|
||||
install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
|
||||
install -m 0755 ${B}/tests/benchdnn/benchdnn ${D}${bindir}/mkl-dnn/tests/benchdnn
|
||||
cp -r ${B}/tests/benchdnn/inputs/* ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
|
||||
}
|
||||
|
||||
do_install_ptest () {
|
||||
install -d ${D}${PTEST_PATH}/tests
|
||||
install -m 0755 ${B}/tests/api-c ${D}${PTEST_PATH}/tests
|
||||
install -m 0755 ${B}/tests/test_c_symbols-c ${D}${PTEST_PATH}/tests
|
||||
}
|
||||
|
||||
PACKAGES =+ "${PN}-test"
|
||||
|
||||
FILES:${PN}-test = "${bindir}/mkl-dnn/*"
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/files:"
|
||||
|
||||
LIBCPLUSPLUS = ""
|
||||
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
From 559fb8f82295ec4dc64a132b6566939b85c1b6fe Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Thu, 15 Aug 2019 22:34:31 +0800
|
||||
Subject: [PATCH] dont export targets for binaries
|
||||
|
||||
The projects using LLVM cmake modules look for target binaries in
|
||||
sysroot as a result which isn't desirable in this case and isn't needed
|
||||
either.
|
||||
|
||||
Upstream-Status: Inappropriate [cross-compile specific]
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
llvm/cmake/modules/AddLLVM.cmake | 9 ---------
|
||||
llvm/cmake/modules/TableGen.cmake | 6 ------
|
||||
2 files changed, 15 deletions(-)
|
||||
|
||||
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
|
||||
index 619e986b8aa..d2bc1a25dd9 100644
|
||||
--- a/llvm/cmake/modules/AddLLVM.cmake
|
||||
+++ b/llvm/cmake/modules/AddLLVM.cmake
|
||||
@@ -898,12 +898,6 @@ macro(add_llvm_tool name)
|
||||
|
||||
if ( ${name} IN_LIST LLVM_TOOLCHAIN_TOOLS OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
if( LLVM_BUILD_TOOLS )
|
||||
- set(export_to_llvmexports)
|
||||
- if(${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
|
||||
- NOT LLVM_DISTRIBUTION_COMPONENTS)
|
||||
- set(export_to_llvmexports EXPORT LLVMExports)
|
||||
- set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
|
||||
- endif()
|
||||
|
||||
install(TARGETS ${name}
|
||||
${export_to_llvmexports}
|
||||
@@ -917,9 +911,6 @@ macro(add_llvm_tool name)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
- if( LLVM_BUILD_TOOLS )
|
||||
- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
|
||||
- endif()
|
||||
set_target_properties(${name} PROPERTIES FOLDER "Tools")
|
||||
endmacro(add_llvm_tool name)
|
||||
|
||||
diff --git a/llvm/cmake/modules/TableGen.cmake b/llvm/cmake/modules/TableGen.cmake
|
||||
index 36c026b5c0f..537acd696d8 100644
|
||||
--- a/llvm/cmake/modules/TableGen.cmake
|
||||
+++ b/llvm/cmake/modules/TableGen.cmake
|
||||
@@ -148,15 +148,9 @@ macro(add_tablegen target project)
|
||||
endif()
|
||||
|
||||
if (${project} STREQUAL LLVM AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND LLVM_BUILD_UTILS)
|
||||
- set(export_to_llvmexports)
|
||||
- if(${target} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
|
||||
- NOT LLVM_DISTRIBUTION_COMPONENTS)
|
||||
- set(export_to_llvmexports EXPORT LLVMExports)
|
||||
- endif()
|
||||
|
||||
install(TARGETS ${target}
|
||||
${export_to_llvmexports}
|
||||
RUNTIME DESTINATION ${LLVM_TOOLS_INSTALL_DIR})
|
||||
endif()
|
||||
- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${target})
|
||||
endmacro()
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
From 48e50f06b1bbed94cdf5207587161d4bfce7366e Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Wed, 21 Aug 2019 14:35:31 +0800
|
||||
Subject: [PATCH] llvm-spirv: skip building tests
|
||||
|
||||
Some of these need clang to be built and since we're building this in-tree,
|
||||
that leads to problems when compiling libcxx, compiler-rt which aren't built
|
||||
in-tree.
|
||||
|
||||
Instead of using SPIRV_SKIP_CLANG_BUILD to skip clang build and adding this to
|
||||
all components, disable the building of tests altogether.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 10 ----------
|
||||
1 file changed, 10 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1208741..20ca3e6 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -15,13 +15,6 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
- if(LLVM_INCLUDE_TESTS)
|
||||
- set(LLVM_TEST_COMPONENTS
|
||||
- llvm-as
|
||||
- llvm-dis
|
||||
- )
|
||||
- endif(LLVM_INCLUDE_TESTS)
|
||||
-
|
||||
find_package(LLVM 9.0.0 REQUIRED
|
||||
COMPONENTS
|
||||
Analysis
|
||||
@@ -56,9 +49,6 @@ set(LLVM_SPIRV_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/include)
|
||||
|
||||
add_subdirectory(lib/SPIRV)
|
||||
add_subdirectory(tools/llvm-spirv)
|
||||
-if(LLVM_INCLUDE_TESTS)
|
||||
- add_subdirectory(test)
|
||||
-endif(LLVM_INCLUDE_TESTS)
|
||||
|
||||
install(
|
||||
FILES
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
|
@ -0,0 +1,111 @@
|
|||
From eeb816d95f0910bd246e37bb2bb3923acf0edf6b Mon Sep 17 00:00:00 2001
|
||||
From: Aleksander Us <aleksander.us@intel.com>
|
||||
Date: Mon, 26 Aug 2019 15:47:41 +0300
|
||||
Subject: [PATCH] [BasicBlockUtils] Add metadata fixing in
|
||||
SplitBlockPredecessors.
|
||||
|
||||
In case when BB is header of some loop and predecessor is latch of
|
||||
this loop, metadata was not attached to newly created basic block.
|
||||
This led to loss of loop metadata for other passes.
|
||||
|
||||
Upstream-Status: Submitted [https://reviews.llvm.org/D66892]
|
||||
|
||||
https://github.com/intel/llvm-patches/commit/8af4449e2d201707f7f2f832b473a0439e255f32
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
lib/Transforms/Utils/BasicBlockUtils.cpp | 23 ++++++++----
|
||||
test/Transforms/LoopSimplify/loop_metadata.ll | 36 +++++++++++++++++++
|
||||
2 files changed, 52 insertions(+), 7 deletions(-)
|
||||
create mode 100644 test/Transforms/LoopSimplify/loop_metadata.ll
|
||||
|
||||
diff --git a/lib/Transforms/Utils/BasicBlockUtils.cpp b/lib/Transforms/Utils/BasicBlockUtils.cpp
|
||||
index 5fa371377c8..3a90ae061fb 100644
|
||||
--- a/lib/Transforms/Utils/BasicBlockUtils.cpp
|
||||
+++ b/lib/Transforms/Utils/BasicBlockUtils.cpp
|
||||
@@ -579,24 +579,33 @@ BasicBlock *llvm::SplitBlockPredecessors(BasicBlock *BB,
|
||||
|
||||
// The new block unconditionally branches to the old block.
|
||||
BranchInst *BI = BranchInst::Create(BB, NewBB);
|
||||
+ bool IsBBHeader = LI && LI->isLoopHeader(BB);
|
||||
+ Loop *BBLoop = LI ? LI->getLoopFor(BB) : nullptr;
|
||||
// Splitting the predecessors of a loop header creates a preheader block.
|
||||
- if (LI && LI->isLoopHeader(BB))
|
||||
+ if (IsBBHeader)
|
||||
// Using the loop start line number prevents debuggers stepping into the
|
||||
// loop body for this instruction.
|
||||
- BI->setDebugLoc(LI->getLoopFor(BB)->getStartLoc());
|
||||
+ BI->setDebugLoc(BBLoop->getStartLoc());
|
||||
else
|
||||
BI->setDebugLoc(BB->getFirstNonPHIOrDbg()->getDebugLoc());
|
||||
|
||||
// Move the edges from Preds to point to NewBB instead of BB.
|
||||
- for (unsigned i = 0, e = Preds.size(); i != e; ++i) {
|
||||
+ for (BasicBlock *Pred : Preds) {
|
||||
+ Instruction *PI = Pred->getTerminator();
|
||||
// This is slightly more strict than necessary; the minimum requirement
|
||||
// is that there be no more than one indirectbr branching to BB. And
|
||||
// all BlockAddress uses would need to be updated.
|
||||
- assert(!isa<IndirectBrInst>(Preds[i]->getTerminator()) &&
|
||||
+ assert(!isa<IndirectBrInst>(PI) &&
|
||||
"Cannot split an edge from an IndirectBrInst");
|
||||
- assert(!isa<CallBrInst>(Preds[i]->getTerminator()) &&
|
||||
- "Cannot split an edge from a CallBrInst");
|
||||
- Preds[i]->getTerminator()->replaceUsesOfWith(BB, NewBB);
|
||||
+ assert(!isa<CallBrInst>(PI) && "Cannot split an edge from a CallBrInst");
|
||||
+ if (IsBBHeader && BBLoop->contains(Pred) && BBLoop->isLoopLatch(Pred)) {
|
||||
+ // Update loop metadata if it exists.
|
||||
+ if (MDNode *LoopMD = PI->getMetadata(LLVMContext::MD_loop)) {
|
||||
+ BI->setMetadata(LLVMContext::MD_loop, LoopMD);
|
||||
+ PI->setMetadata(LLVMContext::MD_loop, nullptr);
|
||||
+ }
|
||||
+ }
|
||||
+ PI->replaceUsesOfWith(BB, NewBB);
|
||||
}
|
||||
|
||||
// Insert a new PHI node into NewBB for every PHI node in BB and that new PHI
|
||||
diff --git a/test/Transforms/LoopSimplify/loop_metadata.ll b/test/Transforms/LoopSimplify/loop_metadata.ll
|
||||
new file mode 100644
|
||||
index 00000000000..c15c92fe3ae
|
||||
--- /dev/null
|
||||
+++ b/test/Transforms/LoopSimplify/loop_metadata.ll
|
||||
@@ -0,0 +1,36 @@
|
||||
+; RUN: opt -S -loop-simplify < %s | FileCheck %s
|
||||
+
|
||||
+; CHECK: for.cond.loopexit:
|
||||
+; CHECK: br label %for.cond, !llvm.loop !0
|
||||
+; CHECK: br i1 %cmp1, label %for.body1, label %for.cond.loopexit
|
||||
+
|
||||
+define void @foo() {
|
||||
+entry:
|
||||
+ br label %for.cond
|
||||
+
|
||||
+for.cond: ; preds = %for.cond1, %entry
|
||||
+ %j = phi i32 [ 0, %entry ], [ %add, %for.cond1 ]
|
||||
+ %cmp = icmp ult i32 %j, 8
|
||||
+ br i1 %cmp, label %for.body, label %for.end
|
||||
+
|
||||
+for.body: ; preds = %for.cond
|
||||
+ %dummy1 = add i32 1, 1
|
||||
+ %add = add nuw nsw i32 %j, 1
|
||||
+ br label %for.cond1
|
||||
+
|
||||
+for.cond1: ; preds = %for.body1, %for.body
|
||||
+ %i.0 = phi i32 [ 1, %for.body ], [ %inc, %for.body1 ]
|
||||
+ %cmp1 = icmp ult i32 %i.0, 8
|
||||
+ br i1 %cmp1, label %for.body1, label %for.cond, !llvm.loop !0
|
||||
+
|
||||
+for.body1: ; preds = %for.cond1
|
||||
+ %dummy2 = add i32 1, 1
|
||||
+ %inc = add nuw nsw i32 %i.0, 1
|
||||
+ br label %for.cond1
|
||||
+
|
||||
+for.end: ; preds = %for.cond
|
||||
+ ret void
|
||||
+}
|
||||
+
|
||||
+!0 = distinct !{!0, !1}
|
||||
+!1 = !{!"llvm.loop.unroll.full"}
|
||||
--
|
||||
2.18.0
|
||||
|
||||
|
|
@ -0,0 +1,146 @@
|
|||
From 35e218a886f4c066eabd18685240d55270bd5a6d Mon Sep 17 00:00:00 2001
|
||||
From: Aleksander Us <aleksander.us@intel.com>
|
||||
Date: Mon, 26 Aug 2019 15:45:47 +0300
|
||||
Subject: [PATCH] [IndVarSimplify] Do not use SCEV expander for IVCount in
|
||||
LFTR when possible.
|
||||
|
||||
SCEV analysis cannot properly cache instruction with poison flags
|
||||
(for example, add nsw outside of loop will not be reused by expander).
|
||||
This can lead to generating of additional instructions by SCEV expander.
|
||||
|
||||
Example IR:
|
||||
|
||||
...
|
||||
%maxval = add nuw nsw i32 %a1, %a2
|
||||
...
|
||||
for.body:
|
||||
...
|
||||
%cmp22 = icmp ult i32 %ivadd, %maxval
|
||||
br i1 %cmp22, label %for.body, label %for.end
|
||||
...
|
||||
|
||||
SCEV expander will generate copy of %maxval in preheader but without
|
||||
nuw/nsw flags. This can be avoided by explicit check that iv count
|
||||
value gives the same SCEV expressions as calculated by LFTR.
|
||||
|
||||
Upstream-Status: Submitted [https://reviews.llvm.org/D66890]
|
||||
|
||||
https://github.com/intel/llvm-patches/commit/fd6a6c97341a56fd21bc32bc940afea751312e8f
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
lib/Transforms/Scalar/IndVarSimplify.cpp | 12 +++++++++-
|
||||
test/Transforms/IndVarSimplify/add_nsw.ll | 23 ++++++++++++++++++++
|
||||
test/Transforms/IndVarSimplify/lftr-reuse.ll | 9 +++-----
|
||||
test/Transforms/IndVarSimplify/udiv.ll | 1 +
|
||||
4 files changed, 38 insertions(+), 7 deletions(-)
|
||||
create mode 100644 test/Transforms/IndVarSimplify/add_nsw.ll
|
||||
|
||||
diff --git a/lib/Transforms/Scalar/IndVarSimplify.cpp b/lib/Transforms/Scalar/IndVarSimplify.cpp
|
||||
index f9fc698a4a9..5e04dac8aa6 100644
|
||||
--- a/lib/Transforms/Scalar/IndVarSimplify.cpp
|
||||
+++ b/lib/Transforms/Scalar/IndVarSimplify.cpp
|
||||
@@ -2375,6 +2375,17 @@ static Value *genLoopLimit(PHINode *IndVar, BasicBlock *ExitingBB,
|
||||
if (UsePostInc)
|
||||
IVLimit = SE->getAddExpr(IVLimit, SE->getOne(IVLimit->getType()));
|
||||
|
||||
+ // If computed limit is equal to old limit then do not use SCEV expander
|
||||
+ // because it can lost NUW/NSW flags and create extra instructions.
|
||||
+ BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator());
|
||||
+ if (ICmpInst *Cmp = dyn_cast<ICmpInst>(BI->getOperand(0))) {
|
||||
+ Value *Limit = Cmp->getOperand(0);
|
||||
+ if (!L->isLoopInvariant(Limit))
|
||||
+ Limit = Cmp->getOperand(1);
|
||||
+ if (SE->getSCEV(Limit) == IVLimit)
|
||||
+ return Limit;
|
||||
+ }
|
||||
+
|
||||
// Expand the code for the iteration count.
|
||||
assert(SE->isLoopInvariant(IVLimit, L) &&
|
||||
"Computed iteration count is not loop invariant!");
|
||||
@@ -2383,7 +2394,6 @@ static Value *genLoopLimit(PHINode *IndVar, BasicBlock *ExitingBB,
|
||||
// SCEV expression (IVInit) for a pointer type IV value (IndVar).
|
||||
Type *LimitTy = ExitCount->getType()->isPointerTy() ?
|
||||
IndVar->getType() : ExitCount->getType();
|
||||
- BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator());
|
||||
return Rewriter.expandCodeFor(IVLimit, LimitTy, BI);
|
||||
}
|
||||
}
|
||||
diff --git a/test/Transforms/IndVarSimplify/add_nsw.ll b/test/Transforms/IndVarSimplify/add_nsw.ll
|
||||
new file mode 100644
|
||||
index 00000000000..abd1cbb6c51
|
||||
--- /dev/null
|
||||
+++ b/test/Transforms/IndVarSimplify/add_nsw.ll
|
||||
@@ -0,0 +1,23 @@
|
||||
+; RUN: opt -indvars -S %s | FileCheck %s
|
||||
+
|
||||
+target datalayout = "e-p:32:32-i64:64-n8:16:32"
|
||||
+
|
||||
+; CHECK: for.body.preheader:
|
||||
+; CHECK-NOT: add
|
||||
+; CHECK: for.body:
|
||||
+
|
||||
+define void @foo(i32 %a1, i32 %a2) {
|
||||
+entry:
|
||||
+ %maxval = add nuw nsw i32 %a1, %a2
|
||||
+ %cmp = icmp slt i32 %maxval, 1
|
||||
+ br i1 %cmp, label %for.end, label %for.body
|
||||
+
|
||||
+for.body: ; preds = %entry, %for.body
|
||||
+ %j.02 = phi i32 [ 0, %entry ], [ %add31, %for.body ]
|
||||
+ %add31 = add nuw nsw i32 %j.02, 1
|
||||
+ %cmp22 = icmp slt i32 %add31, %maxval
|
||||
+ br i1 %cmp22, label %for.body, label %for.end
|
||||
+
|
||||
+for.end: ; preds = %for.body
|
||||
+ ret void
|
||||
+}
|
||||
diff --git a/test/Transforms/IndVarSimplify/lftr-reuse.ll b/test/Transforms/IndVarSimplify/lftr-reuse.ll
|
||||
index 14ae9738696..509d662b767 100644
|
||||
--- a/test/Transforms/IndVarSimplify/lftr-reuse.ll
|
||||
+++ b/test/Transforms/IndVarSimplify/lftr-reuse.ll
|
||||
@@ -67,11 +67,9 @@ define void @expandOuterRecurrence(i32 %arg) nounwind {
|
||||
; CHECK-NEXT: [[CMP1:%.*]] = icmp slt i32 0, [[SUB1]]
|
||||
; CHECK-NEXT: br i1 [[CMP1]], label [[OUTER_PREHEADER:%.*]], label [[EXIT:%.*]]
|
||||
; CHECK: outer.preheader:
|
||||
-; CHECK-NEXT: [[TMP0:%.*]] = add i32 [[ARG]], -1
|
||||
; CHECK-NEXT: br label [[OUTER:%.*]]
|
||||
; CHECK: outer:
|
||||
-; CHECK-NEXT: [[INDVARS_IV:%.*]] = phi i32 [ [[TMP0]], [[OUTER_PREHEADER]] ], [ [[INDVARS_IV_NEXT:%.*]], [[OUTER_INC:%.*]] ]
|
||||
-; CHECK-NEXT: [[I:%.*]] = phi i32 [ [[I_INC:%.*]], [[OUTER_INC]] ], [ 0, [[OUTER_PREHEADER]] ]
|
||||
+; CHECK-NEXT: [[I:%.*]] = phi i32 [ [[I_INC:%.*]], [[OUTER_INC:%.*]] ], [ 0, [[OUTER_PREHEADER]] ]
|
||||
; CHECK-NEXT: [[SUB2:%.*]] = sub nsw i32 [[ARG]], [[I]]
|
||||
; CHECK-NEXT: [[SUB3:%.*]] = sub nsw i32 [[SUB2]], 1
|
||||
; CHECK-NEXT: [[CMP2:%.*]] = icmp slt i32 0, [[SUB3]]
|
||||
@@ -81,14 +79,13 @@ define void @expandOuterRecurrence(i32 %arg) nounwind {
|
||||
; CHECK: inner:
|
||||
; CHECK-NEXT: [[J:%.*]] = phi i32 [ 0, [[INNER_PH]] ], [ [[J_INC:%.*]], [[INNER]] ]
|
||||
; CHECK-NEXT: [[J_INC]] = add nuw nsw i32 [[J]], 1
|
||||
-; CHECK-NEXT: [[EXITCOND:%.*]] = icmp ne i32 [[J_INC]], [[INDVARS_IV]]
|
||||
+; CHECK-NEXT: [[EXITCOND:%.*]] = icmp ne i32 [[J_INC]], [[SUB3]]
|
||||
; CHECK-NEXT: br i1 [[EXITCOND]], label [[INNER]], label [[OUTER_INC_LOOPEXIT:%.*]]
|
||||
; CHECK: outer.inc.loopexit:
|
||||
; CHECK-NEXT: br label [[OUTER_INC]]
|
||||
; CHECK: outer.inc:
|
||||
; CHECK-NEXT: [[I_INC]] = add nuw nsw i32 [[I]], 1
|
||||
-; CHECK-NEXT: [[INDVARS_IV_NEXT]] = add i32 [[INDVARS_IV]], -1
|
||||
-; CHECK-NEXT: [[EXITCOND1:%.*]] = icmp ne i32 [[I_INC]], [[TMP0]]
|
||||
+; CHECK-NEXT: [[EXITCOND1:%.*]] = icmp ne i32 [[I_INC]], [[SUB1]]
|
||||
; CHECK-NEXT: br i1 [[EXITCOND1]], label [[OUTER]], label [[EXIT_LOOPEXIT:%.*]]
|
||||
; CHECK: exit.loopexit:
|
||||
; CHECK-NEXT: br label [[EXIT]]
|
||||
diff --git a/test/Transforms/IndVarSimplify/udiv.ll b/test/Transforms/IndVarSimplify/udiv.ll
|
||||
index b3f2c2a6a66..3530343ef4a 100644
|
||||
--- a/test/Transforms/IndVarSimplify/udiv.ll
|
||||
+++ b/test/Transforms/IndVarSimplify/udiv.ll
|
||||
@@ -133,6 +133,7 @@ declare i32 @printf(i8* nocapture, ...) nounwind
|
||||
; CHECK-LABEL: @foo(
|
||||
; CHECK: for.body.preheader:
|
||||
; CHECK-NOT: udiv
|
||||
+; CHECK: for.body:
|
||||
|
||||
define void @foo(double* %p, i64 %n) nounwind {
|
||||
entry:
|
||||
--
|
||||
2.18.0
|
||||
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/files:"
|
||||
|
||||
SRC_URI_append_intel-x86-common = " \
|
||||
file://0001-dont-export-targets-for-binaries.patch \
|
||||
file://BasicBlockUtils-Add-metadata-fixing-in-SplitBlockPre.patch;patchdir=llvm \
|
||||
file://IndVarSimplify-Do-not-use-SCEV-expander-for-IVCount-.patch;patchdir=llvm \
|
||||
git://github.com/KhronosGroup/SPIRV-LLVM-Translator.git;protocol=https;branch=llvm_release_90;destsuffix=git/llvm/projects/llvm-spirv;name=spirv \
|
||||
file://0001-skip-building-tests.patch;patchdir=llvm/projects/llvm-spirv \
|
||||
"
|
||||
|
||||
SRCREV_spirv = "70420631144a6a25613ae37178f2cc1d3607b65b"
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
From 8c330d0cb5167612296801f0202b0de35e9ca88d Mon Sep 17 00:00:00 2001
|
||||
From: Dongwon Kim <dongwon.kim@intel.com>
|
||||
Date: Sat, 21 Aug 2021 16:09:39 -0700
|
||||
Subject: [PATCH 2/5] Build not able to locate cpp_generation_tool.
|
||||
|
||||
Upstream-Status: Inappropriate [oe specific]
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
|
||||
---
|
||||
shared/source/built_ins/kernels/CMakeLists.txt | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
Index: git/shared/source/built_ins/kernels/CMakeLists.txt
|
||||
===================================================================
|
||||
--- git.orig/shared/source/built_ins/kernels/CMakeLists.txt
|
||||
+++ git/shared/source/built_ins/kernels/CMakeLists.txt
|
||||
@@ -122,9 +122,9 @@ function(compile_builtin core_type platf
|
||||
endif()
|
||||
add_custom_command(
|
||||
OUTPUT ${OUTPUT_FILE_CPP}
|
||||
- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME}
|
||||
+ COMMAND cpp_generate_tool --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
- DEPENDS ${OUTPUT_FILES_BINARIES} $<TARGET_FILE:cpp_generate_tool>
|
||||
+ DEPENDS ${OUTPUT_FILES_BINARIES} cpp_generate_tool
|
||||
)
|
||||
list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}")
|
||||
else()
|
||||
@@ -176,9 +176,9 @@ function(generate_cpp_spirv builtin)
|
||||
endif()
|
||||
add_custom_command(
|
||||
OUTPUT ${OUTPUT_FILE_CPP}
|
||||
- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME}
|
||||
+ COMMAND cpp_generate_tool --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
- DEPENDS ${GENERATED_SPV_INPUT} $<TARGET_FILE:cpp_generate_tool>
|
||||
+ DEPENDS ${GENERATED_SPV_INPUT} cpp_generate_tool
|
||||
)
|
||||
set(OUTPUT_LIST_CPP_FILES ${OUTPUT_LIST_CPP_FILES} ${OUTPUT_FILE_CPP} PARENT_SCOPE)
|
||||
else()
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
From 0006db5f55a9f08bd3452558a53704cd3bbb790f Mon Sep 17 00:00:00 2001
|
||||
From: Dongwon Kim <dongwon.kim@intel.com>
|
||||
Date: Wed, 2 Mar 2022 15:52:45 -0800
|
||||
Subject: [PATCH 3/5] external ocloc
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
|
||||
---
|
||||
cmake/ocloc_cmd_prefix.cmake | 14 ++++++++------
|
||||
1 file changed, 8 insertions(+), 6 deletions(-)
|
||||
|
||||
Index: git/cmake/ocloc_cmd_prefix.cmake
|
||||
===================================================================
|
||||
--- git.orig/cmake/ocloc_cmd_prefix.cmake
|
||||
+++ git/cmake/ocloc_cmd_prefix.cmake
|
||||
@@ -4,13 +4,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
-if(WIN32)
|
||||
- set(ocloc_cmd_prefix ocloc)
|
||||
-else()
|
||||
- if(DEFINED NEO__IGC_LIBRARY_PATH)
|
||||
- set(ocloc_cmd_prefix ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NEO__IGC_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib>" $<TARGET_FILE:ocloc>)
|
||||
+if(NOT DEFINED ocloc_cmd_prefix)
|
||||
+ if(WIN32)
|
||||
+ set(ocloc_cmd_prefix ocloc)
|
||||
else()
|
||||
- set(ocloc_cmd_prefix ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib>" $<TARGET_FILE:ocloc>)
|
||||
+ if(DEFINED NEO__IGC_LIBRARY_PATH)
|
||||
+ set(ocloc_cmd_prefix LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NEO__IGC_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>)
|
||||
+ else()
|
||||
+ set(ocloc_cmd_prefix LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>)
|
||||
+ endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
From 2475dfc1350f73a243c9fc223a9f06af85321d56 Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Tue, 2 Jul 2019 08:36:34 +0800
|
||||
Subject: [PATCH] don't use LD_LIBRARY_PATH for native offline compiler
|
||||
|
||||
Let us supply the correct path for it to be able to find the correct
|
||||
libraries.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
|
||||
---
|
||||
runtime/built_ins/kernels/CMakeLists.txt | 2 +-
|
||||
runtime/scheduler/scheduler_binary.cmake | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/runtime/built_ins/kernels/CMakeLists.txt b/runtime/built_ins/kernels/CMakeLists.txt
|
||||
index 5dc9fe1b..e258847d 100644
|
||||
--- a/runtime/built_ins/kernels/CMakeLists.txt
|
||||
+++ b/runtime/built_ins/kernels/CMakeLists.txt
|
||||
@@ -51,7 +51,7 @@ function(compile_builtin gen_type platform_type builtin)
|
||||
if(DEFINED IGDRCL__IGC_LIBRARY_PATH)
|
||||
set(cloc_cmd_prefix LD_LIBRARY_PATH=${IGDRCL__IGC_LIBRARY_PATH} $<TARGET_FILE:ocloc>)
|
||||
else()
|
||||
- set(cloc_cmd_prefix LD_LIBRARY_PATH=$<TARGET_FILE_DIR:ocloc> $<TARGET_FILE:ocloc>)
|
||||
+ set(cloc_cmd_prefix ocloc)
|
||||
endif()
|
||||
endif()
|
||||
list(APPEND __cloc__options__ "-cl-kernel-arg-info")
|
||||
diff --git a/runtime/scheduler/scheduler_binary.cmake b/runtime/scheduler/scheduler_binary.cmake
|
||||
index 1b12592b..ed9f375d 100644
|
||||
--- a/runtime/scheduler/scheduler_binary.cmake
|
||||
+++ b/runtime/scheduler/scheduler_binary.cmake
|
||||
@@ -37,7 +37,7 @@ function(compile_kernel target gen_type platform_type kernel)
|
||||
if(DEFINED IGDRCL__IGC_LIBRARY_PATH)
|
||||
set(cloc_cmd_prefix LD_LIBRARY_PATH=${IGDRCL__IGC_LIBRARY_PATH} $<TARGET_FILE:ocloc>)
|
||||
else()
|
||||
- set(cloc_cmd_prefix LD_LIBRARY_PATH=$<TARGET_FILE_DIR:ocloc> $<TARGET_FILE:ocloc>)
|
||||
+ set(cloc_cmd_prefix ocloc)
|
||||
endif()
|
||||
endif()
|
||||
list(APPEND __cloc__options__ "-cl-kernel-arg-info")
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
SUMMARY = "The Intel(R) Graphics Compute Runtime for OpenCL(TM)"
|
||||
DESCRIPTION = "The Intel(R) Graphics Compute Runtime for OpenCL(TM) \
|
||||
is an open source project to converge Intel's development efforts \
|
||||
on OpenCL(TM) compute stacks supporting the GEN graphics hardware \
|
||||
architecture."
|
||||
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=ae27f47fd6755510247c19e547e4c804 \
|
||||
file://third_party/opencl_headers/LICENSE;md5=dcefc90f4c3c689ec0c2489064e7273b"
|
||||
|
||||
SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https \
|
||||
"
|
||||
|
||||
SRC_URI_append_class-target = " \
|
||||
file://dont-use-ld-library-path.patch \
|
||||
"
|
||||
|
||||
SRCREV = "cb4e5576cb5414ab3af54c49819a4ced305b965b"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS += " intel-graphics-compiler gmmlib clang"
|
||||
DEPENDS_append_class-target = " intel-compute-runtime-native"
|
||||
|
||||
RDEPENDS_${PN} += " intel-graphics-compiler gmmlib"
|
||||
|
||||
inherit cmake pkgconfig
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST_libc-musl = "null"
|
||||
|
||||
EXTRA_OECMAKE = " \
|
||||
-DBUILD_TYPE=Release \
|
||||
-DSKIP_UNIT_TESTS=1 \
|
||||
-DCCACHE_ALLOWED=FALSE \
|
||||
"
|
||||
|
||||
LDFLAGS_append_class-native = " -fuse-ld=lld"
|
||||
TOOLCHAIN_class-native = "clang"
|
||||
|
||||
FILES_${PN} += "${libdir}/intel-opencl/libigdrcl.so"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
|
||||
EXCLUDE_FROM_WORLD = "1"
|
||||
|
|
@ -1,61 +0,0 @@
|
|||
SUMMARY = "The Intel(R) Graphics Compute Runtime for OpenCL(TM)"
|
||||
DESCRIPTION = "The Intel(R) Graphics Compute Runtime for OpenCL(TM) \
|
||||
is an open source project to converge Intel's development efforts \
|
||||
on OpenCL(TM) compute stacks supporting the GEN graphics hardware \
|
||||
architecture."
|
||||
|
||||
LICENSE = "MIT & Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eca6ec6997e18db166db7109cdbe611c \
|
||||
file://third_party/opencl_headers/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
|
||||
|
||||
SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https;branch=releases/25.13 \
|
||||
file://0002-Build-not-able-to-locate-cpp_generation_tool.patch \
|
||||
file://0003-external-ocloc.patch \
|
||||
"
|
||||
|
||||
SRCREV = "a9961bdfaa07250fd52ff930bf8f31fb4e3b7799"
|
||||
|
||||
DEPENDS += " intel-graphics-compiler gmmlib libva qemu-native"
|
||||
|
||||
RDEPENDS:${PN} += " intel-graphics-compiler gmmlib"
|
||||
|
||||
inherit cmake pkgconfig qemu
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
EXTRA_OECMAKE = " \
|
||||
-DIGC_DIR=${STAGING_INCDIR}/igc \
|
||||
-DBUILD_TYPE=Release \
|
||||
-DSKIP_UNIT_TESTS=1 \
|
||||
-DCCACHE_ALLOWED=FALSE \
|
||||
-DNEO_DISABLE_LD_LLD=ON \
|
||||
-DNEO_DISABLE_LD_GOLD=ON \
|
||||
"
|
||||
|
||||
EXTRA_OECMAKE:append:class-target = " \
|
||||
-Docloc_cmd_prefix=ocloc \
|
||||
-DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ??= ""
|
||||
PACKAGECONFIG[levelzero] = "-DBUILD_WITH_L0=ON, -DBUILD_WITH_L0=OFF, level-zero"
|
||||
|
||||
do_configure:prepend:class-target () {
|
||||
# Write out a qemu wrapper that will be used by cmake.
|
||||
qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${B}/bin'),d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
|
||||
cat > ${WORKDIR}/qemuwrapper << EOF
|
||||
#!/bin/sh
|
||||
$qemu_binary "\$@"
|
||||
EOF
|
||||
chmod +x ${WORKDIR}/qemuwrapper
|
||||
}
|
||||
|
||||
FILES:${PN} += " \
|
||||
${libdir}/intel-opencl/libigdrcl.so \
|
||||
${libdir}/libocloc.so \
|
||||
"
|
||||
|
||||
FILES:${PN}-dev = "${includedir}"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
From 1b98a931c3bf8daccc48cd618335ff35e3d382da Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Tue, 12 Oct 2021 23:46:42 +0800
|
||||
Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS
|
||||
|
||||
Otherwise it starts failing with:
|
||||
|
||||
| ninja: error: 'IGC/VectorCompiler/lib/BiF/opt', needed by 'IGC/VectorCompiler/lib/BiF/VCBiFPrintfOCL32.opt.bc', missing and no known rule to make it
|
||||
|
||||
We don't need to explicitly make sure opt is built when
|
||||
using prebuilt binaries.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
Index: git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
|
||||
===================================================================
|
||||
--- git.orig/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
|
||||
+++ git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
|
||||
@@ -121,7 +121,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_
|
||||
COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_OPT_BC_NAME}"
|
||||
COMMAND CMCLTranslatorTool ${OPT_OPAQUE_ARG} -o ${BIF_CMCL_BC_PATH} ${BIF_CLANG_BC_PATH_FINAL}
|
||||
COMMAND ${LLVM_OPT_EXE} ${OPT_OPAQUE_ARG} --O2 -o ${BIF_OPT_BC_PATH} ${BIF_CMCL_BC_PATH}
|
||||
- DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${OPT_BC_DEPENDS})
|
||||
+ DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL})
|
||||
|
||||
add_custom_target(${TARGET_NAME}
|
||||
DEPENDS ${BIF_OPT_BC_PATH}
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
From 048512728eea53b3772a3f80ac9743bfc462487e Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Thu, 2 Jan 2025 15:59:27 +0530
|
||||
Subject: [PATCH] Build not able to locate BiFManager-bin
|
||||
|
||||
Upstream-Status: Inappropriate [oe specific]
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
---
|
||||
IGC/BiFModule/CMakeLists.txt | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
Index: git/IGC/BiFModule/CMakeLists.txt
|
||||
===================================================================
|
||||
--- git.orig/IGC/BiFModule/CMakeLists.txt
|
||||
+++ git/IGC/BiFModule/CMakeLists.txt
|
||||
@@ -655,8 +655,8 @@ set(IGC_BUILD__PROJ__BiFModuleCache_OCL
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc"
|
||||
- COMMAND $<TARGET_FILE:BiFManager-bin> "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h"
|
||||
- DEPENDS "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc"$<TARGET_FILE:BiFManager-bin>
|
||||
+ COMMAND BiFManager-bin "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h"
|
||||
+ DEPENDS "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" BiFManager-bin
|
||||
COMMENT "BiF: ${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc: Spliting output .bc."
|
||||
COMMAND_EXPAND_LISTS
|
||||
)
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
From 251e2854dd206ebf66e5908d3277e4585fe2a63b Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Mon, 9 Jan 2023 11:43:05 +0800
|
||||
Subject: [PATCH] external/SPIRV-Tools: change path to tools and headers
|
||||
|
||||
We clone the SPIRV headers and tools in a different directory to ensure
|
||||
file path substitutions take place.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
external/SPIRV-Tools/CMakeLists.txt | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
Index: git/external/SPIRV-Tools/CMakeLists.txt
|
||||
===================================================================
|
||||
--- git.orig/external/SPIRV-Tools/CMakeLists.txt
|
||||
+++ git/external/SPIRV-Tools/CMakeLists.txt
|
||||
@@ -45,8 +45,8 @@ else() #By default use build from source
|
||||
message(STATUS "[SPIRV-Tools] : Building from source")
|
||||
message(STATUS "[SPIRV-Tools] : Current source dir: ${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
|
||||
- set(SPIRV-Headers_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../SPIRV-Headers") # used in subdirectory
|
||||
- set(SPIRV-Tools_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../SPIRV-Tools")
|
||||
+ set(SPIRV-Headers_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../SPIRV-Headers") # used in subdirectory
|
||||
+ set(SPIRV-Tools_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../SPIRV-Tools")
|
||||
|
||||
set(SPIRV-Tools_OUTPUT_DIR "${IGC_OPTION__OUTPUT_DIR}/external/SPIRV-Tools/build")
|
||||
set(IGC_BUILD__SPIRV-Headers_DIR "${SPIRV-Headers_SOURCE_DIR}")
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
From 1641dc87b2ed6b6b87b2cef824e4d66da65b0b30 Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Thu, 19 May 2022 22:50:09 +0800
|
||||
Subject: [PATCH] fix tblgen
|
||||
|
||||
Upstream-Status: Inappropriate [OE specific]
|
||||
---
|
||||
IGC/cmake/igc_llvm.cmake | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake
|
||||
index b708cc904..fe4668890 100644
|
||||
--- a/IGC/cmake/igc_llvm.cmake
|
||||
+++ b/IGC/cmake/igc_llvm.cmake
|
||||
@@ -53,7 +53,7 @@ else()
|
||||
set(LLVM_OPT_EXE "opt" CACHE STRING "")
|
||||
|
||||
set(LLVM_TABLEGEN_EXE "llvm-tblgen")
|
||||
- if(CMAKE_CROSSCOMPILING)
|
||||
+ if(TRUE)
|
||||
if(DEFINED LLVM_TABLEGEN)
|
||||
set(LLVM_TABLEGEN_EXE ${LLVM_TABLEGEN})
|
||||
else()
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
From 4e903a6914d5124d616cf085e30e8cbaa20afb77 Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Wed, 12 Jun 2019 14:10:23 +0800
|
||||
Subject: [PATCH 1/4] skip execution of ElfPackager
|
||||
|
||||
ElfPackager adds the ability to convert llvm bitcode into elf files for
|
||||
easier partitioning. Skip for now until we start building a native
|
||||
version for this.
|
||||
|
||||
Upstream-Status: Inappropriate [configuration specific]
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
IGC/ElfPackager/CMakeLists.txt | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/IGC/ElfPackager/CMakeLists.txt b/IGC/ElfPackager/CMakeLists.txt
|
||||
index d9487aeb..bc728ada 100644
|
||||
--- a/IGC/ElfPackager/CMakeLists.txt
|
||||
+++ b/IGC/ElfPackager/CMakeLists.txt
|
||||
@@ -71,10 +71,10 @@ include_directories (
|
||||
${IGC_SOURCE_DIR}/AdaptorOCL/CLElfLib/
|
||||
)
|
||||
|
||||
-add_custom_command(TARGET ${IGC_BUILD__PROJ__ElfPackager}
|
||||
- POST_BUILD
|
||||
- COMMAND $<TARGET_FILE:${IGC_BUILD__PROJ__ElfPackager}> -includeSizet -funcList ${CMAKE_CURRENT_SOURCE_DIR}/function_bin.txt ${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc ${IGC_BUILD__BIF_DIR}/igdclbif.bin
|
||||
- )
|
||||
+#add_custom_command(TARGET ${IGC_BUILD__PROJ__ElfPackager}
|
||||
+# POST_BUILD
|
||||
+# COMMAND $<TARGET_FILE:${IGC_BUILD__PROJ__ElfPackager}> -includeSizet -funcList ${CMAKE_CURRENT_SOURCE_DIR}/function_bin.txt ${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc ${IGC_BUILD__BIF_DIR}/igdclbif.bin
|
||||
+# )
|
||||
|
||||
|
||||
add_dependencies("${IGC_BUILD__PROJ__ElfPackager}" "${IGC_BUILD__PROJ__BiFModule_OCL}")
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
From 15a23e549636626cf32b062a5308a29cc53ce360 Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Wed, 21 Aug 2019 17:29:00 +0800
|
||||
Subject: [PATCH 2/4] comment out dump functions
|
||||
|
||||
Otherwise it leads to errors when linking with lld:
|
||||
|
||||
| ld.lld: error: undefined symbol: llvm::Value::dump() const
|
||||
| >>> referenced by PreRAScheduler.cpp:252 (build/tmp/work/x86_64-linux/intel-graphics-compiler-native/1.0.10-r0/git/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp:252)
|
||||
| >>> PreRAScheduler.cpp.o:(IGC::PreRAScheduler::dumpDDGContents()) in archive IGC/Release/libCompiler.a
|
||||
|
|
||||
| ld.lld: error: undefined symbol: llvm::Value::dump() const
|
||||
| >>> referenced by PreRAScheduler.cpp:855 (build/tmp/work/x86_64-linux/intel-graphics-compiler-native/1.0.10-r0/git/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp:855)
|
||||
| >>> PreRAScheduler.cpp.o:(IGC::PreRAScheduler::dumpPriorityQueueContents()) in archive IGC/Release/libCompiler.a
|
||||
|
|
||||
| ld.lld: error: undefined symbol: llvm::Value::dump() const
|
||||
| >>> referenced by PreRAScheduler.cpp:876 (build/tmp/work/x86_64-linux/intel-graphics-compiler-native/1.0.10-r0/git/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp:876)
|
||||
| >>> PreRAScheduler.cpp.o:(IGC::PreRAScheduler::dumpPriorityQueueContents()) in archive IGC/Release/libCompiler.a
|
||||
|
|
||||
| ld.lld: error: undefined symbol: llvm::Value::dump() const
|
||||
| >>> referenced by PreRAScheduler.cpp:888 (build/tmp/work/x86_64-linux/intel-graphics-compiler-native/1.0.10-r0/git/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp:888)
|
||||
| >>> PreRAScheduler.cpp.o:(IGC::PreRAScheduler::dumpPriorityQueueContents()) in archive IGC/Release/libCompiler.a
|
||||
|
|
||||
| ld.lld: error: undefined symbol: llvm::Value::dump() const
|
||||
| >>> referenced by PreRAScheduler.cpp:902 (build/tmp/work/x86_64-linux/intel-graphics-compiler-native/1.0.10-r0/git/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp:902)
|
||||
| >>> PreRAScheduler.cpp.o:(IGC::PreRAScheduler::dumpPriorityQueueContents()) in archive IGC/Release/libCompiler.a
|
||||
| clang-8: error: linker command failed with exit code 1 (use -v to see invocation)
|
||||
| ninja: build stopped: subcommand failed.
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/intel/intel-graphics-compiler/pull/105]
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
IGC/Compiler/CISACodeGen/PreRAScheduler.cpp | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp b/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp
|
||||
index 62e89c0c..ba01af01 100644
|
||||
--- a/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp
|
||||
+++ b/IGC/Compiler/CISACodeGen/PreRAScheduler.cpp
|
||||
@@ -178,8 +178,10 @@ namespace IGC {
|
||||
AU.addRequired<RegisterEstimator>();
|
||||
}
|
||||
|
||||
+#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
|
||||
void dumpDDGContents();
|
||||
void dumpPriorityQueueContents();
|
||||
+#endif
|
||||
|
||||
void clearDDG();
|
||||
|
||||
@@ -228,6 +230,7 @@ IGC_INITIALIZE_PASS_DEPENDENCY(RegisterEstimator)
|
||||
IGC_INITIALIZE_PASS_DEPENDENCY(DominatorTreeWrapperPass)
|
||||
IGC_INITIALIZE_PASS_END(PreRAScheduler, PASS_FLAG, PASS_DESC, PASS_CFG_ONLY, PASS_ANALYSIS)
|
||||
|
||||
+#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
|
||||
void PreRAScheduler::dumpDDGContents()
|
||||
{
|
||||
IGC_SET_FLAG_VALUE(PrintToConsole, 1);
|
||||
@@ -259,6 +262,7 @@ void PreRAScheduler::dumpDDGContents()
|
||||
|
||||
IGC_SET_FLAG_VALUE(PrintToConsole, 0);
|
||||
}
|
||||
+#endif
|
||||
|
||||
void PreRAScheduler::clearDDG()
|
||||
{
|
||||
@@ -841,6 +845,7 @@ bool PreRAScheduler::ScheduleReadyNodes(
|
||||
return Changed;
|
||||
}
|
||||
|
||||
+#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
|
||||
void PreRAScheduler::dumpPriorityQueueContents()
|
||||
{
|
||||
llvm::PriorityQueue<Node*, std::vector<Node*>, PreRAScheduler::OrderByLatency> longLatencyQueueCopy = longLatencyDelaySortedReadyQueue;
|
||||
@@ -912,6 +917,7 @@ void PreRAScheduler::dumpPriorityQueueContents()
|
||||
|
||||
IGC_SET_FLAG_VALUE(PrintToConsole, 0);
|
||||
}
|
||||
+#endif
|
||||
|
||||
bool PreRAScheduler::runOnFunction(Function& F) {
|
||||
CodeGenContext* ctx = getAnalysis<CodeGenContextWrapper>().getCodeGenContext();
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
|
@ -0,0 +1,405 @@
|
|||
From 598038626dd2c10b96308347718f26cfa3dc509c Mon Sep 17 00:00:00 2001
|
||||
From: "Wesierski, Lukasz" <lukasz.wesierski@intel.com>
|
||||
Date: Mon, 9 Sep 2019 09:11:20 -0700
|
||||
Subject: [PATCH 4/4] Fix for buildbreak when using clang-9 compiler
|
||||
|
||||
Fixes #106
|
||||
Fxies #111
|
||||
|
||||
Change-Id: I291bf03c31b1786a00b8bc2c6d23c5adb8b72e73
|
||||
|
||||
Upstream-Status: Backport [https://github.com/intel/intel-graphics-compiler/commit/a332238b46e9fa9e06265d18eb877d095015e6fb]
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVEntry.h | 4 +
|
||||
.../SPIRV/libSPIRV/SPIRVInstruction.h | 18 +--
|
||||
IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVModule.cpp | 136 +++++++++---------
|
||||
IGC/AdaptorOCL/cif/cif/export/registry.h | 3 +-
|
||||
IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp | 4 +-
|
||||
visa/CISA.l | 2 +-
|
||||
visa/CMakeLists.txt | 6 +-
|
||||
7 files changed, 89 insertions(+), 84 deletions(-)
|
||||
|
||||
diff --git a/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVEntry.h b/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVEntry.h
|
||||
index 7a2ba855..307ba3f3 100644
|
||||
--- a/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVEntry.h
|
||||
+++ b/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVEntry.h
|
||||
@@ -129,8 +129,12 @@ class SPIRVExtInst;
|
||||
void decode(std::istream &I) { getDecoder(I) >> x >> y;}
|
||||
#define _SPIRV_DEF_DEC3(x,y,z) \
|
||||
void decode(std::istream &I) { getDecoder(I) >> x >> y >> z;}
|
||||
+#define _SPIRV_DEF_DEC3_OVERRIDE(x,y,z) \
|
||||
+ void decode(std::istream &I) override { getDecoder(I) >> x >> y >> z;}
|
||||
#define _SPIRV_DEF_DEC4(x,y,z,u) \
|
||||
void decode(std::istream &I) { getDecoder(I) >> x >> y >> z >> u;}
|
||||
+#define _SPIRV_DEF_DEC4_OVERRIDE(x,y,z,u) \
|
||||
+ void decode(std::istream &I) override { getDecoder(I) >> x >> y >> z >> u;}
|
||||
#define _SPIRV_DEF_DEC5(x,y,z,u,v) \
|
||||
void decode(std::istream &I) { getDecoder(I) >> x >> y >> z >> u >> v;}
|
||||
#define _SPIRV_DEF_DEC6(x,y,z,u,v,w) \
|
||||
diff --git a/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVInstruction.h b/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVInstruction.h
|
||||
index 9f4e9d1f..bb85fd04 100644
|
||||
--- a/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVInstruction.h
|
||||
+++ b/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVInstruction.h
|
||||
@@ -727,10 +727,10 @@ public:
|
||||
return getValue(ConditionId);
|
||||
}
|
||||
SPIRVLabel *getTrueLabel() const {
|
||||
- return get<SPIRVLabel>(TrueLabelId);
|
||||
+ return SPIRVEntry::get<SPIRVLabel>(TrueLabelId);
|
||||
}
|
||||
SPIRVLabel *getFalseLabel() const {
|
||||
- return get<SPIRVLabel>(FalseLabelId);
|
||||
+ return SPIRVEntry::get<SPIRVLabel>(FalseLabelId);
|
||||
}
|
||||
protected:
|
||||
void setWordCount(SPIRVWord TheWordCount) {
|
||||
@@ -940,7 +940,7 @@ public:
|
||||
SPIRVEntry::setWordCount(TheWordCount);
|
||||
LoopControlParameters.resize(TheWordCount - FixedWordCount);
|
||||
}
|
||||
- _SPIRV_DEF_DEC4(MergeBlock, ContinueTarget, LoopControl,
|
||||
+ _SPIRV_DEF_DEC4_OVERRIDE(MergeBlock, ContinueTarget, LoopControl,
|
||||
LoopControlParameters)
|
||||
|
||||
protected:
|
||||
@@ -1120,7 +1120,7 @@ public:
|
||||
|
||||
SPIRVFunctionCallGeneric(SPIRVModule *BM, SPIRVWord ResId, SPIRVType *TheType,
|
||||
const std::vector<SPIRVWord> &TheArgs)
|
||||
- : SPIRVInstruction(TheArgs.size() + FixedWordCount, OC, TheType, ResId,
|
||||
+ : SPIRVInstruction(TheArgs.size() + FixedWordCount, OC, TheType, ResId, NULL,
|
||||
BM),
|
||||
Args(TheArgs) {}
|
||||
SPIRVFunctionCallGeneric():SPIRVInstruction(OC) {}
|
||||
@@ -1152,7 +1152,7 @@ class SPIRVFunctionCall:
|
||||
public:
|
||||
SPIRVFunctionCall():FunctionId(SPIRVID_INVALID) {}
|
||||
SPIRVFunction *getFunction()const {
|
||||
- return get<SPIRVFunction>(FunctionId);
|
||||
+ return SPIRVEntry::get<SPIRVFunction>(FunctionId);
|
||||
}
|
||||
_SPIRV_DEF_DEC4(Type, Id, FunctionId, Args)
|
||||
void validate()const;
|
||||
@@ -1169,8 +1169,8 @@ public:
|
||||
const std::vector<SPIRVWord>& TheArgs,
|
||||
SPIRVBasicBlock* BB);
|
||||
SPIRVFunctionPointerCallINTEL() : CalledValueId(SPIRVID_INVALID) {}
|
||||
- SPIRVValue* getCalledValue() const { return get<SPIRVValue>(CalledValueId); }
|
||||
- _SPIRV_DEF_DEC4(Type, Id, CalledValueId, Args)
|
||||
+ SPIRVValue* getCalledValue() const { return SPIRVEntry::get<SPIRVValue>(CalledValueId); }
|
||||
+ _SPIRV_DEF_DEC4_OVERRIDE(Type, Id, CalledValueId, Args)
|
||||
void validate() const override;
|
||||
bool isOperandLiteral(unsigned Index) const { return false; }
|
||||
CapVec getRequiredCapability() const override {
|
||||
@@ -1188,8 +1188,8 @@ public:
|
||||
SPIRVFunctionPointerINTEL(SPIRVId TheId, SPIRVType* TheType,
|
||||
SPIRVFunction* TheFunction, SPIRVBasicBlock* BB);
|
||||
SPIRVFunctionPointerINTEL() : SPIRVInstruction(OC), TheFunction(SPIRVID_INVALID) {}
|
||||
- SPIRVFunction* getFunction() const { return get<SPIRVFunction>(TheFunction); }
|
||||
- _SPIRV_DEF_DEC3(Type, Id, TheFunction)
|
||||
+ SPIRVFunction* getFunction() const { return SPIRVEntry::get<SPIRVFunction>(TheFunction); }
|
||||
+ _SPIRV_DEF_DEC3_OVERRIDE(Type, Id, TheFunction)
|
||||
void validate() const override;
|
||||
bool isOperandLiteral(unsigned Index) const { return false; }
|
||||
CapVec getRequiredCapability() const override {
|
||||
diff --git a/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVModule.cpp b/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVModule.cpp
|
||||
index 353341b5..74ab6e93 100644
|
||||
--- a/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVModule.cpp
|
||||
+++ b/IGC/AdaptorOCL/SPIRV/libSPIRV/SPIRVModule.cpp
|
||||
@@ -94,126 +94,126 @@ public:
|
||||
virtual ~SPIRVModuleImpl();
|
||||
|
||||
// Object query functions
|
||||
- bool exist(SPIRVId) const;
|
||||
- bool exist(SPIRVId, SPIRVEntry **) const;
|
||||
+ bool exist(SPIRVId) const override;
|
||||
+ bool exist(SPIRVId, SPIRVEntry **) const override;
|
||||
SPIRVId getId(SPIRVId Id = SPIRVID_INVALID, unsigned Increment = 1);
|
||||
- virtual SPIRVEntry *getEntry(SPIRVId Id) const;
|
||||
+ virtual SPIRVEntry *getEntry(SPIRVId Id) const override;
|
||||
virtual void addUnknownStructField(
|
||||
- SPIRVTypeStruct*, unsigned idx, SPIRVId id);
|
||||
- virtual void resolveUnknownStructFields();
|
||||
- bool hasDebugInfo() const
|
||||
+ SPIRVTypeStruct*, unsigned idx, SPIRVId id) override;
|
||||
+ virtual void resolveUnknownStructFields() override;
|
||||
+ bool hasDebugInfo() const override
|
||||
{
|
||||
return getCompilationUnit() != nullptr;
|
||||
}
|
||||
|
||||
// Error handling functions
|
||||
- SPIRVErrorLog &getErrorLog() { return ErrLog;}
|
||||
- SPIRVErrorCode getError(std::string &ErrMsg) { return ErrLog.getError(ErrMsg);}
|
||||
+ SPIRVErrorLog &getErrorLog() override { return ErrLog;}
|
||||
+ SPIRVErrorCode getError(std::string &ErrMsg) override { return ErrLog.getError(ErrMsg);}
|
||||
|
||||
// Module query functions
|
||||
- SPIRVAddressingModelKind getAddressingModel() { return AddrModel;}
|
||||
- SPIRVExtInstSetKind getBuiltinSet(SPIRVId SetId) const;
|
||||
- const SPIRVCapSet &getCapability() const { return CapSet;}
|
||||
- const std::string &getCompileFlag() const { return CompileFlag;}
|
||||
- std::string &getCompileFlag() { return CompileFlag;}
|
||||
- void setCompileFlag(const std::string &options) { CompileFlag = options; }
|
||||
- bool isSpecConstant(SPIRVWord spec_id) const {
|
||||
+ SPIRVAddressingModelKind getAddressingModel() override { return AddrModel;}
|
||||
+ SPIRVExtInstSetKind getBuiltinSet(SPIRVId SetId) const override;
|
||||
+ const SPIRVCapSet &getCapability() const override { return CapSet;}
|
||||
+ const std::string &getCompileFlag() const override { return CompileFlag;}
|
||||
+ std::string &getCompileFlag() override { return CompileFlag;}
|
||||
+ void setCompileFlag(const std::string &options) override { CompileFlag = options; }
|
||||
+ bool isSpecConstant(SPIRVWord spec_id) const override {
|
||||
if(SCMap)
|
||||
return SCMap->find(spec_id) != SCMap->end();
|
||||
else
|
||||
return false;
|
||||
}
|
||||
- uint64_t getSpecConstant(SPIRVWord spec_id) {
|
||||
+ uint64_t getSpecConstant(SPIRVWord spec_id) override {
|
||||
spirv_assert(isSpecConstant(spec_id) && "Specialization constant was not specialized!");
|
||||
return SCMap->at(spec_id);
|
||||
}
|
||||
- void setSpecConstantMap(SPIRVSpecConstantMap *specConstants) { SCMap = specConstants; }
|
||||
- std::set<std::string> &getExtension() { return SPIRVExt;}
|
||||
- SPIRVFunction *getFunction(unsigned I) const { return FuncVec[I];}
|
||||
- SPIRVVariable *getVariable(unsigned I) const { return VariableVec[I];}
|
||||
- virtual SPIRVValue *getValue(SPIRVId TheId) const;
|
||||
- virtual std::vector<SPIRVValue *> getValues(const std::vector<SPIRVId>&)const;
|
||||
- virtual std::vector<SPIRVId> getIds(const std::vector<SPIRVEntry *>&)const;
|
||||
- virtual std::vector<SPIRVId> getIds(const std::vector<SPIRVValue *>&)const;
|
||||
- virtual SPIRVType *getValueType(SPIRVId TheId)const;
|
||||
+ void setSpecConstantMap(SPIRVSpecConstantMap *specConstants) override { SCMap = specConstants; }
|
||||
+ std::set<std::string> &getExtension() override { return SPIRVExt;}
|
||||
+ SPIRVFunction *getFunction(unsigned I) const override { return FuncVec[I];}
|
||||
+ SPIRVVariable *getVariable(unsigned I) const override { return VariableVec[I];}
|
||||
+ virtual SPIRVValue *getValue(SPIRVId TheId) const override;
|
||||
+ virtual std::vector<SPIRVValue *> getValues(const std::vector<SPIRVId>&)const override;
|
||||
+ virtual std::vector<SPIRVId> getIds(const std::vector<SPIRVEntry *>&)const override;
|
||||
+ virtual std::vector<SPIRVId> getIds(const std::vector<SPIRVValue *>&)const override;
|
||||
+ virtual SPIRVType *getValueType(SPIRVId TheId)const override;
|
||||
virtual std::vector<SPIRVType *> getValueTypes(const std::vector<SPIRVId>&)
|
||||
- const;
|
||||
- SPIRVMemoryModelKind getMemoryModel() { return MemoryModel;}
|
||||
- virtual SPIRVConstant* getLiteralAsConstant(unsigned Literal);
|
||||
- unsigned getNumEntryPoints(SPIRVExecutionModelKind EM) const {
|
||||
+ const override;
|
||||
+ SPIRVMemoryModelKind getMemoryModel() override { return MemoryModel;}
|
||||
+ virtual SPIRVConstant* getLiteralAsConstant(unsigned Literal) override;
|
||||
+ unsigned getNumEntryPoints(SPIRVExecutionModelKind EM) const override{
|
||||
auto Loc = EntryPointVec.find(EM);
|
||||
if (Loc == EntryPointVec.end())
|
||||
return 0;
|
||||
return Loc->second.size();
|
||||
}
|
||||
- SPIRVFunction *getEntryPoint(SPIRVExecutionModelKind EM, unsigned I) const {
|
||||
+ SPIRVFunction *getEntryPoint(SPIRVExecutionModelKind EM, unsigned I) const override {
|
||||
auto Loc = EntryPointVec.find(EM);
|
||||
if (Loc == EntryPointVec.end())
|
||||
return nullptr;
|
||||
spirv_assert(I < Loc->second.size());
|
||||
return get<SPIRVFunction>(Loc->second[I]);
|
||||
}
|
||||
- unsigned getNumFunctions() const { return FuncVec.size();}
|
||||
- unsigned getNumVariables() const { return VariableVec.size();}
|
||||
- SpvSourceLanguage getSourceLanguage(SPIRVWord * Ver = nullptr) const {
|
||||
+ unsigned getNumFunctions() const override { return FuncVec.size();}
|
||||
+ unsigned getNumVariables() const override { return VariableVec.size();}
|
||||
+ SpvSourceLanguage getSourceLanguage(SPIRVWord * Ver = nullptr) const override {
|
||||
if (Ver)
|
||||
*Ver = SrcLangVer;
|
||||
return SrcLang;
|
||||
}
|
||||
- std::set<std::string> &getSourceExtension() { return SrcExtension;}
|
||||
- bool isEntryPoint(SPIRVExecutionModelKind, SPIRVId EP) const;
|
||||
+ std::set<std::string> &getSourceExtension() override { return SrcExtension;}
|
||||
+ bool isEntryPoint(SPIRVExecutionModelKind, SPIRVId EP) const override;
|
||||
const std::string &getModuleProcessed() const { return ModuleProcessed; }
|
||||
- const std::vector<SPIRVString *> &getStringVec() const { return StringVec; }
|
||||
+ const std::vector<SPIRVString *> &getStringVec() const override { return StringVec; }
|
||||
|
||||
// Module changing functions
|
||||
- bool importBuiltinSet(const std::string &, SPIRVId *);
|
||||
- bool importBuiltinSetWithId(const std::string &, SPIRVId);
|
||||
- void optimizeDecorates();
|
||||
- void setAddressingModel(SPIRVAddressingModelKind AM) { AddrModel = AM;}
|
||||
- void setAlignment(SPIRVValue *, SPIRVWord);
|
||||
- void setMemoryModel(SPIRVMemoryModelKind MM) { MemoryModel = MM;}
|
||||
- void setName(SPIRVEntry *E, const std::string &Name);
|
||||
- void setSourceLanguage(SpvSourceLanguage Lang, SPIRVWord Ver) {
|
||||
+ bool importBuiltinSet(const std::string &, SPIRVId *) override;
|
||||
+ bool importBuiltinSetWithId(const std::string &, SPIRVId) override;
|
||||
+ void optimizeDecorates() override;
|
||||
+ void setAddressingModel(SPIRVAddressingModelKind AM) override { AddrModel = AM;}
|
||||
+ void setAlignment(SPIRVValue *, SPIRVWord) override;
|
||||
+ void setMemoryModel(SPIRVMemoryModelKind MM) override { MemoryModel = MM;}
|
||||
+ void setName(SPIRVEntry *E, const std::string &Name) override;
|
||||
+ void setSourceLanguage(SpvSourceLanguage Lang, SPIRVWord Ver) override {
|
||||
SrcLang = Lang;
|
||||
SrcLangVer = Ver;
|
||||
}
|
||||
- void setModuleProcessed(const std::string& MP) {
|
||||
+ void setModuleProcessed(const std::string& MP) override {
|
||||
ModuleProcessed = MP;
|
||||
}
|
||||
|
||||
// Object creation functions
|
||||
template<class T> void addTo(std::vector<T *> &V, SPIRVEntry *E);
|
||||
- virtual SPIRVEntry *addEntry(SPIRVEntry *E);
|
||||
- virtual SPIRVString *getString(const std::string &Str);
|
||||
+ virtual SPIRVEntry *addEntry(SPIRVEntry *E) override;
|
||||
+ virtual SPIRVString *getString(const std::string &Str) override;
|
||||
virtual SPIRVMemberName *addMemberName(SPIRVTypeStruct *ST,
|
||||
- SPIRVWord MemberNumber, const std::string &Name);
|
||||
+ SPIRVWord MemberNumber, const std::string &Name) override;
|
||||
virtual SPIRVLine *addLine(SPIRVString *FileName, SPIRVWord Line,
|
||||
- SPIRVWord Column);
|
||||
- virtual void addCapability(SPIRVCapabilityKind);
|
||||
- virtual const SPIRVDecorateGeneric *addDecorate(const SPIRVDecorateGeneric *);
|
||||
- virtual SPIRVDecorationGroup *addDecorationGroup();
|
||||
- virtual SPIRVDecorationGroup *addDecorationGroup(SPIRVDecorationGroup *Group);
|
||||
+ SPIRVWord Column) override;
|
||||
+ virtual void addCapability(SPIRVCapabilityKind) override;
|
||||
+ virtual const SPIRVDecorateGeneric *addDecorate(const SPIRVDecorateGeneric *) override;
|
||||
+ virtual SPIRVDecorationGroup *addDecorationGroup() override;
|
||||
+ virtual SPIRVDecorationGroup *addDecorationGroup(SPIRVDecorationGroup *Group) override;
|
||||
virtual SPIRVGroupDecorate *addGroupDecorate(SPIRVDecorationGroup *Group,
|
||||
- const std::vector<SPIRVEntry *> &Targets);
|
||||
+ const std::vector<SPIRVEntry *> &Targets) override;
|
||||
virtual SPIRVGroupDecorateGeneric *addGroupDecorateGeneric(
|
||||
- SPIRVGroupDecorateGeneric *GDec);
|
||||
+ SPIRVGroupDecorateGeneric *GDec) override;
|
||||
virtual SPIRVGroupMemberDecorate *addGroupMemberDecorate(
|
||||
- SPIRVDecorationGroup *Group, const std::vector<SPIRVEntry *> &Targets);
|
||||
+ SPIRVDecorationGroup *Group, const std::vector<SPIRVEntry *> &Targets) override;
|
||||
virtual void addEntryPoint(SPIRVExecutionModelKind ExecModel,
|
||||
- SPIRVId EntryPoint);
|
||||
- virtual SPIRVForward *addForward(SPIRVType *Ty);
|
||||
- virtual SPIRVForward *addForward(SPIRVId, SPIRVType *Ty);
|
||||
- virtual SPIRVFunction *addFunction(SPIRVFunction *);
|
||||
- virtual SPIRVFunction *addFunction(SPIRVTypeFunction *, SPIRVId);
|
||||
- virtual SPIRVEntry *replaceForward(SPIRVForward *, SPIRVEntry *);
|
||||
+ SPIRVId EntryPoint) override;
|
||||
+ virtual SPIRVForward *addForward(SPIRVType *Ty) override;
|
||||
+ virtual SPIRVForward *addForward(SPIRVId, SPIRVType *Ty) override;
|
||||
+ virtual SPIRVFunction *addFunction(SPIRVFunction *) override;
|
||||
+ virtual SPIRVFunction *addFunction(SPIRVTypeFunction *, SPIRVId) override;
|
||||
+ virtual SPIRVEntry *replaceForward(SPIRVForward *, SPIRVEntry *) override;
|
||||
|
||||
// Type creation functions
|
||||
template<class T> T * addType(T *Ty);
|
||||
- virtual SPIRVTypeInt *addIntegerType(unsigned BitWidth);
|
||||
+ virtual SPIRVTypeInt *addIntegerType(unsigned BitWidth) override;
|
||||
|
||||
// Constant creation functions
|
||||
- virtual SPIRVValue *addConstant(SPIRVValue *);
|
||||
- virtual SPIRVValue *addConstant(SPIRVType *, uint64_t);
|
||||
+ virtual SPIRVValue *addConstant(SPIRVValue *) override;
|
||||
+ virtual SPIRVValue *addConstant(SPIRVType *, uint64_t) override;
|
||||
|
||||
virtual SPIRVInstruction *addLoopMergeInst(
|
||||
SPIRVId MergeBlock, SPIRVId ContinueTarget,
|
||||
@@ -226,7 +226,7 @@ public:
|
||||
addInstruction(SPIRVInstruction *Inst, SPIRVBasicBlock *BB,
|
||||
SPIRVInstruction *InsertBefore = nullptr);
|
||||
|
||||
- virtual SPIRVExtInst* getCompilationUnit() const
|
||||
+ virtual SPIRVExtInst* getCompilationUnit() const override
|
||||
{
|
||||
for (auto& item : IdEntryMap)
|
||||
{
|
||||
@@ -242,7 +242,7 @@ public:
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
- virtual std::vector<SPIRVExtInst*> getGlobalVars()
|
||||
+ virtual std::vector<SPIRVExtInst*> getGlobalVars() override
|
||||
{
|
||||
std::vector<SPIRVExtInst*> globalVars;
|
||||
|
||||
@@ -260,7 +260,7 @@ public:
|
||||
return globalVars;
|
||||
}
|
||||
|
||||
- virtual std::vector<SPIRVValue*> parseSpecConstants()
|
||||
+ virtual std::vector<SPIRVValue*> parseSpecConstants() override
|
||||
{
|
||||
std::vector<SPIRVValue*> specConstants;
|
||||
|
||||
diff --git a/IGC/AdaptorOCL/cif/cif/export/registry.h b/IGC/AdaptorOCL/cif/cif/export/registry.h
|
||||
index a2b893c2..1571a698 100644
|
||||
--- a/IGC/AdaptorOCL/cif/cif/export/registry.h
|
||||
+++ b/IGC/AdaptorOCL/cif/cif/export/registry.h
|
||||
@@ -50,7 +50,8 @@ namespace Helpers {
|
||||
struct EntryPointInterfaceBase{
|
||||
EntryPointInterfaceBase(){
|
||||
}
|
||||
-
|
||||
+ virtual ~EntryPointInterfaceBase() = default;
|
||||
+
|
||||
virtual ICIF * Create(Version_t version, ICIF * parent) const = 0;
|
||||
virtual InterfaceId_t GetFirstIncompatible(CIF::CompatibilityDataHandle handle) const = 0;
|
||||
virtual void GetSupportedVersions(Version_t &verMin, Version_t &verMax) const = 0;
|
||||
diff --git a/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp b/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp
|
||||
index ebad9b3d..3bde1151 100644
|
||||
--- a/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp
|
||||
+++ b/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp
|
||||
@@ -301,7 +301,7 @@ namespace FCL
|
||||
std::string dumpPath = "c:\\Intel\\IGC\\"; // default if something goes wrong
|
||||
char custom_dir[256];
|
||||
FCLReadIGCRegistry("DumpToCustomDir", custom_dir, sizeof(custom_dir));
|
||||
- if (custom_dir != nullptr && strlen(custom_dir) > 0)
|
||||
+ if (strlen(custom_dir) > 0)
|
||||
{
|
||||
dumpPath = custom_dir;
|
||||
}
|
||||
@@ -321,7 +321,7 @@ namespace FCL
|
||||
std::string dumpPath = "/tmp/IntelIGC/"; // default if something goes wrong
|
||||
char custom_dir[256];
|
||||
FCLReadIGCRegistry("DumpToCustomDir", custom_dir, sizeof(custom_dir));
|
||||
- if (custom_dir != nullptr && strlen(custom_dir) > 0)
|
||||
+ if (strlen(custom_dir) > 0)
|
||||
{
|
||||
dumpPath = custom_dir;
|
||||
}
|
||||
diff --git a/visa/CISA.l b/visa/CISA.l
|
||||
index def21e4b..27532695 100644
|
||||
--- a/visa/CISA.l
|
||||
+++ b/visa/CISA.l
|
||||
@@ -45,7 +45,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#pragma warning(default: 4005)
|
||||
#endif
|
||||
|
||||
-#include "CISA.tab.h"
|
||||
+#include "CISA.tab.hpp"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define TRACE(str) fprintf(yyout, str); ECHO; fprintf(yyout, "\n")
|
||||
diff --git a/visa/CMakeLists.txt b/visa/CMakeLists.txt
|
||||
index 11d1bf53..551e4edb 100644
|
||||
--- a/visa/CMakeLists.txt
|
||||
+++ b/visa/CMakeLists.txt
|
||||
@@ -105,8 +105,8 @@ endif()
|
||||
# Set up the bison and flex targets. These commands will set up commands to generate the appropriate
|
||||
# source files from the input grammars. It will also set up the dependencies correctly for any
|
||||
# library or executable that uses the generated source
|
||||
-BISON_TARGET(CISAParser CISA.y ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.c COMPILE_FLAGS "-vt -p CISA")
|
||||
-FLEX_TARGET(CISAScanner CISA.l ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.c COMPILE_FLAGS "-PCISA ${WIN_FLEX_FLAG}")
|
||||
+BISON_TARGET(CISAParser CISA.y ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp COMPILE_FLAGS "-vt -p CISA")
|
||||
+FLEX_TARGET(CISAScanner CISA.l ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp COMPILE_FLAGS "-PCISA ${WIN_FLEX_FLAG}")
|
||||
ADD_FLEX_BISON_DEPENDENCY(CISAScanner CISAParser)
|
||||
|
||||
add_custom_target(CISAScanner_target DEPENDS ${FLEX_CISAScanner_OUTPUTS} ${BISON_CISAParser_OUTPUTS})
|
||||
@@ -134,7 +134,7 @@ include_directories(${Jitter_inc_dirs})
|
||||
|
||||
# Tell cmake to generate code to compile the flex and bison generated source as c++ rather than c
|
||||
# (due to the fact that they are .c files rather than .cpp)
|
||||
-set_source_files_properties( CISA.tab.c lex.CISA.c PROPERTIES LANGUAGE CXX )
|
||||
+set_source_files_properties( CISA.tab.cpp lex.CISA.cpp PROPERTIES LANGUAGE CXX )
|
||||
|
||||
set(LocalScheduler_SOURCES
|
||||
LocalScheduler/Dependencies_G4IR.cpp
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
From ca136c04d4ac60e3febc8ea2b9c4d4736365a424 Mon Sep 17 00:00:00 2001
|
||||
From: Lee Chee Yang <chee.yang.lee@intel.com>
|
||||
Date: Wed, 2 Sep 2020 08:28:35 +0800
|
||||
Subject: [PATCH] Improve Reproducibility for src package
|
||||
|
||||
Improve reproducibility for intel-graphics-compiler-src package.
|
||||
needs to pass build path as environment variable to the build.
|
||||
this only works on bison 3.7 onward, hence check for bison version
|
||||
before adding the flags.
|
||||
Upstream-Status: Inappropriate [applying --file-prefix-map in such way does not work for upstream]
|
||||
Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
|
||||
---
|
||||
visa/CMakeLists.txt | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
Index: git/visa/CMakeLists.txt
|
||||
===================================================================
|
||||
--- git.orig/visa/CMakeLists.txt
|
||||
+++ git/visa/CMakeLists.txt
|
||||
@@ -135,8 +135,11 @@ endif()
|
||||
set(bison_output_file ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp)
|
||||
set(flex_output_file ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp)
|
||||
|
||||
-BISON_TARGET(CISAParser CISA.y ${bison_output_file} COMPILE_FLAGS "-vt -p CISA")
|
||||
-FLEX_TARGET(CISAScanner CISA.l ${flex_output_file} COMPILE_FLAGS "-PCISA ${WIN_FLEX_FLAG}")
|
||||
+if(BISON_VERSION VERSION_GREATER_EQUAL "3.7.0")
|
||||
+ set(BISON_EXTRA_FLAGS " --file-prefix-map=$ENV{B}=/igc/ ")
|
||||
+endif()
|
||||
+BISON_TARGET(CISAParser CISA.y ${bison_output_file} COMPILE_FLAGS "-l -vt -p CISA ${BISON_EXTRA_FLAGS} ")
|
||||
+FLEX_TARGET(CISAScanner CISA.l ${flex_output_file} COMPILE_FLAGS "-PCISA -L ${WIN_FLEX_FLAG} ")
|
||||
ADD_FLEX_BISON_DEPENDENCY(CISAScanner CISAParser)
|
||||
set(CISAScanner_dependencies)
|
||||
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
SUMMARY = "The Intel(R) Graphics Compiler for OpenCL(TM)"
|
||||
DESCRIPTION = "The Intel(R) Graphics Compiler for OpenCL(TM) is an \
|
||||
llvm based compiler for OpenCL(TM) targeting Intel Gen graphics \
|
||||
hardware architecture."
|
||||
|
||||
LICENSE = "MIT & BSD-3-Clause"
|
||||
LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \
|
||||
file://IGC/Compiler/LegalizationPass.cpp;beginline=1;endline=25;md5=4abf1738ff96b18e34186eb763e28eeb"
|
||||
|
||||
SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https \
|
||||
file://0001-skip-execution-of-ElfPackager.patch \
|
||||
file://0002-comment-out-dump-functions.patch \
|
||||
file://0003-Fix-for-buildbreak-when-using-clang-9-compiler.patch \
|
||||
"
|
||||
|
||||
SRCREV = "5f96c6db35ffa238fd84314c99a53e6708322d65"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit cmake
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST_libc-musl = "null"
|
||||
|
||||
DEPENDS += " flex-native bison-native clang opencl-clang"
|
||||
DEPENDS_append_class-target = " clang-cross-x86_64"
|
||||
|
||||
RDEPENDS_${PN} += "opencl-clang"
|
||||
|
||||
EXTRA_OECMAKE = "-DIGC_PREFERRED_LLVM_VERSION=9.0.0 -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3"
|
||||
|
||||
LDFLAGS_append_class-native = " -fuse-ld=lld"
|
||||
TOOLCHAIN_class-native = "clang"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "^igc-(?P<pver>(?!19\..*)\d+(\.\d+)+)$"
|
||||
|
|
@ -1,78 +0,0 @@
|
|||
SUMMARY = "The Intel(R) Graphics Compiler for OpenCL(TM)"
|
||||
DESCRIPTION = "The Intel(R) Graphics Compiler for OpenCL(TM) is an \
|
||||
llvm based compiler for OpenCL(TM) targeting Intel Gen graphics \
|
||||
hardware architecture."
|
||||
|
||||
LICENSE = "MIT & Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \
|
||||
file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \
|
||||
file://NOTICES.txt;md5=b81a52411c84df3419f20bad4d755880"
|
||||
|
||||
SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https;name=igc;branch=releases/2.10.x \
|
||||
git://github.com/intel/vc-intrinsics.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/vc-intrinsics;name=vc;nobranch=1 \
|
||||
git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/SPIRV-Tools;name=spirv-tools;branch=main \
|
||||
git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/SPIRV-Headers;name=spirv-headers;branch=main \
|
||||
file://0003-Improve-Reproducibility-for-src-package.patch \
|
||||
file://0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch \
|
||||
file://0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch \
|
||||
file://0001-Build-not-able-to-locate-BiFManager-bin.patch \
|
||||
"
|
||||
|
||||
SRC_URI:append:class-native = " file://0001-fix-tblgen.patch"
|
||||
|
||||
SRCREV_igc = "83925314d4fc32b017fcbfcd73e0667ba833fb8f"
|
||||
SRCREV_vc = "9d255266e1df8f1dc5d11e1fbb03213acfaa4fc7"
|
||||
SRCREV_spirv-tools = "f289d047f49fb60488301ec62bafab85573668cc"
|
||||
SRCREV_spirv-headers = "0e710677989b4326ac974fd80c5308191ed80965"
|
||||
|
||||
SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers"
|
||||
|
||||
# Used to replace with relative path in reproducibility patch
|
||||
export B
|
||||
|
||||
inherit cmake pkgconfig qemu python3native
|
||||
|
||||
CXXFLAGS:append = " -Wno-error=nonnull"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native python3-mako-native \
|
||||
python3-pyyaml-native \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN} += "opencl-clang"
|
||||
|
||||
PACKAGECONFIG ??= "vc"
|
||||
PACKAGECONFIG[vc] = "-DIGC_BUILD__VC_ENABLED=ON -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON -DIGC_OPTION__SPIRV_TRANSLATOR_MODE=Prebuilds,-DIGC_BUILD__VC_ENABLED=OFF,"
|
||||
|
||||
EXTRA_OECMAKE = " \
|
||||
-DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVMVERSION} \
|
||||
-DVC_INTRINSICS_SRC="${S}/vc-intrinsics" \
|
||||
-DIGC_OPTION__LLVM_MODE=Prebuilds \
|
||||
-DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
|
||||
-DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \
|
||||
-DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \
|
||||
-DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
"
|
||||
|
||||
do_configure:prepend:class-target () {
|
||||
# Write out a qemu wrapper that will be used by cmake.
|
||||
qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
|
||||
cat > ${WORKDIR}/qemuwrapper << EOF
|
||||
#!/bin/sh
|
||||
$qemu_binary "\$@"
|
||||
EOF
|
||||
chmod +x ${WORKDIR}/qemuwrapper
|
||||
}
|
||||
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${libdir}/igc2/NOTICES.txt \
|
||||
"
|
||||
|
||||
# libigc.so contains buildpaths
|
||||
INSANE_SKIP:${PN} += "buildpaths"
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
From 5aea653e611b59c70e529a1bd71885a509831557 Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Tue, 1 Aug 2023 11:15:31 +0800
|
||||
Subject: [PATCH] cl_headers/CMakeLists.txt: use clang from native sysroot
|
||||
|
||||
Allow clang to be found in target sysroot for target builds and dont try
|
||||
to compile cross binaries, we do that ourselves.
|
||||
|
||||
Upstream-Status: Inappropriate [oe-specific]
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 8 ++++----
|
||||
cl_headers/CMakeLists.txt | 2 +-
|
||||
2 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 5864009..60ba39e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -35,10 +35,10 @@ set(CMAKE_MODULE_PATH
|
||||
|
||||
include(CMakeFunctions)
|
||||
|
||||
-if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
|
||||
- include(CrossCompile)
|
||||
- llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
|
||||
-endif()
|
||||
+#if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
|
||||
+# include(CrossCompile)
|
||||
+# llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
|
||||
+#endif()
|
||||
|
||||
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||
set(USE_PREBUILT_LLVM ON)
|
||||
diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt
|
||||
index 16cabb7..4423536 100644
|
||||
--- a/cl_headers/CMakeLists.txt
|
||||
+++ b/cl_headers/CMakeLists.txt
|
||||
@@ -1,6 +1,6 @@
|
||||
set(CL_HEADERS_LIB cl_headers)
|
||||
if(USE_PREBUILT_LLVM)
|
||||
- find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
|
||||
+ find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR})
|
||||
else()
|
||||
set(CLANG_COMMAND $<TARGET_FILE:clang>)
|
||||
endif()
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
From 43c806ef321b1f677a49d28c89fb7ffecf539c2d Mon Sep 17 00:00:00 2001
|
||||
From: Tim Creech <timothy.m.creech@intel.com>
|
||||
Date: Wed, 28 Jun 2023 03:45:51 -0400
|
||||
Subject: [PATCH 2/2] Request native clang only when cross-compiling (#464)
|
||||
|
||||
* Request native clang only when cross-compiling
|
||||
|
||||
LLVM_USE_HOST_TOOLS may be set if LLVM is configured with
|
||||
LLVM_OPTIMIZED_TABLEGEN, which does not necessarily indicate
|
||||
cross-compilation or that clang will only execute on the target.
|
||||
|
||||
By checking that CMAKE_CROSSCOMPILING is set, we ensure that we only
|
||||
build/use clang again if necessary for host execution.
|
||||
|
||||
* fixup: CMAKE_CROSSCOMPILING implies LLVM_USE_HOST_TOOLS
|
||||
|
||||
Co-authored-by: Wenju He <wenju.he@intel.com>
|
||||
|
||||
* fixup: also use CMAKE_CROSSCOMPILING in top-level CMakeLists.txt
|
||||
|
||||
---------
|
||||
|
||||
Co-authored-by: Wenju He <wenju.he@intel.com>
|
||||
|
||||
Upstream-Status: Backport [https://github.com/intel/opencl-clang/commit/53843eee13cfb2357919ee02714a43bef1af0f86]
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 2 +-
|
||||
cl_headers/CMakeLists.txt | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index e772de9..5864009 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -35,7 +35,7 @@ set(CMAKE_MODULE_PATH
|
||||
|
||||
include(CMakeFunctions)
|
||||
|
||||
-if(LLVM_USE_HOST_TOOLS AND OPENCL_CLANG_BUILD_EXTERNAL)
|
||||
+if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
|
||||
include(CrossCompile)
|
||||
llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
|
||||
endif()
|
||||
diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt
|
||||
index 18296c2..16cabb7 100644
|
||||
--- a/cl_headers/CMakeLists.txt
|
||||
+++ b/cl_headers/CMakeLists.txt
|
||||
@@ -4,7 +4,7 @@ if(USE_PREBUILT_LLVM)
|
||||
else()
|
||||
set(CLANG_COMMAND $<TARGET_FILE:clang>)
|
||||
endif()
|
||||
-if(LLVM_USE_HOST_TOOLS AND NOT OPENCL_CLANG_BUILD_EXTERNAL)
|
||||
+if(CMAKE_CROSSCOMPILING AND NOT OPENCL_CLANG_BUILD_EXTERNAL)
|
||||
build_native_tool(clang CLANG_COMMAND)
|
||||
endif()
|
||||
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
From 2ce2619b544678541e0cc56494e2927086718613 Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Tue, 26 Mar 2019 14:11:29 +0800
|
||||
Subject: [PATCH] point to correct llvm-tblgen
|
||||
|
||||
Let llvm-tblgen path be passed from recipe itself.
|
||||
|
||||
Also since we're going to do the patching ourselves, no need to look for
|
||||
git through cmake.
|
||||
|
||||
Upstream-Status: Inappropriate [OE specific]
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1371a67..f83ffcc 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -53,7 +53,7 @@ endif(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||
include(AddLLVM)
|
||||
include(TableGen)
|
||||
|
||||
-find_package(Git REQUIRED)
|
||||
+#find_package(Git REQUIRED)
|
||||
|
||||
if (NOT WIN32)
|
||||
add_subdirectory( linux_linker )
|
||||
@@ -138,7 +138,7 @@ endif(NOT USE_PREBUILT_LLVM)
|
||||
set (COMPILE_OPTIONS_TD opencl_clang_options.td)
|
||||
set (COMPILE_OPTIONS_INC opencl_clang_options.inc)
|
||||
|
||||
-set(LLVM_TABLEGEN_EXE "llvm-tblgen")
|
||||
+#set(LLVM_TABLEGEN_EXE "llvm-tblgen")
|
||||
set(LLVM_TARGET_DEFINITIONS ${COMPILE_OPTIONS_TD})
|
||||
if(USE_PREBUILT_LLVM)
|
||||
set(TABLEGEN_ADDITIONAL -I ${LLVM_INCLUDE_DIRS})
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
SUMMARY = "Common clang is a thin wrapper library around clang"
|
||||
DESCRIPTION = "Common clang has OpenCL-oriented API and is capable \
|
||||
to compile OpenCL C kernels to SPIR-V modules."
|
||||
|
||||
LICENSE = "NCSA"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c"
|
||||
|
||||
SRC_URI = "git://github.com/intel/opencl-clang.git;branch=${BRANCH};protocol=https \
|
||||
file://0002-Request-native-clang-only-when-cross-compiling-464.patch \
|
||||
file://0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch \
|
||||
"
|
||||
|
||||
inherit cmake
|
||||
DEPENDS += "clang"
|
||||
DEPENDS:append:class-target = " opencl-clang-native"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
DEPENDS += " spirv-llvm-translator"
|
||||
|
||||
EXTRA_OECMAKE += "\
|
||||
-DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
|
||||
-DCMAKE_SKIP_RPATH=TRUE \
|
||||
-DPREFERRED_LLVM_VERSION=${LLVMVERSION} \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
"
|
||||
|
||||
do_install:append:class-native() {
|
||||
install -d ${D}${bindir}
|
||||
install -m 0755 ${B}/bin/linux_resource_linker ${D}${bindir}/
|
||||
}
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
require opencl-clang.inc
|
||||
|
||||
SRCREV = "60fd799cc58755c16d951f9ebfde6d0f9b8554dd"
|
||||
|
||||
BRANCH = "ocl-open-150"
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
SUMMARY = "Common clang is a thin wrapper library around clang"
|
||||
DESCRIPTION = "Common clang has OpenCL-oriented API and is capable \
|
||||
to compile OpenCL C kernels to SPIR-V modules."
|
||||
|
||||
LICENSE = "NCSA"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c"
|
||||
|
||||
SRC_URI = "git://github.com/intel/opencl-clang.git;branch=ocl-open-90;protocol=https \
|
||||
file://point-to-correct-llvm-tblgen.patch \
|
||||
"
|
||||
|
||||
SRCREV = "6f8c329bea44321aef1a1716dd206c1f7bed23cf"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit cmake
|
||||
DEPENDS += "clang"
|
||||
|
||||
DEPENDS_append_class-target = " opencl-clang-native"
|
||||
LDFLAGS_append_class-native = " -fuse-ld=lld"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST_libc-musl = "null"
|
||||
|
||||
EXTRA_OECMAKE += "\
|
||||
-DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
|
||||
-DCMAKE_SKIP_RPATH=TRUE \
|
||||
"
|
||||
|
||||
do_install_append_class-native() {
|
||||
install -d ${D}${bindir}
|
||||
install -m 0755 ${B}/linux_linker/linux_resource_linker ${D}${bindir}/
|
||||
}
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
TOOLCHAIN_class-native = "clang"
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
SUMMARY = "OpenVINO Model Optimzer"
|
||||
DESCRIPTION = "Model Optimizer is a cross-platform command-line tool that \
|
||||
facilitates the transition between the training and deployment \
|
||||
environment, performs static model analysis, and adjusts deep \
|
||||
learning models for optimal execution on end-point target devices."
|
||||
HOMEPAGE = "https://01.org/openvinotoolkit"
|
||||
|
||||
SRC_URI = "git://github.com/opencv/dldt.git;protocol=git;branch=2019 \
|
||||
"
|
||||
SRCREV = "ba6e22b1b5ee4cbefcc30e8d9493cddb0bb3dfdf"
|
||||
|
||||
LICENSE = "Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
do_install() {
|
||||
mkdir -p ${D}${datadir}/openvino/model-optimizer
|
||||
cp -r model-optimizer ${D}${datadir}/openvino/
|
||||
}
|
||||
|
||||
RDEPENDS_${PN} += " \
|
||||
python3-numpy \
|
||||
python3-protobuf \
|
||||
python3-defusedxml \
|
||||
python3-networkx \
|
||||
python3-test-generator \
|
||||
bash \
|
||||
"
|
||||
|
||||
FILES_${PN} += "${datadir}/openvino"
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
From 439af27f7641185933d7810b6c4eb17086438df3 Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Mon, 19 May 2025 17:50:40 +0530
|
||||
Subject: [PATCH] LMS : fix build issue with gcc 15
|
||||
|
||||
include cstdint header to resolve the below error with gcc 15
|
||||
|
||||
| In file included from /lms/2406.0.0.0/git/MEIClient/src/MEICommand.cpp:11:
|
||||
| /lms/2406.0.0.0/git/MEIClient/Include/MEICommand.h:40:54: error: 'uint8_t' was not declared in this scope
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/intel/lms/pull/23]
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
---
|
||||
MEIClient/Include/MEICommand.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/MEIClient/Include/MEICommand.h b/MEIClient/Include/MEICommand.h
|
||||
index 6192d26..5332e44 100644
|
||||
--- a/MEIClient/Include/MEICommand.h
|
||||
+++ b/MEIClient/Include/MEICommand.h
|
||||
@@ -12,6 +12,7 @@
|
||||
#define __MEI_COMMAND_H__
|
||||
#include "heci.h"
|
||||
#include "MEIClientException.h"
|
||||
+#include <cstdint>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
--
|
||||
2.43.0
|
||||
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
From e1f6129390706044112496b6f10baee5b604b4c8 Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Wed, 23 Jul 2025 23:48:41 +0800
|
||||
Subject: [PATCH] cmake: Bump required CMake version to 3.5 to allow builds
|
||||
with CMake 4+
|
||||
|
||||
This enables builds with CMake 4+, fixing:
|
||||
|
||||
CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
|
||||
Compatibility with CMake < 3.5 has been removed from CMake.
|
||||
|
||||
Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
|
||||
to tell CMake that the project requires at least <min> but has been
|
||||
updated to work with policies introduced by <max> or earlier.
|
||||
|
||||
Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
---
|
||||
CIM_Framework/openwsman/CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/CIM_Framework/openwsman/CMakeLists.txt b/CIM_Framework/openwsman/CMakeLists.txt
|
||||
index 6e54c66..e2ffa5f 100644
|
||||
--- a/CIM_Framework/openwsman/CMakeLists.txt
|
||||
+++ b/CIM_Framework/openwsman/CMakeLists.txt
|
||||
@@ -6,7 +6,7 @@ PROJECT(openwsman)
|
||||
|
||||
# 2.6 minimum because of CMP0005 (escaping defines)
|
||||
# 2.8.12 minimum because CMake 3.19.7 says so
|
||||
-cmake_minimum_required(VERSION 2.8.12)
|
||||
+cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
include(CTest)
|
||||
enable_testing()
|
||||
--
|
||||
2.37.3
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
From ec7d732a6a23e90be34840b0f1a57e5199d393cf Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Usyskin <alexander.usyskin@intel.com>
|
||||
Date: Mon, 17 Jun 2019 13:27:33 +0300
|
||||
Subject: [PATCH] lms: drop rpath definitions
|
||||
|
||||
Yocto fail to compile with this definitions.
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index a303c4b..9bda082 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -109,9 +109,6 @@ install (DIRECTORY Docs/Licenses
|
||||
FILES_MATCHING PATTERN "LICENSE.*"
|
||||
)
|
||||
|
||||
-list (APPEND CMAKE_INSTALL_RPATH "${PROJECT_BINARY_DIR}/UNS/GMS_COMMON")
|
||||
-list (APPEND CMAKE_INSTALL_RPATH "${PROJECT_BINARY_DIR}/WsmanClient")
|
||||
-
|
||||
if (BUILD_TESTS)
|
||||
include (gtest.cmake)
|
||||
endif (BUILD_TESTS)
|
||||
--
|
||||
2.7.4
|
||||
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
SUMMARY = "Intel(R) Local Managability Service"
|
||||
DESCRIPTION = "Intel Local Manageability Service allows applications \
|
||||
to access the Intel Active Management Technology (AMT) firmware via \
|
||||
the Intel Management Engine Interface (MEI)."
|
||||
|
||||
LICENSE = "Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=2ee41112a44fe7014dce33e26468ba93"
|
||||
|
||||
COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
|
||||
|
||||
inherit cmake systemd
|
||||
|
||||
DEPENDS = "metee ace xerces-c libnl libxml2 glib-2.0 glib-2.0-native connman"
|
||||
|
||||
EXTRA_OECMAKE += "-DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3"
|
||||
|
||||
REQUIRED_DISTRO_FEATURES= "systemd"
|
||||
|
||||
FILES_${PN} += "${datadir}/dbus-1/system-services/*.service"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
SYSTEMD_SERVICE_${PN} = "lms.service"
|
||||
|
||||
SRC_URI = "git://github.com/intel/lms.git"
|
||||
SRCREV = "f90fa51f07514b7644cc57846c90e46b146b23ae"
|
||||
|
||||
SRC_URI_append = " file://lms_drop_rpath_${PV}.diff"
|
||||
|
||||
do_install_append() {
|
||||
install -d ${D}${systemd_system_unitdir}
|
||||
install -m 0644 ${B}/UNS/lms.service ${D}${systemd_system_unitdir}
|
||||
}
|
||||
|
||||
RDEPENDS_${PN} += "ace"
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
SUMMARY = "Intel(R) Local Managability Service"
|
||||
DESCRIPTION = "Intel Local Manageability Service allows applications \
|
||||
to access the Intel Active Management Technology (AMT) firmware via \
|
||||
the Intel Management Engine Interface (MEI)."
|
||||
|
||||
LICENSE = "Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=2ee41112a44fe7014dce33e26468ba93"
|
||||
|
||||
COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
|
||||
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
inherit cmake systemd features_check python3native
|
||||
|
||||
DEPENDS = "metee ace xerces-c libnl libxml2 glib-2.0 glib-2.0-native pkgconfig-native python3-packaging-native"
|
||||
|
||||
# Enable either connman or networkmanager or none but not both.
|
||||
PACKAGECONFIG ??= "connman"
|
||||
PACKAGECONFIG[connman] = "-DNETWORK_CN=ON, -DNETWORK_CN=OFF, connman"
|
||||
PACKAGECONFIG[networkmanager] = "-DNETWORK_NM=ON, -DNETWORK_NM=OFF, networkmanager"
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "systemd"
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
"
|
||||
|
||||
FILES:${PN} += "${datadir}/dbus-1/system-services/*.service"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "lms.service"
|
||||
|
||||
SRC_URI = "git://github.com/intel/lms.git;branch=master;protocol=https \
|
||||
file://0001-LMS-fix-build-issue-with-gcc-15.patch \
|
||||
file://0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch \
|
||||
"
|
||||
SRCREV = "388f115b2aeb3ea11499971c65f828daefd32c47"
|
||||
|
||||
do_install:append() {
|
||||
install -d ${D}${sysconfdir}/lms
|
||||
install -d ${D}${systemd_system_unitdir}
|
||||
install -m 0644 ${B}/UNS/lms.service ${D}${systemd_system_unitdir}
|
||||
install -d ${D}${sysconfdir}/udev/rules.d
|
||||
install -m 0644 ${S}/UNS/linux_scripts/70-mei-wdt.rules ${D}${sysconfdir}/udev/rules.d/70-mei-wdt.rules
|
||||
}
|
||||
|
||||
RDEPENDS:${PN} += "ace"
|
||||
|
||||
CVE_STATUS[CVE-2018-1000535] = "cpe-incorrect: This CVE is for a different LMS - Lan Management System."
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
From deccc0c69c2c8759c52885be8bdda54d3cee481c Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Sun, 11 Dec 2022 22:34:15 +0800
|
||||
Subject: [PATCH] Add print function to print test run status in ptest format
|
||||
|
||||
Upstream-Status: Inappropriate [OE ptest specific]
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
---
|
||||
run_tests.py | 16 ++++++++++++++++
|
||||
1 file changed, 16 insertions(+)
|
||||
|
||||
diff --git a/run_tests.py b/run_tests.py
|
||||
index 1cd796dd..e3ffd1ab 100755
|
||||
--- a/run_tests.py
|
||||
+++ b/run_tests.py
|
||||
@@ -327,6 +327,9 @@ def run_test(testname, host, target):
|
||||
else:
|
||||
ispc_exe_rel = add_prefix(host.ispc_cmd, host, target)
|
||||
|
||||
+ # to reslove the error '.rodata' can not be used when making a PIE object
|
||||
+ ispc_exe_rel = ispc_exe_rel + " --pic"
|
||||
+
|
||||
# is this a test to make sure an error is issued?
|
||||
want_error = (filename.find("tests_errors") != -1)
|
||||
if want_error == True:
|
||||
@@ -795,6 +798,17 @@ def check_compiler_exists(compiler_exe):
|
||||
return
|
||||
error("missing the required compiler: %s \n" % compiler_exe, 1)
|
||||
|
||||
+def print_test_run_status(results):
|
||||
+ for fstatus in results:
|
||||
+ if (fstatus[1] == Status.Success):
|
||||
+ print( "%s: %s" % ("PASS", fstatus[0]))
|
||||
+ elif (fstatus[1] == Status.Compfail):
|
||||
+ print( "%s: %s" % ("FAIL", fstatus[0]))
|
||||
+ elif (fstatus[1] == Status.Runfail):
|
||||
+ print( "%s: %s" % ("FAIL", fstatus[0]))
|
||||
+ elif (fstatus[1] == Status.Skip):
|
||||
+ print( "%s: %s" % ("SKIP", fstatus[0]))
|
||||
+
|
||||
def print_result(status, results, s, run_tests_log, csv):
|
||||
title = StatusStr[status]
|
||||
file_list = [fname for fname, fstatus in results if status == fstatus]
|
||||
@@ -938,6 +952,8 @@ def run_tests(options1, args, print_version):
|
||||
pass_rate = -1
|
||||
print_debug("PASSRATE (%d/%d) = %d%% \n\n" % (len(run_succeed_files), total_tests_executed, pass_rate), s, run_tests_log)
|
||||
|
||||
+ print_test_run_status(results)
|
||||
+
|
||||
for status in Status:
|
||||
print_result(status, results, s, run_tests_log, options.csv)
|
||||
fails = [status != Status.Compfail and status != Status.Runfail for _, status in results]
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
From 7beff95c11071170eb27b6fa7d0cc77588caee8e Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Tue, 26 Jul 2022 15:25:10 +0800
|
||||
Subject: [PATCH] Fix QA Issues
|
||||
|
||||
Stop ispc from inserting host file path in generated headers which leads to reproducibility problems.
|
||||
|
||||
Upstream-Status: Inappropriate [OE build specific]
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
---
|
||||
src/module.cpp | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/module.cpp b/src/module.cpp
|
||||
index e2084d2e..e2626865 100644
|
||||
--- a/src/module.cpp
|
||||
+++ b/src/module.cpp
|
||||
@@ -2555,7 +2555,7 @@ bool Module::writeHeader(const char *fn) {
|
||||
perror("fopen");
|
||||
return false;
|
||||
}
|
||||
- fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", fn);
|
||||
+ fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n");
|
||||
fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n");
|
||||
|
||||
// Create a nice guard string from the filename, turning any
|
||||
@@ -2677,7 +2677,7 @@ bool Module::writeDispatchHeader(DispatchHeaderInfo *DHI) {
|
||||
FILE *f = DHI->file;
|
||||
|
||||
if (DHI->EmitFrontMatter) {
|
||||
- fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", DHI->fn);
|
||||
+ fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n");
|
||||
fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n");
|
||||
}
|
||||
// Create a nice guard string from the filename, turning any
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
From 16a2c22339287122d2c25d8bb33a5a51b4e6ee51 Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Thu, 24 Feb 2022 20:01:11 +0530
|
||||
Subject: [PATCH] cmake: don't build for 32-bit targets
|
||||
|
||||
Error log:
|
||||
| tmp/work/corei7-64-poky-linux/ispc/1.16.0-r0/recipe-sysroot/usr/include/bits/long-double.h:23:10: fatal error: 'bits/long-double-32.h' file not found
|
||||
| #include <bits/long-double-32.h>
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~
|
||||
| 1 error generated.
|
||||
|
||||
Remove SYSTEM include search path and set -isysroot dir path
|
||||
for root dir for cross compilation.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
cmake/GenerateBuiltins.cmake | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/cmake/GenerateBuiltins.cmake b/cmake/GenerateBuiltins.cmake
|
||||
index f84494ed..d90cb1ec 100644
|
||||
--- a/cmake/GenerateBuiltins.cmake
|
||||
+++ b/cmake/GenerateBuiltins.cmake
|
||||
@@ -253,7 +253,7 @@ function(builtin_to_cpp bit os_name arch supported_archs supported_oses resultFi
|
||||
# In this case headers will be installed in /usr/arm-linux-gnueabihf/include and will not be picked up
|
||||
# by clang by default. So the following line adds such path explicitly. If this path doesn't exist and
|
||||
# the headers can be found in other locations, this should not be a problem.
|
||||
- set(includePath -isystem/usr/${debian_triple}/include)
|
||||
+ set(includePath -isysroot${SYSROOT_DIR})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -339,7 +339,7 @@ function (generate_target_builtins resultList)
|
||||
set(regular_targets ${ARGN})
|
||||
list(FILTER regular_targets EXCLUDE REGEX wasm)
|
||||
foreach (ispc_target ${regular_targets})
|
||||
- foreach (bit 32 64)
|
||||
+ foreach (bit 64)
|
||||
foreach (os_name ${TARGET_OS_LIST_FOR_LL})
|
||||
target_ll_to_cpp(target-${ispc_target} ${bit} ${os_name} output${os_name}${bit})
|
||||
list(APPEND tmpList ${output${os_name}${bit}})
|
||||
@@ -405,7 +405,7 @@ function (generate_common_builtins resultList)
|
||||
endif()
|
||||
|
||||
message (STATUS "ISPC will be built with support of ${supported_oses} for ${supported_archs}")
|
||||
- foreach (bit 32 64)
|
||||
+ foreach (bit 64)
|
||||
foreach (os_name "windows" "linux" "freebsd" "macos" "android" "ios" "ps4" "web")
|
||||
foreach (arch "x86" "arm" "wasm")
|
||||
builtin_to_cpp(${bit} ${os_name} ${arch} "${supported_archs}" "${supported_oses}" res${bit}${os_name}${arch})
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
#!/bin/sh
|
||||
python3 run_tests.py
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
SUMMARY = "Intel(R) Implicit SPMD Program Compiler"
|
||||
DESCRIPTION = "ispc is a compiler for a variant of the C programming language, \
|
||||
with extensions for single program, multiple data programming."
|
||||
HOMEPAGE = "https://github.com/ispc/ispc"
|
||||
|
||||
LICENSE = "BSD-3-Clause & Apache-2.0-with-LLVM-exception"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=da5ecffdd210b3cf776b32b41c182e87 \
|
||||
file://third-party-programs.txt;md5=2061218c7be521556719c8b504bf9ddd"
|
||||
|
||||
inherit cmake python3native ptest
|
||||
|
||||
SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \
|
||||
file://0002-cmake-don-t-build-for-32-bit-targets.patch \
|
||||
file://0001-Fix-QA-Issues.patch \
|
||||
file://0001-Add-print-function-to-print-test-run-status-in-ptest.patch \
|
||||
file://run-ptest \
|
||||
"
|
||||
|
||||
SRCREV = "d394222aef59e4759b06e39ec160e4aba6ee5f40"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
|
||||
DEPENDS += " clang-native bison-native flex-native"
|
||||
DEPENDS:append:class-target = " clang"
|
||||
RDEPENDS:${PN}-ptest += " python3-multiprocessing"
|
||||
|
||||
PACKAGECONFIG ??= "tbb"
|
||||
PACKAGECONFIG[tbb] = "-DISPCRT_BUILD_TASK_MODEL=TBB, -DISPCRT_BUILD_TASK_MODEL=OpenMP, tbb"
|
||||
|
||||
YFLAGS = '-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}'
|
||||
|
||||
do_configure:prepend() {
|
||||
sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt
|
||||
sed -i -e 's#\${FLEX_EXECUTABLE}.*#\${FLEX_EXECUTABLE} \-L #g' ${S}/CMakeLists.txt
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
cp -rf ${S}/run_tests.py ${D}${PTEST_PATH}
|
||||
cp -rf ${S}/common.py ${D}${PTEST_PATH}
|
||||
cp -rf ${S}/tests ${D}${PTEST_PATH}
|
||||
cp -rf ${S}/test_static.isph ${D}${PTEST_PATH}
|
||||
cp -rf ${S}/fail_db.txt ${D}${PTEST_PATH}
|
||||
cp -rf ${S}/test_static.cpp ${D}${PTEST_PATH}
|
||||
}
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DISPC_INCLUDE_TESTS=OFF \
|
||||
-DISPC_INCLUDE_EXAMPLES=OFF \
|
||||
-DARM_ENABLED=OFF \
|
||||
-DISPC_CROSS=ON \
|
||||
-DISPC_ANDROID_TARGET=OFF \
|
||||
-DISPC_FREEBSD_TARGET=OFF \
|
||||
-DISPC_WINDOWS_TARGET=OFF \
|
||||
-DISPC_IOS_TARGET=OFF \
|
||||
-DISPC_PS_TARGET=OFF \
|
||||
-DSYSROOT_DIR=${STAGING_DIR} \
|
||||
-DCLANG_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang \
|
||||
-DCLANGPP_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang++ \
|
||||
-DLLVM_AS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-as \
|
||||
"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
SUMMARY = "oneAPI Level Zero Specification Headers and Loader"
|
||||
HOMEPAGE = "https://github.com/oneapi-src/level-zero"
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=97957beb2f7808ffa247e5d93e6442cc"
|
||||
|
||||
SRC_URI = "git://github.com/oneapi-src/level-zero.git;protocol=https;branch=master"
|
||||
SRCREV = "9536683855b17a21508e5b54ba358225d6a976da"
|
||||
|
||||
inherit cmake
|
||||
DEPENDS += "opencl-headers"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
|
||||
|
||||
PACKAGES =+ "${PN}-headers ${PN}-samples ${PN}-loader"
|
||||
|
||||
do_install:append () {
|
||||
install -d ${D}${bindir} ${D}${libdir}
|
||||
install -m 755 ${B}/bin/zello* ${D}${bindir}
|
||||
|
||||
oe_libinstall -C lib libze_null ${D}${libdir}
|
||||
}
|
||||
|
||||
|
||||
FILES:${PN}-headers = "${includedir}"
|
||||
FILES:${PN}-samples = "${bindir} ${libdir}/libze_null* ${libdir}/libze_validation*"
|
||||
FILES:${PN}-loader = "${libdir}"
|
||||
|
||||
# PN-loader (non -dev/-dbg/nativesdk- package) contains symlink .so
|
||||
INSANE_SKIP:${PN}-loader = "dev-so"
|
||||
INSANE_SKIP:${PN}-samples = "dev-so"
|
||||
ALLOW_EMPTY:${PN} = "1"
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
|
@ -1,99 +0,0 @@
|
|||
From b57297c14d94dac9bdef7570b7b33d70b10171f3 Mon Sep 17 00:00:00 2001
|
||||
From: Jozef Wludzik <jozef.wludzik@intel.com>
|
||||
Date: Tue, 26 Mar 2024 14:43:29 +0100
|
||||
Subject: [PATCH 1/2] Fix the compilation warning when using gcc-13 (#25)
|
||||
|
||||
Added missing headers. Fixed compilation error about casting from
|
||||
unsigned to signed int.
|
||||
|
||||
Upstream-Status: Backport [https://github.com/intel/linux-npu-driver/commit/4bcbf2abe94eb4d9c083bd616b58e309a82d008a]
|
||||
|
||||
Signed-off-by: Jozef Wludzik <jozef.wludzik@intel.com>
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp | 7 ++++---
|
||||
umd/vpu_driver/include/umd_common.hpp | 1 +
|
||||
validation/umd-test/umd_prime_buffers.h | 9 +++++++--
|
||||
validation/umd-test/utilities/data_handle.h | 1 +
|
||||
4 files changed, 13 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp b/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
|
||||
index f206ebe..682e5b4 100644
|
||||
--- a/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
|
||||
+++ b/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
|
||||
@@ -5,12 +5,13 @@
|
||||
*
|
||||
*/
|
||||
|
||||
-#include <dlfcn.h>
|
||||
-#include <memory>
|
||||
-
|
||||
#include "vpux_driver_compiler.h"
|
||||
#include "vpu_driver/source/utilities/log.hpp"
|
||||
|
||||
+#include <array>
|
||||
+#include <dlfcn.h>
|
||||
+#include <memory>
|
||||
+
|
||||
class Vcl {
|
||||
public:
|
||||
static Vcl &sym() {
|
||||
diff --git a/umd/vpu_driver/include/umd_common.hpp b/umd/vpu_driver/include/umd_common.hpp
|
||||
index 0c874a3..5ad9be2 100644
|
||||
--- a/umd/vpu_driver/include/umd_common.hpp
|
||||
+++ b/umd/vpu_driver/include/umd_common.hpp
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
+#include <cstdint>
|
||||
#include <limits>
|
||||
#include <linux/kernel.h>
|
||||
#include <stdexcept>
|
||||
diff --git a/validation/umd-test/umd_prime_buffers.h b/validation/umd-test/umd_prime_buffers.h
|
||||
index 6f7c7de..ab4814c 100644
|
||||
--- a/validation/umd-test/umd_prime_buffers.h
|
||||
+++ b/validation/umd-test/umd_prime_buffers.h
|
||||
@@ -6,12 +6,17 @@
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
+
|
||||
+#include "umd_test.h"
|
||||
+
|
||||
#include <fcntl.h>
|
||||
-#include <linux/kernel.h>
|
||||
#include <linux/dma-buf.h>
|
||||
#include <linux/dma-heap.h>
|
||||
+#include <linux/kernel.h>
|
||||
+#include <stdint.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/mman.h>
|
||||
+#include <unistd.h>
|
||||
|
||||
#define ALLIGN_TO_PAGE(x) __ALIGN_KERNEL((x), (UmdTest::PAGE_SIZE))
|
||||
|
||||
@@ -60,7 +65,7 @@ class PrimeBufferHelper {
|
||||
return false;
|
||||
|
||||
bufferFd = heapAlloc.fd;
|
||||
- buffers.insert({heapAlloc.fd, {size, nullptr}});
|
||||
+ buffers.insert({static_cast<int>(heapAlloc.fd), {size, nullptr}});
|
||||
return true;
|
||||
}
|
||||
|
||||
diff --git a/validation/umd-test/utilities/data_handle.h b/validation/umd-test/utilities/data_handle.h
|
||||
index d6e0ec0..5d937b2 100644
|
||||
--- a/validation/umd-test/utilities/data_handle.h
|
||||
+++ b/validation/umd-test/utilities/data_handle.h
|
||||
@@ -6,6 +6,7 @@
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
+#include <stdint.h>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
--
|
||||
2.43.0
|
||||
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
From 561e3b5edc0ec3d8835aaf8ef8e5c9e8f9b53061 Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Wed, 28 May 2025 13:35:18 +0800
|
||||
Subject: [PATCH] linux-npu-driver : fix multilib install issue
|
||||
|
||||
Upstream-Status: Inappropriate [oe specific]
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
---
|
||||
firmware/CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/firmware/CMakeLists.txt b/firmware/CMakeLists.txt
|
||||
index 0c093ca..ba346a0 100644
|
||||
--- a/firmware/CMakeLists.txt
|
||||
+++ b/firmware/CMakeLists.txt
|
||||
@@ -12,7 +12,7 @@ target_include_directories(${PROJECT_NAME} INTERFACE include)
|
||||
file(GLOB FIRMWARE_BINARIES ${CMAKE_CURRENT_SOURCE_DIR}/bin/*.bin)
|
||||
if (FIRMWARE_BINARIES)
|
||||
install(FILES ${FIRMWARE_BINARIES}
|
||||
- DESTINATION /lib/firmware/updates/intel/vpu/
|
||||
+ DESTINATION ${CMAKE_INSTALL_FIRMWARE_DIR}/firmware/updates/intel/vpu/
|
||||
PERMISSIONS OWNER_READ
|
||||
COMPONENT fw-npu)
|
||||
endif()
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
|
@ -1,110 +0,0 @@
|
|||
From a9f51fd88effb7d324609e692ca7da576d6dad2e Mon Sep 17 00:00:00 2001
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Tue, 28 May 2024 10:23:42 +0800
|
||||
Subject: [PATCH 2/2] Fix compilation failure with GCC-14
|
||||
|
||||
umd/level_zero_driver/core/source/event/event.cpp:65:31: error: 'remove_if' is not a member of 'std'; did you mean 'remove_cv'?
|
||||
| 65 | associatedJobs.erase(std::remove_if(associatedJobs.begin(),
|
||||
| | ^~~~~~~~~
|
||||
| | remove_cv
|
||||
|
||||
| umd/vpu_driver/source/command/vpu_command.cpp: In member function 'void VPU::VPUCommand::appendAssociateBufferObject(VPU::VPUBufferObject*)':
|
||||
| umd/vpu_driver/source/command/vpu_command.cpp:126:20: error: 'find' is not a member of 'std'; did you mean 'bind'?
|
||||
| 126 | auto it = std::find(bufferObjects.begin(), bufferObjects.end(), bo);
|
||||
| | ^~~~
|
||||
| | bind
|
||||
|
||||
| umd/vpu_driver/source/command/vpu_command_buffer.cpp: In member function 'bool VPU::VPUCommandBuffer::addCommand(VPU::VPUCommand*, uint64_t&, uint64_t&)':
|
||||
| umd/vpu_driver/source/command/vpu_command_buffer.cpp:185:24: error: 'find' is not a member of 'std'; did you mean 'bind'?
|
||||
| 185 | auto it = std::find(bufferHandles.begin(), bufferHandles.end(), bo->getHandle());
|
||||
| | ^~~~
|
||||
| | bind
|
||||
|
||||
| umd/level_zero_driver/ext/source/graph/elf_parser.cpp:301:32: error: 'max_element' is not a member of 'std'; did you mean 'tuple_element'?
|
||||
| 301 | std::max_element(stride_begin + TENSOR_5D_STRIDE_C, stride_end));
|
||||
| | ^~~~~~~~~~~
|
||||
| | tuple_element
|
||||
| umd/level_zero_driver/ext/source/graph/elf_parser.cpp:315:37: error: 'max_element' is not a member of 'std'; did you mean 'tuple_element'?
|
||||
| 315 | auto max_stride_val = *std::max_element(stride_begin + TENSOR_4D_STRIDE_C, stride_end);
|
||||
| | ^~~~~~~~~~~
|
||||
|
||||
| umd/level_zero_driver/tools/source/metrics/metric.cpp: In member function 'void L0::MetricContext::deactivateMetricGroups(int)':
|
||||
| umd/level_zero_driver/tools/source/metrics/metric.cpp:275:38: error: 'remove_if' is not a member of 'std'; did you mean 'remove_cv'?
|
||||
| 275 | activatedMetricGroups.erase(std::remove_if(activatedMetricGroups.begin(),
|
||||
| | ^~~~~~~~~
|
||||
| | remove_cv
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/intel/linux-npu-driver/pull/30]
|
||||
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
umd/level_zero_driver/core/source/event/event.cpp | 1 +
|
||||
umd/level_zero_driver/ext/source/graph/elf_parser.cpp | 1 +
|
||||
umd/level_zero_driver/tools/source/metrics/metric.cpp | 1 +
|
||||
umd/vpu_driver/source/command/vpu_command.cpp | 1 +
|
||||
umd/vpu_driver/source/command/vpu_command_buffer.cpp | 1 +
|
||||
5 files changed, 5 insertions(+)
|
||||
|
||||
diff --git a/umd/level_zero_driver/core/source/event/event.cpp b/umd/level_zero_driver/core/source/event/event.cpp
|
||||
index a92248f..196d176 100644
|
||||
--- a/umd/level_zero_driver/core/source/event/event.cpp
|
||||
+++ b/umd/level_zero_driver/core/source/event/event.cpp
|
||||
@@ -14,6 +14,7 @@
|
||||
|
||||
#include <level_zero/ze_api.h>
|
||||
#include <thread>
|
||||
+#include <algorithm>
|
||||
|
||||
namespace L0 {
|
||||
|
||||
diff --git a/umd/level_zero_driver/ext/source/graph/elf_parser.cpp b/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
|
||||
index a1c8e14..dfbd61d 100644
|
||||
--- a/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
|
||||
+++ b/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
|
||||
@@ -21,6 +21,7 @@
|
||||
#include <vpux_headers/metadata.hpp>
|
||||
#include <vpux_elf/types/vpu_extensions.hpp>
|
||||
#include <vpux_elf/utils/error.hpp>
|
||||
+#include <algorithm>
|
||||
|
||||
namespace L0 {
|
||||
|
||||
diff --git a/umd/level_zero_driver/tools/source/metrics/metric.cpp b/umd/level_zero_driver/tools/source/metrics/metric.cpp
|
||||
index b67750f..9497311 100644
|
||||
--- a/umd/level_zero_driver/tools/source/metrics/metric.cpp
|
||||
+++ b/umd/level_zero_driver/tools/source/metrics/metric.cpp
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
#include "level_zero_driver/tools/source/metrics/metric.hpp"
|
||||
#include "vpu_driver/source/utilities/log.hpp"
|
||||
+#include <algorithm>
|
||||
|
||||
namespace L0 {
|
||||
|
||||
diff --git a/umd/vpu_driver/source/command/vpu_command.cpp b/umd/vpu_driver/source/command/vpu_command.cpp
|
||||
index f4ca23f..75331d9 100644
|
||||
--- a/umd/vpu_driver/source/command/vpu_command.cpp
|
||||
+++ b/umd/vpu_driver/source/command/vpu_command.cpp
|
||||
@@ -14,6 +14,7 @@
|
||||
#include <cstdint>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
+#include <algorithm>
|
||||
|
||||
namespace VPU {
|
||||
|
||||
diff --git a/umd/vpu_driver/source/command/vpu_command_buffer.cpp b/umd/vpu_driver/source/command/vpu_command_buffer.cpp
|
||||
index c4ad052..bbb80ec 100644
|
||||
--- a/umd/vpu_driver/source/command/vpu_command_buffer.cpp
|
||||
+++ b/umd/vpu_driver/source/command/vpu_command_buffer.cpp
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "vpu_driver/source/command/vpu_command_buffer.hpp"
|
||||
#include "vpu_driver/source/command/vpu_copy_command.hpp"
|
||||
#include "vpu_driver/source/utilities/log.hpp"
|
||||
+#include <algorithm>
|
||||
|
||||
namespace VPU {
|
||||
|
||||
--
|
||||
2.43.0
|
||||
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
SUMMARY = "User Mode Driver for Intel® NPU device"
|
||||
HOMEPAGE = "https://github.com/intel/linux-npu-driver"
|
||||
LICENSE = "MIT & Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=7b256470048be42466f7d10e1d6482e6 \
|
||||
file://third-party-programs.txt;md5=0ae40d7f1ef3bbd509197e427fdd7e70 \
|
||||
file://third_party/vpux_elf/LICENSE;md5=5f51ea09f42b161b3013558e48d0fb20 \
|
||||
file://third_party/level-zero/LICENSE;md5=97957beb2f7808ffa247e5d93e6442cc \
|
||||
"
|
||||
|
||||
SRC_URI = "git://github.com/intel/linux-npu-driver.git;protocol=https;name=linux-npu-driver;branch=main;lfs=1 \
|
||||
git://github.com/openvinotoolkit/npu_plugin_elf.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/vpux_elf;name=vpux-elf;nobranch=1 \
|
||||
git://github.com/jbeder/yaml-cpp.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/yaml-cpp;name=yaml-cpp;nobranch=1 \
|
||||
git://github.com/intel/level-zero-npu-extensions.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/level-zero-npu-extensions;name=lzvext;nobranch=1 \
|
||||
git://github.com/google/googletest.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/googletest;name=googletest;nobranch=1 \
|
||||
git://github.com/oneapi-src/level-zero.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/level-zero;name=level-zero;nobranch=1 \
|
||||
file://0001-linux-npu-driver-fix-multilib-install-issue.patch \
|
||||
"
|
||||
|
||||
SRCREV_linux-npu-driver = "59845101f5445e66dcc691f4f8be6371700fbdf5"
|
||||
SRCREV_vpux-elf = "4b0a4a06ae09c0c3a973f8f18761c549ec2309eb"
|
||||
SRCREV_yaml-cpp = "f7320141120f720aecc4c32be25586e7da9eb978"
|
||||
SRCREV_lzvext = "8cf113bd4a4568f6555d81f316504d7ac3b82ee8"
|
||||
SRCREV_googletest = "b514bdc898e2951020cbdca1304b75f5950d1f59"
|
||||
SRCREV_level-zero = "e3b6efdd91d67bb03024b266094afabd39e213bf"
|
||||
SRCREV_FORMAT = "linux-npu-driver_vpux-elf_yaml-cpp_lzvext_googletest_level-zero"
|
||||
|
||||
inherit cmake
|
||||
|
||||
|
||||
# Fix warning _FORTIFY_SOURCE requires compiling with optimization (-O)
|
||||
EXTRA_OECMAKE += " -DCMAKE_BUILD_TYPE=Release "
|
||||
EXTRA_OECMAKE += " -DCMAKE_CXX_FLAGS_RELEASE=-O2 "
|
||||
|
||||
EXTRA_OECMAKE += " -DCMAKE_INSTALL_FIRMWARE_DIR=${nonarch_base_libdir}"
|
||||
EXTRA_OECMAKE += " -DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
|
||||
DEPENDS = "level-zero dpkg-native pkgconfig-native"
|
||||
|
||||
PACKAGES =+ "${PN}-firmware ${PN}-tests"
|
||||
|
||||
FILES:${PN}-firmware = "${nonarch_base_libdir}/firmware/updates/intel/vpu/*"
|
||||
FILES:${PN}-tests = "${bindir}"
|
||||
|
||||
INSANE_SKIP:${PN} += "buildpaths"
|
||||
INSANE_SKIP:${PN}-dbg += "buildpaths"
|
||||
INSANE_SKIP:${PN}-tests += "buildpaths"
|
||||
INSANE_SKIP:${PN}-firmware += "buildpaths"
|
||||
|
|
@ -1,54 +0,0 @@
|
|||
SUMMARY = "Intel® oneAPI DPC++/C++ Compiler runtime files"
|
||||
DESCRIPTION = "The Intel® oneAPI DPC++/C++ Compiler provides optimizations \
|
||||
that help your applications run faster on Intel® 64 architectures with support \
|
||||
for the latest C, C++, and SYCL language standards. This compiler produces \
|
||||
optimized code that can run significantly faster by taking advantage of the \
|
||||
ever-increasing core count and vector register width in Intel® Xeon® processors \
|
||||
and compatible processors."
|
||||
|
||||
HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
|
||||
|
||||
LICENSE = "EULA"
|
||||
|
||||
COMPILERMAINVER = "2024.0"
|
||||
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://opt/intel/oneapi/licensing/${COMPILERMAINVER}/licensing/${COMPILERMAINVER}/license.htm;md5=5ff64c6ff3ef98089ed69360e7a84c39 \
|
||||
"
|
||||
COMPILERDOTVER = "2024.0.0-49406"
|
||||
DEVUTILITVERSION = "2024.0-2024.0.0-49320"
|
||||
SRC_URI = " \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-dpcpp-cpp-runtime-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=dpcpp-runtime \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-dpcpp-cpp-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=dpcpp-common \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-runtime-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=compiler-shared-runtime \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-common-vars-${COMPILERDOTVER}_all.deb;subdir=${BPN};name=common-vars \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-openmp-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=openmp \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-openmp-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=openmp-common \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-common-licensing-${COMPILERMAINVER}-${COMPILERDOTVER}_all.deb;subdir=${BPN};name=license \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-dev-utilities-${DEVUTILITVERSION}_amd64.deb;subdir=${BPN};name=dev-utils \
|
||||
"
|
||||
|
||||
SRC_URI[dpcpp-runtime.sha256sum] = "e24f0ba69daf3f66ceaf23d5e632f183cdb90bac69f65407fdb4407fc9034f33"
|
||||
SRC_URI[dpcpp-common.sha256sum] = "f5a3db6a725598224edf1099260955aee3e36beadcaed2af5b8b453e873a82fa"
|
||||
SRC_URI[compiler-shared-runtime.sha256sum] = "bce010cbe076259ddd3feb8e69792869e22fccd5b4e2c9af9e815826f2c1a394"
|
||||
SRC_URI[common-vars.sha256sum] = "368553c99db1b52060b8225355336778be0b00e5991d0f769c42f891c6328750"
|
||||
SRC_URI[openmp.sha256sum] = "154ff1e81adfdc872ba1d47bd860de70d62188417c7128422435dfd0ceca62fe"
|
||||
SRC_URI[openmp-common.sha256sum] = "8217001d78311cbef97dd139e684c6767932b532309c3843ba57d7894d15c07d"
|
||||
SRC_URI[license.sha256sum] = "9f9c8a12fc0bc82ab5b71e118e66745eff23f42224eba304068225b366cd74b6"
|
||||
SRC_URI[dev-utils.sha256sum] = "c675d960a5abca361cead9217d6e74adee499ee0a095c4e44092bd710b304d50"
|
||||
|
||||
S = "${UNPACKDIR}/${BPN}"
|
||||
|
||||
inherit bin_package
|
||||
|
||||
RDEPENDS:${PN} += "virtual-opencl-icd zlib tbb level-zero-loader bash tcsh"
|
||||
SKIP_FILEDEPS:${PN} = '1'
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
|
||||
# doesn't have GNU_HASH (didn't pass LDFLAGS?)
|
||||
INSANE_SKIP:${PN} += "textrel dev-so dev-elf ldflags already-stripped staticdev rpaths arch useless-rpaths file-rdeps"
|
||||
|
||||
FILES_SOLIBSDEV = ""
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
SUMMARY = "Intel® oneAPI DPC++/C++ Compiler"
|
||||
DESCRIPTION = "The Intel® oneAPI DPC++/C++ Compiler provides optimizations \
|
||||
that help your applications run faster on Intel® 64 architectures with support \
|
||||
for the latest C, C++, and SYCL language standards. This compiler produces \
|
||||
optimized code that can run significantly faster by taking advantage of the \
|
||||
ever-increasing core count and vector register width in Intel® Xeon® processors \
|
||||
and compatible processors."
|
||||
|
||||
HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
|
||||
|
||||
LICENSE = "EULA"
|
||||
|
||||
COMPILERMAINVER = "2024.0"
|
||||
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://opt/intel/oneapi/compiler/${COMPILERMAINVER}/share/doc/compiler/credist.txt;md5=b41f55af9f479b9570fc35b955d5ba1a \
|
||||
"
|
||||
|
||||
SRC_URI = " \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-dpcpp-cpp-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=icx-compiler \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=compiler-linker \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=shared-common \
|
||||
"
|
||||
|
||||
SRC_URI[icx-compiler.sha256sum] = "0dcbac766d5a1519d4cf393f5a85e71d19024fef65f77638f3f849796b62cd82"
|
||||
SRC_URI[compiler-linker.sha256sum] = "e00faea6d797934d62143e4aa70b727ce30f80fdf30769d22122b3051140c236"
|
||||
SRC_URI[shared-common.sha256sum] = "cf490a4a790f349da79e618359598d3b32312ca3b2639e5d4c84e1cfa2745558"
|
||||
|
||||
S = "${UNPACKDIR}/${BPN}"
|
||||
|
||||
inherit bin_package
|
||||
|
||||
RDEPENDS:${PN} += "intel-oneapi-dpcpp-cpp-runtime"
|
||||
SKIP_FILEDEPS:${PN} = '1'
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
|
||||
# doesn't have GNU_HASH (didn't pass LDFLAGS?)
|
||||
INSANE_SKIP:${PN} += "textrel dev-so dev-elf ldflags already-stripped file-rdeps staticdev rpaths arch useless-rpaths"
|
||||
|
||||
FILES_SOLIBSDEV = ""
|
||||
|
||||
EXCLUDE_FROM_SHLIBS = "1"
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
SUMMARY = "Collection of high-performance ray tracing kernels"
|
||||
DESCRIPTION = "A collection of high-performance ray tracing kernels \
|
||||
intended to graphics application engineers that want to improve the \
|
||||
performance of their application."
|
||||
HOMEPAGE = "https://github.com/embree/embree"
|
||||
|
||||
LICENSE = "Apache-2.0 & BSD-3-Clause"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
|
||||
file://third-party-programs.txt;md5=f989f5b74cfff0d45d3ccf0e1366cbdc \
|
||||
file://common/math/transcendental.h;beginline=6;endline=8;md5=73380bb2ab6613b30b8464f114bd0ca8"
|
||||
|
||||
inherit pkgconfig cmake
|
||||
|
||||
SRC_URI = "git://github.com/embree/embree.git;protocol=https;branch=master"
|
||||
SRCREV = "5730b150471602d6dc02d9b7d8a4a6ce9ceffe16"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
DEPENDS = "tbb jpeg libpng glfw ispc-native"
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DEMBREE_IGNORE_CMAKE_CXX_FLAGS=OFF \
|
||||
-DEMBREE_MAX_ISA=DEFAULT \
|
||||
-DEMBREE_TUTORIALS=OFF \
|
||||
-DEMBREE_ISPC_SUPPORT=ON \
|
||||
-DEMBREE_ZIP_MODE=OFF \
|
||||
"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
DESCRIPTION = "Intel® Integrated Performance Primitives are production-ready \
|
||||
building blocks for cross-platform performance. Develop high-performance vision, \
|
||||
signal, security, and storage applications with this multithreaded software library."
|
||||
HOMEPAGE = "https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/ipp.html"
|
||||
|
||||
LICENSE = "ISSL"
|
||||
|
||||
MAXVER = "2021.10"
|
||||
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://opt/intel/oneapi/ipp/${MAXVER}/share/doc/ipp/licensing/license.txt;md5=d7cdc92ed6c4de1263da879599ddc3e2 \
|
||||
file://opt/intel/oneapi/ipp/${MAXVER}/share/doc/ipp/licensing/third-party-programs.txt;md5=22bd13987911dcf790907041b43081f3 \
|
||||
"
|
||||
SRC_URI = " \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-${MAXVER}-${PV}_amd64.deb;subdir=${BPN};name=ipp \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-common-devel-${MAXVER}-${PV}_all.deb;subdir=${BPN};name=headers \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-common-${MAXVER}-${PV}_all.deb;subdir=${BPN};name=env \
|
||||
"
|
||||
|
||||
SRC_URI[ipp.sha256sum] = "b51e45c6e691aa46c7136b0ab61f5abe346388433e017a30cf53fd23e92bea07"
|
||||
SRC_URI[headers.sha256sum] = "342f37ab2f82bc9f4498435f848ee660591c2488b44d988bf6ee96b2a71fd005"
|
||||
SRC_URI[env.sha256sum] = "731e8c28a3b8b757730cd874d0941de2eb744856128f24ade59d36c12b415bf6"
|
||||
|
||||
S = "${UNPACKDIR}/${BPN}"
|
||||
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
inherit bin_package
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
INHIBIT_DEFAULT_DEPS = ""
|
||||
|
||||
RDEPENDS:${PN} += "tbb setup-intel-oneapi-env"
|
||||
INSANE_SKIP:${PN} += "ldflags dev-so"
|
||||
|
|
@ -1,74 +0,0 @@
|
|||
SUMMARY = "Intel® oneAPI Math Kernel Library (oneMKL)"
|
||||
DESCRIPTION = "The Intel® oneAPI Math Kernel Library (oneMKL) is a computing \
|
||||
math library of highly optimized and extensively parallelized routines \
|
||||
for applications that require maximum performance. oneMKL contains \
|
||||
the high-performance optimizations from the full Intel® Math Kernel Library \
|
||||
for CPU architectures (with C/Fortran programming language interfaces)\
|
||||
and adds to them a set of DPC++ programming language interfaces for \
|
||||
achieving performance on various CPU architectures \
|
||||
and Intel Graphics Technology for certain key functionalities."
|
||||
HOMEPAGE = "https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html"
|
||||
|
||||
LICENSE = "ISSL"
|
||||
|
||||
MKLMAINVER = "2024.0"
|
||||
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/license.txt;md5=8510d21bf355a76e378c3216c3929ccd \
|
||||
file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-benchmarks.txt;md5=cb98e1a1f14c05ea85a979ea8982e7a4 \
|
||||
file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-ipp.txt;md5=a4b2bf15e38f5c1267cdafed18bc0b09 \
|
||||
file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-openmp.txt;md5=6b3c1aa2a11393060074c0346ce21e49 \
|
||||
file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-safestring.txt;md5=c3aeee91c6d35a0f0753aed6c2633b82 \
|
||||
file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs.txt;md5=27de873e4084d62530fe828406b33ca9 \
|
||||
"
|
||||
|
||||
SRC_URI = " \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-${MKLMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=runtime \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-common-devel-${MKLMAINVER}-${PV}_all.deb;subdir=${BPN};name=common-devel \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-devel-${MKLMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=devel \
|
||||
https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-common-${MKLMAINVER}-${PV}_all.deb;subdir=${BPN};name=common-vars \
|
||||
"
|
||||
|
||||
SRC_URI[runtime.sha256sum] = "10a86e24051d6ef4a80fd839c570e629190638a3c0ac9bcca99ab855f534b959"
|
||||
SRC_URI[common-devel.sha256sum] = "adbf0ea946f63946d29b7f9c750c38a42ea7a65d8c81655b268aa2c7bb908192"
|
||||
SRC_URI[devel.sha256sum] = "fab2a6f15e18bfd9b4d425f2703e4e98928c57f52c4feebc9ed886f097062e84"
|
||||
SRC_URI[common-vars.sha256sum] = "ec2b67813739fa4a2895f63479a41acba2174afe2d0cb8a0c1c9119d1317d8ef"
|
||||
|
||||
S = "${UNPACKDIR}/${BPN}"
|
||||
|
||||
inherit bin_package
|
||||
|
||||
do_install:append () {
|
||||
install -d ${D}${bindir}
|
||||
(cd ${D}${bindir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/bin/* .)
|
||||
install -d ${D}${libdir}
|
||||
(cd ${D}${libdir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/intel64/*.so* .)
|
||||
(cd ${D}${libdir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/intel64/*.a* .)
|
||||
install -d ${D}${libdir}/pkgconfig
|
||||
(cd ${D}${libdir}/pkgconfig ; ln -s ../../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/pkgconfig/* .)
|
||||
install -d ${D}${libdir}/cmake
|
||||
(cd ${D}${libdir}/cmake ; ln -s ../../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/cmake/* .)
|
||||
|
||||
install -d ${D}${includedir}
|
||||
find ${D}/opt/intel/oneapi/mkl/${MKLMAINVER}/include/ -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | while read srcdir; do
|
||||
install -d ${D}${includedir}/$srcdir
|
||||
(cd ${D}${includedir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/include/$srcdir/* ./$srcdir/)
|
||||
done
|
||||
|
||||
find ${D}/opt/intel/oneapi/mkl/${MKLMAINVER}/include/ -mindepth 1 -maxdepth 1 -type f -printf '%f\n' | while read srcfile; do
|
||||
(cd ${D}${includedir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/include/$srcfile .)
|
||||
done
|
||||
}
|
||||
|
||||
AUTO_LIBNAME_PKGS = ""
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
|
||||
RDEPENDS:${PN} += "bash tbb intel-oneapi-dpcpp-cpp-runtime setup-intel-oneapi-env virtual-opencl-icd"
|
||||
INSANE_SKIP:${PN} = "ldflags textrel dev-so staticdev arch already-stripped"
|
||||
|
||||
FILES:${PN}-staticdev += "/opt/intel/oneapi/mkl/${MKLMAINVER}/lib/*.a*"
|
||||
|
||||
SKIP_FILEDEPS:${PN} = '1'
|
||||
|
||||
SYSROOT_DIRS += "/opt"
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
SUMMARY = "Intel® Open Image Denoise"
|
||||
DESCRIPTION = "Intel Open Image Denoise is an open source library of \
|
||||
high-performance, high-quality denoising filters for images \
|
||||
rendered with ray tracing. Intel Open Image Denoise is part \
|
||||
of the Intel® oneAPI Rendering Toolkit"
|
||||
HOMEPAGE = "https://www.openimagedenoise.org/"
|
||||
|
||||
LICENSE = "Apache-2.0 & BSD-3-Clause"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
|
||||
file://external/mkl-dnn/LICENSE;md5=b48e3de3bfd47c27882a0d85b20823f5 \
|
||||
file://external/mkl-dnn/src/cpu/x64/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
|
||||
file://external/mkl-dnn/src/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
|
||||
file://weights/LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
|
||||
|
||||
SRC_URI = "https://github.com/OpenImageDenoise/${BPN}/releases/download/v${PV}/${BP}.src.tar.gz\
|
||||
"
|
||||
SRC_URI[sha256sum] = "ce144ba582ff36563d9442ee07fa2a4d249bc85aa93e5b25fc527ff4ee755ed6"
|
||||
|
||||
inherit cmake
|
||||
|
||||
DEPENDS += "tbb ispc-native"
|
||||
|
||||
do_install:append() {
|
||||
chrpath -d ${D}${bindir}/* ${D}${libdir}/*${SOLIBS}
|
||||
}
|
||||
|
||||
UPSTREAM_CHECK_URI = "https://github.com/OpenImageDenoise/oidn/releases"
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
SUMMARY = "Intel(R) Open Volume Kernel Library"
|
||||
DESCRIPTION = "Intel(R) Open Volume Kernel Library (Intel(R) Open VKL) is a \
|
||||
collection of high-performance volume computation kernels. The target users \
|
||||
of Open VKL are graphics application engineers who want to improve the \
|
||||
performance of their volume rendering applications by leveraging Open VKL’s \
|
||||
performance-optimized kernels, which include volume traversal and sampling \
|
||||
functionality for a variety of volumetric data formats. The kernels are optimized \
|
||||
for the latest Intel(R) processors with support for SSE, AVX, AVX2, and AVX-512 \
|
||||
instructions."
|
||||
HOMEPAGE = "https://www.openvkl.org/"
|
||||
|
||||
LICENSE = "Apache-2.0 & BSD-3-Clause & MIT & Zlib"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
|
||||
file://third-party-programs.txt;md5=69ec7caf49616c471161b921f53d5ec0 \
|
||||
file://testing/external/half.hpp;beginline=1;endline=17;md5=4b60058493630c3bd0ef145470f04a7b"
|
||||
|
||||
inherit pkgconfig cmake
|
||||
|
||||
SRC_URI = "git://github.com/openvkl/openvkl.git;protocol=https;branch=master \
|
||||
"
|
||||
SRCREV = "8c6ba526813b871a624cb9d73d4cbb689ac7f4ce"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
DEPENDS = "ispc ispc-native rkcommon embree"
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
"
|
||||
EXTRA_OECMAKE:intel-corei7-64 += " \
|
||||
-DOPENVKL_ISA_AVX=OFF \
|
||||
-DOPENVKL_ISA_AVX2=OFF \
|
||||
-DOPENVKL_ISA_AVX512SKX=OFF \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
"
|
||||
|
||||
PACKAGES =+ "${PN}-examples"
|
||||
FILES:${PN}-examples = "\
|
||||
${bindir} \
|
||||
"
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
From 09e6b6615d9a16e9555eff9d569356e32bd26aa4 Mon Sep 17 00:00:00 2001
|
||||
From: benradel <86351445+benradel@users.noreply.github.com>
|
||||
Date: Wed, 23 Jun 2021 11:56:03 +0200
|
||||
Subject: [PATCH] Fix GCC11 Compile Error in benchmark_register.h
|
||||
|
||||
Fix GCC11 compilation error due to missing header "limits" in benchmark_register.h
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/ospray/ospray/pull/484/files]
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
---
|
||||
apps/common/external/benchmark/src/benchmark_register.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/apps/common/external/benchmark/src/benchmark_register.h b/apps/common/external/benchmark/src/benchmark_register.h
|
||||
index 61377d742..8f1bb7795 100644
|
||||
--- a/apps/common/external/benchmark/src/benchmark_register.h
|
||||
+++ b/apps/common/external/benchmark/src/benchmark_register.h
|
||||
@@ -2,6 +2,7 @@
|
||||
#define BENCHMARK_REGISTER_H
|
||||
|
||||
#include <vector>
|
||||
+#include <limits>
|
||||
|
||||
#include "check.h"
|
||||
|
||||
--
|
||||
2.32.0
|
||||
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
SUMMARY = "Intel OSPray, Ray Tracing based Rendering Engine"
|
||||
DESCRIPTION = "Intel OSPRay is an open source, scalable, and portable ray \
|
||||
tracing engine for high-performance, high-fidelity visualization on \
|
||||
Intel Architecture CPUs."
|
||||
HOMEPAGE = "https://www.ospray.org/"
|
||||
|
||||
LICENSE = "Apache-2.0 & BSD-3-Clause & MIT & Zlib"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=1dece7821bf3fd70fe1309eaa37d52a2 \
|
||||
file://third-party-programs.txt;md5=e37b77e3bd997abccc359c710fb1f1db \
|
||||
"
|
||||
|
||||
inherit pkgconfig cmake
|
||||
|
||||
SRC_URI = "git://github.com/ospray/ospray.git;protocol=https;branch=master;name=ospray \
|
||||
git://github.com/nothings/stb;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/apps/common/external/stb_image/stb;name=stb;nobranch=1 \
|
||||
"
|
||||
SRCREV_ospray ?= "85af2929937d516997451cbd52d352cf93125ed2"
|
||||
SRCREV_stb ?= "af1a5bc36dff44f0a019df21c271db697d51f1a6"
|
||||
SRCREV_FORMAT = "ospray_stb"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
|
||||
DEPENDS = "rkcommon ispc ispc-native openvkl embree"
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
|
||||
-DOSPRAY_ENABLE_APPS_BENCHMARK=OFF \
|
||||
-DOSPRAY_ENABLE_APPS_TESTING=OFF \
|
||||
-DOSPRAY_ENABLE_APPS_EXAMPLES=OFF \
|
||||
"
|
||||
|
||||
PACKAGES =+ "${PN}-apps"
|
||||
FILES:${PN}-apps = "\
|
||||
${bindir} \
|
||||
"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
From f0885d7d97e98ad586bbacf5edf7fa4022b425b9 Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Mon, 11 Aug 2025 14:00:50 +0800
|
||||
Subject: [PATCH] use fully-qualified rkcommon::math::rsqrt to avoid overload
|
||||
ambiguity
|
||||
|
||||
Explicitly calling rkcommon::math::rsqrt() prevents conflict with the
|
||||
standard rsqrt(double) declared in bits/mathcalls.h, fixing the build
|
||||
error in Quaternion tests.
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/RenderKit/rkcommon/pull/16]
|
||||
---
|
||||
tests/math/test_Quaternion.cpp | 2 +-
|
||||
tests/math/test_rkmath.cpp | 4 ++--
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/tests/math/test_Quaternion.cpp b/tests/math/test_Quaternion.cpp
|
||||
index 760d815..f527824 100644
|
||||
--- a/tests/math/test_Quaternion.cpp
|
||||
+++ b/tests/math/test_Quaternion.cpp
|
||||
@@ -187,7 +187,7 @@ template <typename T>
|
||||
inline void test_slerp()
|
||||
{
|
||||
typename T::Scalar two = 2;
|
||||
- REQUIRE(CmpT(slerp(.5f, T(1, 0, 0, 0), T(0, 1, 0, 0)), T(rsqrt(two), rsqrt(two), 0, 0)));
|
||||
+ REQUIRE(CmpT(slerp(.5f, T(1, 0, 0, 0), T(0, 1, 0, 0)), T(rkcommon::math::rsqrt(two), rkcommon::math::rsqrt(two), 0, 0)));
|
||||
}
|
||||
|
||||
TEST_CASE("Quaternion functions", "[quat]")
|
||||
diff --git a/tests/math/test_rkmath.cpp b/tests/math/test_rkmath.cpp
|
||||
index 7f66532..fd18df4 100644
|
||||
--- a/tests/math/test_rkmath.cpp
|
||||
+++ b/tests/math/test_rkmath.cpp
|
||||
@@ -49,8 +49,8 @@ TEST_CASE("rkmath rcp_safe function", "[rkmath]")
|
||||
template <typename T>
|
||||
inline void test_rsqrt()
|
||||
{
|
||||
- REQUIRE(CmpT<T>(rsqrt(T(1)), T(1)));
|
||||
- REQUIRE(CmpT<T>(rsqrt(T(4)), T(.5)));
|
||||
+ REQUIRE(CmpT<T>(rkcommon::math::rsqrt(T(1)), T(1)));
|
||||
+ REQUIRE(CmpT<T>(rkcommon::math::rsqrt(T(4)), T(.5)));
|
||||
}
|
||||
|
||||
TEST_CASE("rkmath rsqrt function", "[rkmath]")
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
SUMMARY = "rkcommon - C++/CMake infrastructure"
|
||||
DESCRIPTION = "A common set of C++ infrastructure and CMake utilities \
|
||||
used by various components of Intel® oneAPI Rendering Toolkit."
|
||||
HOMEPAGE = "https://github.com/ospray/rkcommon"
|
||||
|
||||
LICENSE = "Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
|
||||
|
||||
inherit pkgconfig cmake
|
||||
|
||||
SRC_URI = "git://github.com/ospray/rkcommon.git;protocol=https;branch=master \
|
||||
file://0001-use-fully-qualified-rkcommon-math-rsqrt-to-avoid-ove.patch \
|
||||
"
|
||||
SRCREV = "4a00047ae5a3ac705b6b33b4a7574588d91e7953"
|
||||
|
||||
DEPENDS = "tbb"
|
||||
|
||||
EXTRA_OECMAKE += " -DBUILD_TESTING=OFF"
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
From ef56be8e6bf2ea273cbeb960f3131164e7b517b6 Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Wed, 18 May 2022 12:24:03 +0800
|
||||
Subject: [PATCH] CMakeLists: disable Werror
|
||||
|
||||
gcc12 highlights minor warnings that cause the build to fail. Ignore
|
||||
those until they aren't fixed upstream.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 418483f7..c019fea0 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -146,7 +146,7 @@ else()
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -fno-strict-aliasing -D_FORTIFY_SOURCE=2")
|
||||
if(LNX_BUILD)
|
||||
#A few warnings yet to resolve under esx
|
||||
- set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Werror")
|
||||
+ #set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Werror")
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Werror")
|
||||
endif()
|
||||
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -ggdb")
|
||||
@@ -791,4 +791,4 @@ if(ESX_BUILD)
|
||||
include(CMake/esx.cmake)
|
||||
endif()
|
||||
|
||||
-add_subdirectory(src/os/nvm_api_sample)
|
||||
\ No newline at end of file
|
||||
+add_subdirectory(src/os/nvm_api_sample)
|
||||
--
|
||||
2.35.3
|
||||
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
From 5b8b59a18f4a54ba912faad861f0af3fdcf127c6 Mon Sep 17 00:00:00 2001
|
||||
From: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
Date: Wed, 10 Sep 2025 21:15:53 +0800
|
||||
Subject: [PATCH] CMakeLists: fix build failure by removing -pie from shared
|
||||
library targets
|
||||
|
||||
With CMake 4.1.0 the build of libipmctl started failing with:
|
||||
|
||||
error: undefined reference to `main` in *.S
|
||||
|
||||
- `-pie` is only valid when linking executables (PIE), not shared
|
||||
libraries.
|
||||
- When applied to a shared library, the linker expects a `main`
|
||||
symbol, causing the undefined reference error.
|
||||
- Remove `-pie` from shared libraries linker flag
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/intel/ipmctl/pull/221]
|
||||
|
||||
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1c07e682..d7aab78f 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -156,7 +156,7 @@ endif()
|
||||
if(UNIX)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNO_MSABI_VA_FUNCS -std=c99 -Wformat -Wformat-security -D_XOPEN_SOURCE=500 -Wall -Wfatal-errors -MMD -fPIC -fno-strict-aliasing")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wformat -Wformat-security -D_XOPEN_SOURCE=500 -Drestrict=__restrict__ -Wall -Wfatal-errors -MMD -fPIC -fno-strict-aliasing")
|
||||
- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -z noexecstack -z relro -z now -pie")
|
||||
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -z noexecstack -z relro -z now")
|
||||
elseif(MSVC)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /GS /DynamicBase /sdl")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GS /DynamicBase /sdl")
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
Subject: [PATCH] [PATCH]: ignore static asserts and null define for os and ut
|
||||
builds
|
||||
Upstream-Status: Backport
|
||||
Signed-off-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
|
||||
---
|
||||
MdePkg/Include/Base.h | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
Index: edk2/MdePkg/Include/Base.h
|
||||
===================================================================
|
||||
--- edk2.orig/MdePkg/Include/Base.h
|
||||
+++ edk2/MdePkg/Include/Base.h
|
||||
@@ -316,8 +316,12 @@ struct _LIST_ENTRY {
|
||||
#define NULL __null
|
||||
#endif
|
||||
#else
|
||||
+#ifndef OS_BUILD
|
||||
+#ifndef UNIT_TEST_UEFI_BUILD
|
||||
#define NULL ((VOID *) 0)
|
||||
#endif
|
||||
+#endif
|
||||
+#endif
|
||||
|
||||
//
|
||||
// Null character
|
||||
@@ -813,6 +817,8 @@ typedef UINTN *BASE_LIST;
|
||||
// Section 2.3.1 of the UEFI 2.3 Specification.
|
||||
//
|
||||
|
||||
+#ifndef OS_BUILD
|
||||
+#ifndef UNIT_TEST_UEFI_BUILD
|
||||
STATIC_ASSERT (sizeof (BOOLEAN) == 1, "sizeof (BOOLEAN) does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (sizeof (INT8) == 1, "sizeof (INT8) does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (sizeof (UINT8) == 1, "sizeof (UINT8) does not meet UEFI Specification Data Type requirements");
|
||||
@@ -841,7 +847,8 @@ STATIC_ASSERT (ALIGNOF (CHAR16) == size
|
||||
STATIC_ASSERT (ALIGNOF (INTN) == sizeof (INTN), "Alignment of INTN does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (ALIGNOF (UINTN) == sizeof (UINTN), "Alignment of UINTN does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (ALIGNOF (VOID *) == sizeof (VOID *), "Alignment of VOID * does not meet UEFI Specification Data Type requirements");
|
||||
-
|
||||
+#endif
|
||||
+#endif
|
||||
//
|
||||
// The following three enum types are used to verify that the compiler
|
||||
// configuration for enum types is compliant with Section 2.3.1 of the
|
||||
@@ -861,6 +868,8 @@ typedef enum {
|
||||
__VerifyInt32EnumValue = 0x7fffffff
|
||||
} __VERIFY_INT32_ENUM_SIZE;
|
||||
|
||||
+#ifndef OS_BUILD
|
||||
+#ifndef UNIT_TEST_UEFI_BUILD
|
||||
STATIC_ASSERT (sizeof (__VERIFY_UINT8_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (sizeof (__VERIFY_UINT16_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (sizeof (__VERIFY_INT32_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
|
||||
@@ -868,6 +877,8 @@ STATIC_ASSERT (sizeof (__VERIFY_INT32_EN
|
||||
STATIC_ASSERT (ALIGNOF (__VERIFY_UINT8_ENUM_SIZE) == sizeof (__VERIFY_UINT8_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (ALIGNOF (__VERIFY_UINT16_ENUM_SIZE) == sizeof (__VERIFY_UINT16_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
|
||||
STATIC_ASSERT (ALIGNOF (__VERIFY_INT32_ENUM_SIZE) == sizeof (__VERIFY_INT32_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
|
||||
+#endif
|
||||
+#endif
|
||||
|
||||
/**
|
||||
Macro that returns a pointer to the data structure that contains a specified field of
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
SUMMARY = "Utility for managing Intel Optane DC persistent memory modules"
|
||||
DESCRIPTION = "Utility for configuring and managing Intel Optane Persistent \
|
||||
Memory modules (PMem). It supports functionality to: \
|
||||
Discover DCPMMs on the platform. \
|
||||
Provision the platform memory configuration. \
|
||||
View and update the firmware on DCPMMs. \
|
||||
Configure data-at-rest security on DCPMMs. \
|
||||
Track health and performance of DCPMMs. \
|
||||
Debug and troubleshoot DCPMMs."
|
||||
|
||||
HOMEPAGE = "https://github.com/intel/ipmctl"
|
||||
BUGTRACKER = "https://github.com/intel/ipmctl/issues"
|
||||
|
||||
LICENSE = "BSD-3-Clause | BSD-2-Clause"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=72b9da60da6219d612ce30b746a0fe71 \
|
||||
file://edk2/License.txt;md5=6123e5bf044a66db96c4ce88a36b2d08"
|
||||
|
||||
SRC_URI = "git://github.com/intel/ipmctl.git;protocol=https;branch=master_3_0;name=ipmctl; \
|
||||
git://github.com/tianocore/edk2.git;protocol=https;name=edk2;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/edk2;branch=master \
|
||||
file://0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch;patchdir=edk2 \
|
||||
file://0001-CMakeLists-disable-Werror.patch \
|
||||
file://0001-CMakeLists-fix-build-failure-by-removing-pie-from-sh.patch \
|
||||
"
|
||||
|
||||
SRCREV_ipmctl = "a71f2fb1c90dd07f9862b71c789881132193e8f9"
|
||||
#tag edk2-stable202408
|
||||
SRCREV_edk2 = "b158dad150bf02879668f72ce306445250838201"
|
||||
SRCREV_FORMAT = "ipmctl_edk2"
|
||||
|
||||
inherit cmake dos2unix
|
||||
|
||||
DEPENDS = "ndctl pkgconfig-native"
|
||||
|
||||
EXTRA_OECMAKE = "-DRELEASE=ON \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
"
|
||||
|
||||
do_configure:prepend() {
|
||||
for dir in BaseTools MdeModulePkg MdePkg ShellPkg ; do
|
||||
ln -sf edk2/${dir} ${S}
|
||||
done
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
# Remove /var/log/ipmctl as anything created in /var/log will not be
|
||||
# available when tmpfs is mounted at /var/volatile/log.
|
||||
rm -rf ${D}${localstatedir}/log
|
||||
}
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
SUMMARY = "OpenVINO(TM) Toolkit - Deep Learning Deployment Toolkit"
|
||||
HOMEPAGE = "https://github.com/opencv/dldt"
|
||||
DESCRIPTION = "This toolkit allows developers to deploy pre-trained \
|
||||
deep learning models through a high-level C++ Inference Engine API \
|
||||
integrated with application logic."
|
||||
|
||||
SRC_URI = "git://github.com/opencv/dldt.git;protocol=git;branch=2019 \
|
||||
https://download.01.org/opencv/2019/openvinotoolkit/R2/inference_engine/firmware_ma2450_676.zip;name=ma2450 \
|
||||
https://download.01.org/opencv/2019/openvinotoolkit/R2/inference_engine/firmware_ma2x8x_mdk_R8_9.zip;name=ma2x8x \
|
||||
file://0001-R2-Build-fixes.patch;patchdir=../ \
|
||||
file://0002-R2-Install-DLDT-headers-libs-sample-Apps.patch;patchdir=../ \
|
||||
file://0003-use-GNUInstallDirs-on-nix.patch;patchdir=../ \
|
||||
file://0003-Supply-firmware-at-build-time.patch;patchdir=../ \
|
||||
file://0004-disable-werror.patch;patchdir=../ \
|
||||
file://0005-point-to-correct-location-of-ngraph-headers.patch;patchdir=../ \
|
||||
file://0001-Install-clDNN-plugin-to-CMAKE_INSTALL_LIBDIR.patch;patchdir=../ \
|
||||
file://run-ptest \
|
||||
"
|
||||
SRCREV = "ba6e22b1b5ee4cbefcc30e8d9493cddb0bb3dfdf"
|
||||
|
||||
SRC_URI[ma2450.md5sum] = "a241a063db7eaa3de70ebf89817960e0"
|
||||
SRC_URI[ma2450.sha256sum] = "7fb1aa10c0fde8315fe2af65356a00f09f030d811adddc98731ec28b35368786"
|
||||
|
||||
SRC_URI[ma2x8x.md5sum] = "cebebec8d05c70c3d69ed5ceaa11a06b"
|
||||
SRC_URI[ma2x8x.sha256sum] = "93640eb13e235d3f71a83cd503c36ff8a63235349e1f528d9030eca417ba8c1e"
|
||||
|
||||
LICENSE = "Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://../LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
|
||||
|
||||
inherit cmake ptest
|
||||
|
||||
S = "${WORKDIR}/git/inference-engine"
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DVPU_FIRMWARE_MA2450_FILE=../mvnc/MvNCAPI-ma2450.mvcmd \
|
||||
-DVPU_FIRMWARE_MA2X8X_FILE=../mvnc/MvNCAPI-ma2x8x.mvcmd \
|
||||
-DENABLE_OPENCV=0 \
|
||||
-DENABLE_SAMPLES_CORE=1 \
|
||||
-DENABLE_PLUGIN_RPATH=0 \
|
||||
-DENABLE_GNA=0 \
|
||||
-DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
|
||||
-DTHREADING=TBB \
|
||||
-DCMAKE_INSTALL_LOCAL_ONLY=OFF \
|
||||
-DCMAKE_BUILD_TYPE=DebugWithRelInfo \
|
||||
-DNGRAPH_INCLUDES=${STAGING_INCDIR}/ngraph \
|
||||
-DENABLE_TESTS="${@bb.utils.contains('PTEST_ENABLED', '1', '1', '0', d)}" \
|
||||
-DBUILD_GMOCK=1 \
|
||||
-DBUILD_GTEST=0 \
|
||||
-DINSTALL_GMOCK=0 \
|
||||
-DINSTALL_GTEST=0 \
|
||||
"
|
||||
|
||||
DEPENDS += "libusb1 \
|
||||
ade \
|
||||
mkl-dnn \
|
||||
opencv \
|
||||
pugixml \
|
||||
ngraph \
|
||||
tbb \
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'gflags', '0', d)} \
|
||||
"
|
||||
|
||||
COMPATIBLE_HOST = '(x86_64).*-linux'
|
||||
COMPATIBLE_HOST_libc-musl = "null"
|
||||
|
||||
PACKAGECONFIG ?= ""
|
||||
PACKAGECONFIG[opencl] = "-DENABLE_CLDNN=1, -DENABLE_CLDNN=0, opencl-icd-loader, opencl-icd-loader intel-compute-runtime"
|
||||
|
||||
do_install_ptest_base_prepend() {
|
||||
# While not a Makefile based project that strictly falls into the category of
|
||||
# what ptest helps with, adding the unit tests here as ptest would help.
|
||||
# Create a dummy Makefile so installation doesn't fail.
|
||||
touch ${WORKDIR}/Makefile
|
||||
mv ${D}${bindir}/InferenceEngineUnitTests ${D}${PTEST_PATH}/
|
||||
}
|
||||
|
||||
# Move inference engine samples into a separate package
|
||||
PACKAGES =+ "${PN}-samples"
|
||||
|
||||
FILES_${PN}-dev = "${includedir} \
|
||||
${libdir}/cmake \
|
||||
${libdir}/libinference_engine.so \
|
||||
"
|
||||
|
||||
FILES_${PN} += "${libdir}/lib*${SOLIBSDEV} \
|
||||
${datadir}/openvino \
|
||||
"
|
||||
|
||||
FILES_${PN}-samples = "${bindir}"
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
From 1cc6ee3a1df0133e2ea7a4442bd05598a89958f6 Mon Sep 17 00:00:00 2001
|
||||
From: Chin Huat Ang <chin.huat.ang@intel.com>
|
||||
Date: Mon, 30 Sep 2019 13:50:45 +0800
|
||||
Subject: [PATCH] Install clDNN plugin to CMAKE_INSTALL_LIBDIR
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
|
||||
---
|
||||
inference-engine/src/cldnn_engine/CMakeLists.txt | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/inference-engine/src/cldnn_engine/CMakeLists.txt b/inference-engine/src/cldnn_engine/CMakeLists.txt
|
||||
index 211f660..76c8086 100644
|
||||
--- a/inference-engine/src/cldnn_engine/CMakeLists.txt
|
||||
+++ b/inference-engine/src/cldnn_engine/CMakeLists.txt
|
||||
@@ -23,6 +23,8 @@ target_include_directories(${TARGET_NAME} PRIVATE
|
||||
${IE_MAIN_SOURCE_DIR}/src/inference_engine
|
||||
${IE_MAIN_SOURCE_DIR}/thirdparty/pugixml/src)
|
||||
|
||||
+install(TARGETS ${TARGET_NAME} EXPORT ${TARGET_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
+
|
||||
# copy default global xml file describing the custom kernels and the *.cl files
|
||||
|
||||
add_custom_command(TARGET ${TARGET_NAME} POST_BUILD
|
||||
--
|
||||
2.7.4
|
||||
|
||||
|
|
@ -0,0 +1,236 @@
|
|||
From 3d7373487eacf4e3283183bbc9a771cb4b97c7ab Mon Sep 17 00:00:00 2001
|
||||
From: Erin Park <erin.park@intel.com>
|
||||
Date: Wed, 11 Sep 2019 09:04:23 -0700
|
||||
Subject: [PATCH] R2 Build fixes
|
||||
|
||||
-linux os-release name search
|
||||
-Use system libraries for (OMP/TBB)
|
||||
-Use system libraries for ngraph, ade, puigxml, gflags
|
||||
-Turn on ENABLE_PYTHON
|
||||
|
||||
Upstream-Status: Pending [Taken from Clear Linux]
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
inference-engine/CMakeLists.txt | 4 +++
|
||||
inference-engine/cmake/dependencies.cmake | 32 +++++++++++--------
|
||||
.../cmake/developer_package.cmake | 12 +++----
|
||||
inference-engine/cmake/ie_parallel.cmake | 10 +++---
|
||||
inference-engine/cmake/linux_name.cmake | 2 +-
|
||||
inference-engine/samples/CMakeLists.txt | 2 --
|
||||
.../src/inference_engine/CMakeLists.txt | 5 +--
|
||||
inference-engine/thirdparty/CMakeLists.txt | 7 ----
|
||||
8 files changed, 38 insertions(+), 36 deletions(-)
|
||||
|
||||
diff --git a/inference-engine/CMakeLists.txt b/inference-engine/CMakeLists.txt
|
||||
index 0d449c9..5ee8f53 100644
|
||||
--- a/inference-engine/CMakeLists.txt
|
||||
+++ b/inference-engine/CMakeLists.txt
|
||||
@@ -59,6 +59,10 @@ add_cpplint_target(sample_cpplint
|
||||
EXCLUDE_PATTERNS "thirdparty/*" "pugixml/*")
|
||||
|
||||
if (ENABLE_PYTHON)
|
||||
+ set(InferenceEngine_DIR "${CMAKE_BINARY_DIR}")
|
||||
+
|
||||
+ #to be able to link
|
||||
+ set (LIB_FOLDER ${IE_MAIN_SOURCE_DIR}/${BIN_FOLDER}/${CMAKE_BUILD_TYPE}/lib)
|
||||
add_subdirectory(ie_bridges/python)
|
||||
endif()
|
||||
|
||||
diff --git a/inference-engine/cmake/dependencies.cmake b/inference-engine/cmake/dependencies.cmake
|
||||
index 00a5b8e..d493426 100644
|
||||
--- a/inference-engine/cmake/dependencies.cmake
|
||||
+++ b/inference-engine/cmake/dependencies.cmake
|
||||
@@ -71,11 +71,11 @@ if (WIN32)
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*")
|
||||
elseif(LINUX)
|
||||
- RESOLVE_DEPENDENCY(OMP
|
||||
- ARCHIVE_LIN "iomp.tgz"
|
||||
- TARGET_PATH "${TEMP}/omp"
|
||||
- ENVIRONMENT "OMP"
|
||||
- VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*")
|
||||
+# RESOLVE_DEPENDENCY(OMP
|
||||
+# ARCHIVE_LIN "iomp.tgz"
|
||||
+# TARGET_PATH "${TEMP}/omp"
|
||||
+# ENVIRONMENT "OMP"
|
||||
+# VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*")
|
||||
else(APPLE)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_MAC "iomp_20190130_mac.tgz"
|
||||
@@ -83,8 +83,11 @@ else(APPLE)
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*")
|
||||
endif()
|
||||
-log_rpath_from_dir(OMP "${OMP}/lib")
|
||||
-debug_message(STATUS "intel_omp=" ${OMP})
|
||||
+
|
||||
+if (OMP)
|
||||
+ log_rpath_from_dir(OMP "${OMP}/lib")
|
||||
+ debug_message(STATUS "intel_omp=" ${OMP})
|
||||
+endif ()
|
||||
endif ()
|
||||
|
||||
## TBB package
|
||||
@@ -97,10 +100,10 @@ if (WIN32)
|
||||
ENVIRONMENT "TBBROOT"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*")
|
||||
elseif(LINUX)
|
||||
- RESOLVE_DEPENDENCY(TBB
|
||||
- ARCHIVE_LIN "tbb2019_20181010_lin.tgz"
|
||||
- TARGET_PATH "${TEMP}/tbb"
|
||||
- ENVIRONMENT "TBBROOT")
|
||||
+# RESOLVE_DEPENDENCY(TBB
|
||||
+# ARCHIVE_LIN "tbb2019_20181010_lin.tgz"
|
||||
+# TARGET_PATH "${TEMP}/tbb"
|
||||
+# ENVIRONMENT "TBBROOT")
|
||||
else(APPLE)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_MAC "tbb2019_20190414_mac.tgz"
|
||||
@@ -108,8 +111,11 @@ else(APPLE)
|
||||
ENVIRONMENT "TBBROOT"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*")
|
||||
endif()
|
||||
-log_rpath_from_dir(TBB "${TBB}/lib")
|
||||
-debug_message(STATUS "tbb=" ${TBB})
|
||||
+
|
||||
+if (TBB)
|
||||
+ log_rpath_from_dir(TBB "${TBB}/lib")
|
||||
+ debug_message(STATUS "tbb=" ${TBB})
|
||||
+endif ()
|
||||
endif ()
|
||||
|
||||
if (ENABLE_OPENCV)
|
||||
diff --git a/inference-engine/cmake/developer_package.cmake b/inference-engine/cmake/developer_package.cmake
|
||||
index 52e0fef..06ba167 100644
|
||||
--- a/inference-engine/cmake/developer_package.cmake
|
||||
+++ b/inference-engine/cmake/developer_package.cmake
|
||||
@@ -95,12 +95,12 @@ if(NOT UNIX)
|
||||
set(LIBRARY_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER})
|
||||
set(LIBRARY_OUTPUT_PATH ${LIBRARY_OUTPUT_DIRECTORY}) # compatibility issue: linux uses LIBRARY_OUTPUT_PATH, windows uses LIBRARY_OUTPUT_DIRECTORY
|
||||
else()
|
||||
- set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION}/lib)
|
||||
- set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION}/lib)
|
||||
- set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION})
|
||||
- set(CMAKE_PDB_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION})
|
||||
- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION})
|
||||
- set(LIBRARY_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION}/lib)
|
||||
+ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION}/lib)
|
||||
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION}/lib)
|
||||
+ set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION})
|
||||
+ set(CMAKE_PDB_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION})
|
||||
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION})
|
||||
+ set(LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${BIN_FOLDER}/${IE_BUILD_CONFIGURATION}/lib)
|
||||
set(LIBRARY_OUTPUT_PATH ${LIBRARY_OUTPUT_DIRECTORY}/lib)
|
||||
endif()
|
||||
|
||||
diff --git a/inference-engine/cmake/ie_parallel.cmake b/inference-engine/cmake/ie_parallel.cmake
|
||||
index 8265701..9d4a884 100644
|
||||
--- a/inference-engine/cmake/ie_parallel.cmake
|
||||
+++ b/inference-engine/cmake/ie_parallel.cmake
|
||||
@@ -22,9 +22,9 @@ function(set_ie_threading_interface_for TARGET_NAME)
|
||||
endif ()
|
||||
|
||||
if (NOT TBB_INCLUDE_DIRS OR NOT TBB_LIBRARIES_RELEASE)
|
||||
- find_path(TBB_INCLUDE_DIRS tbb/tbb.h ${incl_path} NO_DEFAULT_PATH)
|
||||
- find_library(TBB_LIBRARIES_RELEASE tbb ${lib_rel_path} NO_DEFAULT_PATH)
|
||||
- find_library(TBB_LIBRARIES_DEBUG tbb_debug ${lib_dbg_path} NO_DEFAULT_PATH)
|
||||
+ find_path(TBB_INCLUDE_DIRS tbb/tbb.h)
|
||||
+ find_library(TBB_LIBRARIES_RELEASE tbb)
|
||||
+ find_library(TBB_LIBRARIES_DEBUG tbb)
|
||||
ext_message(STATUS "TBB include: ${TBB_INCLUDE_DIRS}")
|
||||
ext_message(STATUS "TBB Release lib: ${TBB_LIBRARIES_RELEASE}")
|
||||
ext_message(STATUS "TBB Debug lib: ${TBB_LIBRARIES_DEBUG}")
|
||||
@@ -78,8 +78,8 @@ function(set_ie_threading_interface_for TARGET_NAME)
|
||||
endif ()
|
||||
|
||||
if (NOT OMP_LIBRARIES_RELEASE)
|
||||
- find_library(OMP_LIBRARIES_RELEASE ${omp_lib_name} ${lib_rel_path} NO_DEFAULT_PATH)
|
||||
- find_library(OMP_LIBRARIES_DEBUG ${omp_lib_name} ${lib_dbg_path} NO_DEFAULT_PATH)
|
||||
+ find_library(OMP_LIBRARIES_RELEASE ${omp_lib_name})
|
||||
+ find_library(OMP_LIBRARIES_DEBUG ${omp_lib_name})
|
||||
ext_message(STATUS "OMP Release lib: ${OMP_LIBRARIES_RELEASE}")
|
||||
ext_message(STATUS "OMP Debug lib: ${OMP_LIBRARIES_DEBUG}")
|
||||
endif ()
|
||||
diff --git a/inference-engine/cmake/linux_name.cmake b/inference-engine/cmake/linux_name.cmake
|
||||
index 6713808..7e5e47a 100644
|
||||
--- a/inference-engine/cmake/linux_name.cmake
|
||||
+++ b/inference-engine/cmake/linux_name.cmake
|
||||
@@ -5,7 +5,7 @@
|
||||
if (LINUX)
|
||||
function(get_linux_name res_var)
|
||||
if (NOT EXISTS "/etc/lsb-release")
|
||||
- execute_process(COMMAND find -L /etc/ -maxdepth 1 -type f -name *-release -exec cat {} \;
|
||||
+ execute_process(COMMAND find /usr/lib/ /etc/ -maxdepth 1 -type f -name *-release -exec cat {} \;
|
||||
OUTPUT_VARIABLE release_data RESULT_VARIABLE result)
|
||||
set(name_regex "NAME=\"([^ \"\n]*).*\"\n")
|
||||
set(version_regex "VERSION=\"([0-9]+(\\.[0-9]+)?)[^\n]*\"")
|
||||
diff --git a/inference-engine/samples/CMakeLists.txt b/inference-engine/samples/CMakeLists.txt
|
||||
index d354f64..3802624 100644
|
||||
--- a/inference-engine/samples/CMakeLists.txt
|
||||
+++ b/inference-engine/samples/CMakeLists.txt
|
||||
@@ -91,8 +91,6 @@ set (GFLAGS_IS_SUBPROJECT TRUE)
|
||||
set (HAVE_SYS_STAT_H 1)
|
||||
set (HAVE_INTTYPES_H 1)
|
||||
|
||||
-add_subdirectory(thirdparty/gflags)
|
||||
-
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
|
||||
endif()
|
||||
diff --git a/inference-engine/src/inference_engine/CMakeLists.txt b/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
index f3514ed..37a0744 100644
|
||||
--- a/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
+++ b/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
@@ -97,12 +97,13 @@ target_include_directories(${TARGET_NAME} PUBLIC ${PUBLIC_HEADERS_DIR}
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/pugixml/src")
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/ngraph/src")
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/ocv")
|
||||
+include_directories(${TARGET_NAME} "/usr/include/ngraph")
|
||||
|
||||
if(ENABLE_MKL_DNN)
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/mkl-dnn/src/cpu/xbyak")
|
||||
endif()
|
||||
|
||||
-set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME})
|
||||
+set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME} SOVERSION 1)
|
||||
|
||||
# Static library used for unit tests which are always built
|
||||
|
||||
@@ -132,7 +133,7 @@ if(WIN32)
|
||||
target_compile_definitions(${TARGET_NAME}_s PRIVATE -DNOMINMAX)
|
||||
endif()
|
||||
|
||||
-set_target_properties(${TARGET_NAME}_s PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME}_s)
|
||||
+set_target_properties(${TARGET_NAME}_s PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME}_s SOVERSION 1)
|
||||
|
||||
target_link_libraries(${TARGET_NAME}_s PRIVATE fluid
|
||||
PRIVATE ngraph
|
||||
diff --git a/inference-engine/thirdparty/CMakeLists.txt b/inference-engine/thirdparty/CMakeLists.txt
|
||||
index 5a4b259..7208a0f 100644
|
||||
--- a/inference-engine/thirdparty/CMakeLists.txt
|
||||
+++ b/inference-engine/thirdparty/CMakeLists.txt
|
||||
@@ -7,12 +7,7 @@ if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
||||
set(CMAKE_CC_FLAGS "${CMAKE_CC_FLAGS} -Wno-unknown-warning-option -Wno-inconsistent-missing-override -Wno-pass-failed")
|
||||
endif()
|
||||
|
||||
-add_subdirectory(pugixml)
|
||||
-export(TARGETS pugixml NAMESPACE IE:: APPEND FILE "${CMAKE_BINARY_DIR}/targets.cmake")
|
||||
-export(TARGETS pugixml NAMESPACE IE:: APPEND FILE "${CMAKE_BINARY_DIR}/targets_developer.cmake")
|
||||
-
|
||||
add_subdirectory(stb_lib)
|
||||
-add_subdirectory(ade)
|
||||
|
||||
if (ENABLE_CLDNN)
|
||||
set(CLDNN__OUTPUT_BIN_DIR ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||
@@ -40,8 +35,6 @@ if (UNIX OR APPLE AND ${CMAKE_BUILD_TYPE} STREQUAL "Release")
|
||||
add_definitions(-fvisibility=default)
|
||||
endif()
|
||||
|
||||
-include(ngraph.cmake)
|
||||
-
|
||||
if (UNIX OR APPLE AND ${CMAKE_BUILD_TYPE} STREQUAL "Release")
|
||||
remove_definitions(-fvisibility=default)
|
||||
add_definitions(-fvisibility=hidden)
|
||||
--
|
||||
2.23.0
|
||||
|
||||
|
|
@ -0,0 +1,259 @@
|
|||
From d751c5330eb512c0deb49d640b50d921b7466f89 Mon Sep 17 00:00:00 2001
|
||||
From: Erin Park <erin.park@intel.com>
|
||||
Date: Wed, 11 Sep 2019 10:33:58 -0700
|
||||
Subject: [PATCH] R2 Install DLDT headers, libs, sample Apps
|
||||
|
||||
-Libraries to /usr/lib64
|
||||
-Headers to /usr/include
|
||||
-Sample Apps executable to /usr/bin
|
||||
-Sample Apps source code to /usr/share/doc/inference_engine
|
||||
-Python library to /usr/lib/python3.7/site-packages
|
||||
-plugins.xml to /usr/share/openvino/inference-engine
|
||||
-Create targets_cpu_extension.cmake
|
||||
|
||||
Upstream-Status: Pending [Taken from Clear Linux with changes to install
|
||||
libs at CMAKE_INSTALL_LIBDIR instead of hardcoded lib64]
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
|
||||
---
|
||||
inference-engine/CMakeLists.txt | 2 ++
|
||||
inference-engine/cmake/config.cmake.in | 1 +
|
||||
inference-engine/ie_bridges/python/CMakeLists.txt | 2 +-
|
||||
.../src/openvino/inference_engine/CMakeLists.txt | 4 +++-
|
||||
inference-engine/samples/CMakeLists.txt | 9 +--------
|
||||
.../samples/common/format_reader/CMakeLists.txt | 2 ++
|
||||
inference-engine/src/CMakeLists.txt | 4 +++-
|
||||
inference-engine/src/extension/CMakeLists.txt | 5 ++++-
|
||||
inference-engine/src/hetero_plugin/CMakeLists.txt | 1 +
|
||||
.../src/inference_engine/CMakeLists.txt | 22 +++++++++++++++++++---
|
||||
.../src/inference_engine/ie_util_internal.cpp | 7 ++++---
|
||||
inference-engine/src/mkldnn_plugin/CMakeLists.txt | 1 +
|
||||
.../src/vpu/myriad_plugin/CMakeLists.txt | 2 ++
|
||||
inference-engine/tests/unit/CMakeLists.txt | 2 ++
|
||||
14 files changed, 46 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/inference-engine/CMakeLists.txt b/inference-engine/CMakeLists.txt
|
||||
index 5ee8f53..734fb45 100644
|
||||
--- a/inference-engine/CMakeLists.txt
|
||||
+++ b/inference-engine/CMakeLists.txt
|
||||
@@ -67,3 +67,5 @@ if (ENABLE_PYTHON)
|
||||
endif()
|
||||
|
||||
add_cpplint_report_target()
|
||||
+
|
||||
+install(DIRECTORY samples DESTINATION share/doc/inference_engine)
|
||||
diff --git a/inference-engine/cmake/config.cmake.in b/inference-engine/cmake/config.cmake.in
|
||||
index d9a6918..8e406be 100644
|
||||
--- a/inference-engine/cmake/config.cmake.in
|
||||
+++ b/inference-engine/cmake/config.cmake.in
|
||||
@@ -7,6 +7,7 @@ if(DEFINED IE_MAIN_SOURCE_DIR AND TARGET inference_engine)
|
||||
set(InferenceEngine_LIBRARIES inference_engine)
|
||||
else()
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/targets.cmake")
|
||||
+ include("${CMAKE_CURRENT_LIST_DIR}/targets_cpu_extension.cmake")
|
||||
get_target_property(InferenceEngine_INCLUDE_DIRS IE::inference_engine INTERFACE_INCLUDE_DIRECTORIES)
|
||||
set(InferenceEngine_LIBRARIES IE::inference_engine)
|
||||
endif()
|
||||
diff --git a/inference-engine/ie_bridges/python/CMakeLists.txt b/inference-engine/ie_bridges/python/CMakeLists.txt
|
||||
index 9fca214..1d21443 100644
|
||||
--- a/inference-engine/ie_bridges/python/CMakeLists.txt
|
||||
+++ b/inference-engine/ie_bridges/python/CMakeLists.txt
|
||||
@@ -49,4 +49,4 @@ find_package (InferenceEngine REQUIRED)
|
||||
|
||||
set (PYTHON_BRIDGE_SRC_ROOT ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
add_subdirectory (src/openvino/inference_engine)
|
||||
-add_subdirectory (src/openvino/tools/statistics_collector)
|
||||
+#add_subdirectory (src/openvino/tools/statistics_collector)
|
||||
diff --git a/inference-engine/ie_bridges/python/src/openvino/inference_engine/CMakeLists.txt b/inference-engine/ie_bridges/python/src/openvino/inference_engine/CMakeLists.txt
|
||||
index 1f46013..d6cd112 100644
|
||||
--- a/inference-engine/ie_bridges/python/src/openvino/inference_engine/CMakeLists.txt
|
||||
+++ b/inference-engine/ie_bridges/python/src/openvino/inference_engine/CMakeLists.txt
|
||||
@@ -29,4 +29,6 @@ ADD_CUSTOM_COMMAND (TARGET ${TARGET_NAME}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYTHON_BRIDGE_SRC_ROOT}/src/openvino/inference_engine/__init__.py ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/__init__.py
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYTHON_BRIDGE_SRC_ROOT}/requirements.txt ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/../../requirements.txt
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${PYTHON_BRIDGE_SRC_ROOT}/src/openvino/__init__.py ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/../__init__.py
|
||||
-)
|
||||
\ No newline at end of file
|
||||
+)
|
||||
+
|
||||
+install(DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY} DESTINATION lib/${PYTHON_VERSION}/site-packages/)
|
||||
diff --git a/inference-engine/samples/CMakeLists.txt b/inference-engine/samples/CMakeLists.txt
|
||||
index 3802624..dd7b679 100644
|
||||
--- a/inference-engine/samples/CMakeLists.txt
|
||||
+++ b/inference-engine/samples/CMakeLists.txt
|
||||
@@ -39,14 +39,6 @@ if(NOT(UNIX))
|
||||
set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER})
|
||||
set (LIBRARY_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER})
|
||||
set (LIBRARY_OUTPUT_PATH ${LIBRARY_OUTPUT_DIRECTORY}) # compatibility issue: linux uses LIBRARY_OUTPUT_PATH, windows uses LIBRARY_OUTPUT_DIRECTORY
|
||||
-else ()
|
||||
- set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER}/${CMAKE_BUILD_TYPE}/lib)
|
||||
- set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER}/${CMAKE_BUILD_TYPE}/lib)
|
||||
- set (CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER}/${CMAKE_BUILD_TYPE})
|
||||
- set (CMAKE_PDB_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER}/${CMAKE_BUILD_TYPE})
|
||||
- set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER}/${CMAKE_BUILD_TYPE})
|
||||
- set (LIBRARY_OUTPUT_DIRECTORY ${IE_MAIN_SAMPLES_DIR}/${BIN_FOLDER}/${CMAKE_BUILD_TYPE}/lib)
|
||||
- set (LIBRARY_OUTPUT_PATH ${LIBRARY_OUTPUT_DIRECTORY}/lib)
|
||||
endif()
|
||||
|
||||
if (WIN32)
|
||||
@@ -188,6 +180,7 @@ macro(ie_add_sample)
|
||||
if(COMMAND add_cpplint_target AND NOT IE_SAMPLE_EXCLUDE_CPPLINT)
|
||||
add_cpplint_target(${IE_SAMPLE_NAME}_cpplint FOR_TARGETS ${IE_SAMPLE_NAME})
|
||||
endif()
|
||||
+ install(TARGETS ${IE_SAMPLE_NAME} DESTINATION bin)
|
||||
endmacro()
|
||||
|
||||
|
||||
diff --git a/inference-engine/samples/common/format_reader/CMakeLists.txt b/inference-engine/samples/common/format_reader/CMakeLists.txt
|
||||
index c4011c4..2322c3c 100644
|
||||
--- a/inference-engine/samples/common/format_reader/CMakeLists.txt
|
||||
+++ b/inference-engine/samples/common/format_reader/CMakeLists.txt
|
||||
@@ -43,3 +43,5 @@ set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME})
|
||||
|
||||
export(TARGETS ${TARGET_NAME} NAMESPACE IE::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/targets_developer.cmake")
|
||||
+
|
||||
+install(TARGETS ${TARGET_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
diff --git a/inference-engine/src/CMakeLists.txt b/inference-engine/src/CMakeLists.txt
|
||||
index bd1793f..986040c 100644
|
||||
--- a/inference-engine/src/CMakeLists.txt
|
||||
+++ b/inference-engine/src/CMakeLists.txt
|
||||
@@ -37,8 +37,10 @@ set(InferenceEngine_SRC_DIRS ${CMAKE_SOURCE_DIR}/src)
|
||||
function(set_target_cpu_flags TARGET_NAME)
|
||||
endfunction()
|
||||
|
||||
-add_subdirectory(extension EXCLUDE_FROM_ALL)
|
||||
+add_subdirectory(extension)
|
||||
add_library(IE::ie_cpu_extension ALIAS ie_cpu_extension)
|
||||
|
||||
file(GLOB_RECURSE EXTENSION_SOURCES extension/*.cpp extension/*.hpp extension/*.h)
|
||||
add_cpplint_target(ie_cpu_extension_cpplint FOR_SOURCES ${EXTENSION_SOURCES})
|
||||
+
|
||||
+install(DIRECTORY extension DESTINATION share/doc/inference_engine)
|
||||
diff --git a/inference-engine/src/extension/CMakeLists.txt b/inference-engine/src/extension/CMakeLists.txt
|
||||
index 799a62d..fb14ebe 100644
|
||||
--- a/inference-engine/src/extension/CMakeLists.txt
|
||||
+++ b/inference-engine/src/extension/CMakeLists.txt
|
||||
@@ -49,7 +49,7 @@ set_target_properties(${TARGET_NAME} PROPERTIES OUTPUT_NAME "cpu_extension")
|
||||
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE ${InferenceEngine_LIBRARIES})
|
||||
|
||||
-target_include_directories(${TARGET_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
+target_include_directories(${TARGET_NAME} PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>)
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME})
|
||||
|
||||
set_target_cpu_flags(${TARGET_NAME})
|
||||
@@ -61,3 +61,6 @@ if (IE_MAIN_SOURCE_DIR)
|
||||
export(TARGETS ${TARGET_NAME} NAMESPACE IE:: APPEND FILE "${CMAKE_BINARY_DIR}/targets_developer.cmake")
|
||||
endif()
|
||||
|
||||
+set(ConfigPackageLocation ${CMAKE_INSTALL_LIBDIR}/cmake/InferenceEngine)
|
||||
+install(TARGETS ${TARGET_NAME} EXPORT ${TARGET_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
+install(EXPORT ${TARGET_NAME} DESTINATION ${ConfigPackageLocation} NAMESPACE IE:: FILE targets_cpu_extension.cmake)
|
||||
diff --git a/inference-engine/src/hetero_plugin/CMakeLists.txt b/inference-engine/src/hetero_plugin/CMakeLists.txt
|
||||
index 91eb189..abc0748 100644
|
||||
--- a/inference-engine/src/hetero_plugin/CMakeLists.txt
|
||||
+++ b/inference-engine/src/hetero_plugin/CMakeLists.txt
|
||||
@@ -21,3 +21,4 @@ target_link_libraries(${TARGET_NAME} PRIVATE inference_engine)
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME})
|
||||
|
||||
add_cpplint_target(${TARGET_NAME}_cpplint FOR_TARGETS ${TARGET_NAME})
|
||||
+install(TARGETS ${TARGET_NAME} EXPORT ${TARGET_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
diff --git a/inference-engine/src/inference_engine/CMakeLists.txt b/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
index 37a0744..c0c803d 100644
|
||||
--- a/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
+++ b/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
@@ -90,7 +90,9 @@ if(WIN32)
|
||||
endif()
|
||||
|
||||
# Properties->C/C++->General->Additional Include Directories
|
||||
-target_include_directories(${TARGET_NAME} PUBLIC ${PUBLIC_HEADERS_DIR}
|
||||
+target_include_directories(${TARGET_NAME} PUBLIC
|
||||
+ $<BUILD_INTERFACE:${IE_MAIN_SOURCE_DIR}/include>
|
||||
+ $<INSTALL_INTERFACE:include/${TARGET_NAME}>
|
||||
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
"${IE_MAIN_SOURCE_DIR}/src/dumper")
|
||||
|
||||
@@ -114,7 +116,9 @@ add_library(${TARGET_NAME}_s STATIC
|
||||
set_ie_threading_interface_for(${TARGET_NAME}_s)
|
||||
|
||||
# Properties->C/C++->General->Additional Include Directories
|
||||
-target_include_directories(${TARGET_NAME}_s PUBLIC "${PUBLIC_HEADERS_DIR}"
|
||||
+target_include_directories(${TARGET_NAME}_s PUBLIC
|
||||
+ $<BUILD_INTERFACE:${IE_MAIN_SOURCE_DIR}/include>
|
||||
+ $<INSTALL_INTERFACE:include/${TARGET_NAME}>
|
||||
PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
PRIVATE "${IE_MAIN_SOURCE_DIR}/src/dumper")
|
||||
|
||||
@@ -146,7 +150,8 @@ target_link_libraries(${TARGET_NAME}_s PRIVATE fluid
|
||||
add_cpplint_target(${TARGET_NAME}_cpplint FOR_TARGETS ${TARGET_NAME})
|
||||
|
||||
ie_register_plugins(MAIN_TARGET ${TARGET_NAME}
|
||||
- POSSIBLE_PLUGINS clDNNPlugin dliaPlugin GNAPlugin MKLDNNPlugin myriadPlugin)
|
||||
+ P $<BUILD_INTERFACE:${IE_MAIN_SOURCE_DIR}/include>
|
||||
++ $<INSTALL_INTERFACE:include/${TARGET_NAME}>OSSIBLE_PLUGINS clDNNPlugin dliaPlugin GNAPlugin MKLDNNPlugin myriadPlugin)
|
||||
|
||||
# export targets
|
||||
export(TARGETS ${TARGET_NAME} NAMESPACE IE:: FILE "${CMAKE_BINARY_DIR}/targets.cmake")
|
||||
@@ -177,3 +182,14 @@ configure_file(
|
||||
"${CMAKE_SOURCE_DIR}/cmake/share/InferenceEngineConfig-version.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/InferenceEngineDeveloperPackageConfig-version.cmake"
|
||||
COPYONLY)
|
||||
+
|
||||
+set(ConfigPackageLocation ${CMAKE_INSTALL_LIBDIR}/cmake/InferenceEngine)
|
||||
+install(TARGETS ${TARGET_NAME} EXPORT ${TARGET_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
+install(EXPORT ${TARGET_NAME} DESTINATION ${ConfigPackageLocation} NAMESPACE IE:: FILE targets.cmake)
|
||||
+install(DIRECTORY ${PUBLIC_HEADERS_DIR}/ DESTINATION include/${TARGET_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "*.hpp")
|
||||
+install(FILES
|
||||
+ "${CMAKE_BINARY_DIR}/InferenceEngineConfig.cmake"
|
||||
+ "${CMAKE_BINARY_DIR}/InferenceEngineConfig-version.cmake"
|
||||
+ DESTINATION ${ConfigPackageLocation})
|
||||
+
|
||||
+install(FILES "$<TARGET_FILE_DIR:${TARGET_NAME}>/plugins.xml" DESTINATION /usr/share/openvino/inference-engine)
|
||||
diff --git a/inference-engine/src/inference_engine/ie_util_internal.cpp b/inference-engine/src/inference_engine/ie_util_internal.cpp
|
||||
index 489ab24..2defd56 100644
|
||||
--- a/inference-engine/src/inference_engine/ie_util_internal.cpp
|
||||
+++ b/inference-engine/src/inference_engine/ie_util_internal.cpp
|
||||
@@ -755,9 +755,10 @@ std::string getIELibraryPath() {
|
||||
GetModuleFileNameA(hm, (LPSTR)ie_library_path, sizeof(ie_library_path));
|
||||
return getPathName(ie_library_path);
|
||||
#else
|
||||
- Dl_info info;
|
||||
- dladdr(reinterpret_cast<void *>(getIELibraryPath), &info);
|
||||
- return getPathName(info.dli_fname);
|
||||
+ //Dl_info info;
|
||||
+ //dladdr(reinterpret_cast<void *>(getIELibraryPath), &info);
|
||||
+ //return getPathName(info.dli_fname);
|
||||
+ return "/usr/share/openvino/inference-engine";
|
||||
#endif
|
||||
}
|
||||
|
||||
diff --git a/inference-engine/src/mkldnn_plugin/CMakeLists.txt b/inference-engine/src/mkldnn_plugin/CMakeLists.txt
|
||||
index d767724..80d33e6 100644
|
||||
--- a/inference-engine/src/mkldnn_plugin/CMakeLists.txt
|
||||
+++ b/inference-engine/src/mkldnn_plugin/CMakeLists.txt
|
||||
@@ -69,3 +69,4 @@ target_compile_definitions(test_${TARGET_NAME} PUBLIC -DMKLDNN_THR=${MKLDNN_THR}
|
||||
target_link_libraries(test_${TARGET_NAME} PRIVATE inference_engine_s mkldnn)
|
||||
|
||||
set_target_properties(test_${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME test_${TARGET_NAME})
|
||||
+install(TARGETS ${TARGET_NAME} EXPORT ${TARGET_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
diff --git a/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt b/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt
|
||||
index b51f1a6..c005473 100644
|
||||
--- a/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt
|
||||
+++ b/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt
|
||||
@@ -36,3 +36,5 @@ if (LINUX)
|
||||
COMMAND "${CMAKE_COMMAND}" -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/../vpu_custom_kernels
|
||||
$<TARGET_FILE_DIR:${TARGET_NAME}>/vpu_custom_kernels)
|
||||
endif()
|
||||
+
|
||||
+install(TARGETS ${TARGET_NAME} EXPORT ${TARGET_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
diff --git a/inference-engine/tests/unit/CMakeLists.txt b/inference-engine/tests/unit/CMakeLists.txt
|
||||
index d83e088..641bef7 100644
|
||||
--- a/inference-engine/tests/unit/CMakeLists.txt
|
||||
+++ b/inference-engine/tests/unit/CMakeLists.txt
|
||||
@@ -116,3 +116,5 @@ add_test(NAME ${TARGET_NAME}
|
||||
COMMAND ${TARGET_NAME})
|
||||
|
||||
add_dependencies(${TARGET_NAME} mock_engine)
|
||||
+
|
||||
+install(TARGETS ${TARGET_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
From f4533f5bfce9daee08a4fea61736315fbe4ad6db Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Fri, 27 Sep 2019 11:34:36 +0800
|
||||
Subject: [PATCH] Supply firmware at build time
|
||||
|
||||
We'd like to supply firmware when fetching the sources. Disable runtime
|
||||
fetching and point to fetched firmware instead.
|
||||
|
||||
Upstream-Status: Submitted
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
inference-engine/cmake/dependencies.cmake | 18 ------------------
|
||||
1 file changed, 18 deletions(-)
|
||||
|
||||
diff --git a/inference-engine/cmake/dependencies.cmake b/inference-engine/cmake/dependencies.cmake
|
||||
index d493426..666ace6 100644
|
||||
--- a/inference-engine/cmake/dependencies.cmake
|
||||
+++ b/inference-engine/cmake/dependencies.cmake
|
||||
@@ -22,24 +22,6 @@ if(COMMAND get_linux_name)
|
||||
get_linux_name(LINUX_OS_NAME)
|
||||
endif()
|
||||
|
||||
-if (ENABLE_MYRIAD)
|
||||
- RESOLVE_DEPENDENCY(VPU_FIRMWARE_MA2450
|
||||
- ARCHIVE_UNIFIED firmware_ma2450_676.zip
|
||||
- TARGET_PATH "${TEMP}/vpu/firmware/ma2450"
|
||||
- ENVIRONMENT "VPU_FIRMWARE_MA2450"
|
||||
- FOLDER)
|
||||
- debug_message(STATUS "ma2450=" ${VPU_FIRMWARE_MA2450})
|
||||
-endif ()
|
||||
-
|
||||
-if (ENABLE_MYRIAD)
|
||||
- RESOLVE_DEPENDENCY(VPU_FIRMWARE_MA2X8X
|
||||
- ARCHIVE_UNIFIED firmware_ma2x8x_mdk_R8_9.zip
|
||||
- TARGET_PATH "${TEMP}/vpu/firmware/ma2x8x"
|
||||
- ENVIRONMENT "VPU_FIRMWARE_MA2X8X"
|
||||
- FOLDER)
|
||||
- debug_message(STATUS "ma2x8x=" ${VPU_FIRMWARE_MA2X8X})
|
||||
-endif ()
|
||||
-
|
||||
## enable cblas_gemm from OpenBLAS package
|
||||
if (GEMM STREQUAL "OPENBLAS")
|
||||
if(NOT BLAS_LIBRARIES OR NOT BLAS_INCLUDE_DIRS)
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
From 970443ce6bf31128c3517374e2890a93518d988e Mon Sep 17 00:00:00 2001
|
||||
From: Kevron Rees <kevron.m.rees@intel.com>
|
||||
Date: Wed, 3 Apr 2019 09:20:48 -0700
|
||||
Subject: [PATCH] use GNUInstallDirs on *nix
|
||||
|
||||
Upstream-Status: Submitted [Patch taken from Clear Linux and has been submitted
|
||||
upstream]
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
.../thirdparty/clDNN/CMakeLists.txt | 3 +-
|
||||
.../thirdparty/clDNN/src/CMakeLists.txt | 36 +++++++++++++++----
|
||||
2 files changed, 31 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/inference-engine/thirdparty/clDNN/CMakeLists.txt b/inference-engine/thirdparty/clDNN/CMakeLists.txt
|
||||
index 624d95c..5957791 100644
|
||||
--- a/inference-engine/thirdparty/clDNN/CMakeLists.txt
|
||||
+++ b/inference-engine/thirdparty/clDNN/CMakeLists.txt
|
||||
@@ -93,7 +93,8 @@ set(CLDNN__GTEST_DIR "${CLDNN__COMMON_DIR}/googletest-fused")
|
||||
# Build targets settings.
|
||||
|
||||
# Path which points to default root directory for compilation output.
|
||||
-set(CLDNN_BUILD__DEFAULT_OUT_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/build/out")
|
||||
+set(CLDNN_BUILD__DEFAULT_OUT_ROOT "${CMAKE_BINARY_DIR}")
|
||||
+set(CLDNN__OUTPUT_DIR, "${CMAKE_BINARY_DIR}")
|
||||
|
||||
# Prefix for all targets in internal pass.
|
||||
set(CLDNN_BUILD__PROJ_NAME_PREFIX "")
|
||||
diff --git a/inference-engine/thirdparty/clDNN/src/CMakeLists.txt b/inference-engine/thirdparty/clDNN/src/CMakeLists.txt
|
||||
index 132c6e4..cc88535 100644
|
||||
--- a/inference-engine/thirdparty/clDNN/src/CMakeLists.txt
|
||||
+++ b/inference-engine/thirdparty/clDNN/src/CMakeLists.txt
|
||||
@@ -247,17 +247,39 @@ target_link_libraries("${CLDNN_BUILD__PROJ}" PRIVATE ${CLDNN__SYSTEM_LINK_LIBRAR
|
||||
|
||||
# ========================================== Installation ==============================================
|
||||
|
||||
+if(UNIX)
|
||||
+ include(GNUInstallDirs)
|
||||
+endif(UNIX)
|
||||
+
|
||||
+
|
||||
# API headers.
|
||||
-install(DIRECTORY "${CLDNN__API_DIR}/"
|
||||
+if(UNIX)
|
||||
+ install(DIRECTORY "${CLDNN__API_DIR}/"
|
||||
+ DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}/clDNN"
|
||||
+ FILE_PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ
|
||||
+ )
|
||||
+else()
|
||||
+ install(DIRECTORY "${CLDNN__API_DIR}/"
|
||||
DESTINATION "include/clDNN"
|
||||
FILE_PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ
|
||||
)
|
||||
+endif(UNIX)
|
||||
+
|
||||
# Binaries.
|
||||
-install(TARGETS "${CLDNN_BUILD__PROJ}"
|
||||
- ARCHIVE DESTINATION "lib"
|
||||
- LIBRARY DESTINATION "lib"
|
||||
- RUNTIME DESTINATION "bin"
|
||||
- INCLUDES DESTINATION "include/clDNN"
|
||||
- )
|
||||
+if(UNIX)
|
||||
+ install(TARGETS "${CLDNN_BUILD__PROJ}"
|
||||
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}"
|
||||
+ LIBRARY DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}"
|
||||
+ RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}"
|
||||
+ INCLUDES DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}/clDNN"
|
||||
+ )
|
||||
+else()
|
||||
+ install(TARGETS "${CLDNN_BUILD__PROJ}"
|
||||
+ ARCHIVE DESTINATION "lib"
|
||||
+ LIBRARY DESTINATION "lib"
|
||||
+ RUNTIME DESTINATION "bin"
|
||||
+ INCLUDES DESTINATION "include/clDNN"
|
||||
+ )
|
||||
+endif(UNIX)
|
||||
|
||||
# ======================================================================================================
|
||||
--
|
||||
2.23.0
|
||||
|
||||
|
|
@ -0,0 +1,93 @@
|
|||
From 68d6b80eb9cc87ff3598958b8a7f52b688b9436f Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Fri, 27 Sep 2019 20:32:08 +0800
|
||||
Subject: [PATCH] disable werror
|
||||
|
||||
This shouldn't be enabled and leads to multiple errors when compiling
|
||||
cldnn and samples.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
inference-engine/cmake/os_flags.cmake | 1 -
|
||||
inference-engine/samples/CMakeLists.txt | 1 -
|
||||
inference-engine/src/extension/CMakeLists.txt | 1 -
|
||||
inference-engine/thirdparty/clDNN/CMakeLists.txt | 2 --
|
||||
inference-engine/thirdparty/mkl-dnn/cmake/platform.cmake | 1 -
|
||||
inference-engine/tools/CMakeLists.txt | 1 -
|
||||
6 files changed, 7 deletions(-)
|
||||
|
||||
diff --git a/inference-engine/cmake/os_flags.cmake b/inference-engine/cmake/os_flags.cmake
|
||||
index 6a5442f..a14a1ae 100644
|
||||
--- a/inference-engine/cmake/os_flags.cmake
|
||||
+++ b/inference-engine/cmake/os_flags.cmake
|
||||
@@ -48,7 +48,6 @@ if (WIN32)
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${DEBUG_SYMBOLS_LINKER_FLAGS}")
|
||||
endif()
|
||||
else()
|
||||
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -Werror=return-type ")
|
||||
if (APPLE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=unused-command-line-argument")
|
||||
elseif(UNIX)
|
||||
diff --git a/inference-engine/samples/CMakeLists.txt b/inference-engine/samples/CMakeLists.txt
|
||||
index dd7b679..828abe6 100644
|
||||
--- a/inference-engine/samples/CMakeLists.txt
|
||||
+++ b/inference-engine/samples/CMakeLists.txt
|
||||
@@ -59,7 +59,6 @@ if (WIN32)
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4251 /wd4275 /wd4267") #disable some warnings
|
||||
endif()
|
||||
else()
|
||||
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror") #treating warnings as errors
|
||||
if (APPLE)
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=unused-command-line-argument")
|
||||
elseif(UNIX)
|
||||
diff --git a/inference-engine/src/extension/CMakeLists.txt b/inference-engine/src/extension/CMakeLists.txt
|
||||
index fb14ebe..228bb8c 100644
|
||||
--- a/inference-engine/src/extension/CMakeLists.txt
|
||||
+++ b/inference-engine/src/extension/CMakeLists.txt
|
||||
@@ -25,7 +25,6 @@ if (WIN32)
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4251 /wd4275 /wd4267") #disable some warnings
|
||||
endif()
|
||||
else()
|
||||
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
|
||||
endif()
|
||||
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
|
||||
diff --git a/inference-engine/thirdparty/clDNN/CMakeLists.txt b/inference-engine/thirdparty/clDNN/CMakeLists.txt
|
||||
index 5957791..6007be4 100644
|
||||
--- a/inference-engine/thirdparty/clDNN/CMakeLists.txt
|
||||
+++ b/inference-engine/thirdparty/clDNN/CMakeLists.txt
|
||||
@@ -758,8 +758,6 @@ foreach(__CLDNN_CompilerFlagName IN ITEMS "CMAKE_CXX_FLAGS" "CMAKE_C_FLAGS")
|
||||
MultiProcessorCompilation
|
||||
DeadCodeEliminate
|
||||
ExtensionsEnabled
|
||||
- TreatWarnAsErrorEnabled
|
||||
- WarnLevel4
|
||||
NoFastMath
|
||||
StackProtector
|
||||
)
|
||||
diff --git a/inference-engine/thirdparty/mkl-dnn/cmake/platform.cmake b/inference-engine/thirdparty/mkl-dnn/cmake/platform.cmake
|
||||
index a541215..bed8a59 100644
|
||||
--- a/inference-engine/thirdparty/mkl-dnn/cmake/platform.cmake
|
||||
+++ b/inference-engine/thirdparty/mkl-dnn/cmake/platform.cmake
|
||||
@@ -63,7 +63,6 @@ if(MSVC)
|
||||
endif()
|
||||
elseif(UNIX OR MINGW)
|
||||
append(CMAKE_CCXX_FLAGS "-Wall -Wno-unknown-pragmas")
|
||||
- append_if_product(CMAKE_CCXX_FLAGS "-Werror")
|
||||
append(CMAKE_CCXX_FLAGS "-fvisibility=internal")
|
||||
append(CMAKE_C_FLAGS "-std=c99")
|
||||
append(CMAKE_CXX_FLAGS "-std=c++11 -fvisibility-inlines-hidden")
|
||||
diff --git a/inference-engine/tools/CMakeLists.txt b/inference-engine/tools/CMakeLists.txt
|
||||
index fddfa28..a714fc1 100644
|
||||
--- a/inference-engine/tools/CMakeLists.txt
|
||||
+++ b/inference-engine/tools/CMakeLists.txt
|
||||
@@ -24,7 +24,6 @@ endif()
|
||||
if (WIN32)
|
||||
# add_compile_options("/WX")
|
||||
else()
|
||||
- add_compile_options("-Werror")
|
||||
endif()
|
||||
|
||||
if (ENABLE_OPENCV)
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
From 8335bac5c53b6cfe611a1c4987ca47aa6a60549f Mon Sep 17 00:00:00 2001
|
||||
From: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Date: Fri, 27 Sep 2019 23:06:18 +0800
|
||||
Subject: [PATCH] point to correct location of ngraph headers
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
---
|
||||
inference-engine/src/inference_engine/CMakeLists.txt | 2 +-
|
||||
inference-engine/tests/unit/CMakeLists.txt | 3 ++-
|
||||
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/inference-engine/src/inference_engine/CMakeLists.txt b/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
index c0c803d..a4425fd 100644
|
||||
--- a/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
+++ b/inference-engine/src/inference_engine/CMakeLists.txt
|
||||
@@ -99,7 +99,7 @@ target_include_directories(${TARGET_NAME} PUBLIC
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/pugixml/src")
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/ngraph/src")
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/ocv")
|
||||
-include_directories(${TARGET_NAME} "/usr/include/ngraph")
|
||||
+include_directories(${TARGET_NAME} "${NGRAPH_INCLUDES}")
|
||||
|
||||
if(ENABLE_MKL_DNN)
|
||||
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/mkl-dnn/src/cpu/xbyak")
|
||||
diff --git a/inference-engine/tests/unit/CMakeLists.txt b/inference-engine/tests/unit/CMakeLists.txt
|
||||
index d83e088..29115d2 100644
|
||||
--- a/inference-engine/tests/unit/CMakeLists.txt
|
||||
+++ b/inference-engine/tests/unit/CMakeLists.txt
|
||||
@@ -85,7 +85,8 @@ target_include_directories(${TARGET_NAME} PRIVATE
|
||||
${IE_MAIN_SOURCE_DIR}/src/extension
|
||||
${IE_MAIN_SOURCE_DIR}/src/extension/common
|
||||
${IE_MAIN_SOURCE_DIR}/thirdparty/ngraph/src
|
||||
- "${CMAKE_CURRENT_SOURCE_DIR}/mocks")
|
||||
+ "${CMAKE_CURRENT_SOURCE_DIR}/mocks"
|
||||
+ ${NGRAPH_INCLUDES})
|
||||
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME})
|
||||
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
#!/bin/sh
|
||||
|
||||
./InferenceEngineUnitTests |sed \
|
||||
-e 's|\[.*OK.*\]\(.*\)|PASS:\1|' \
|
||||
-e 's|\[.*FAILED.*\]\(.*\)|FAIL:\1|'
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
from oeqa.runtime.case import OERuntimeTestCase
|
||||
from oeqa.core.decorator.depends import OETestDepends
|
||||
from oeqa.runtime.decorator.package import OEHasPackage
|
||||
import os
|
||||
import subprocess
|
||||
import datetime
|
||||
|
||||
class CyclicTest(OERuntimeTestCase):
|
||||
|
||||
@OEHasPackage(['rt-tests'])
|
||||
@OETestDepends(['ssh.SSHTest.test_ssh'])
|
||||
def test_cyclic(self):
|
||||
# Cyclictest command and argument based on public setup for Intel(R) Core(TM) i7-6700
|
||||
# https://www.osadl.org/Latency-plot-of-system-in-rack-9-slot.qa-latencyplot-r9s5.0.html?shadow=1
|
||||
# Command line: cyclictest -l100000000 -m -Sp99 -i200 -h400 -q
|
||||
status, output = self.target.run('cyclictest -l100000000 -m -Sp99 -i200 -h400')
|
||||
self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
|
||||
test_log_dir = self.td.get('TEST_LOG_DIR', '')
|
||||
|
||||
if not test_log_dir:
|
||||
test_log_dir = os.path.join(self.td.get('WORKDIR', ''), 'testimage')
|
||||
|
||||
cyclic_log_dir = os.path.join(test_log_dir, '%s.%s' % ('cyclic_test', datetime.datetime.now().strftime('%Y%m%d%H%M%S')))
|
||||
os.makedirs(cyclic_log_dir)
|
||||
log_path = os.path.join(cyclic_log_dir, 'cyclic_log')
|
||||
with open(log_path, 'w') as f:
|
||||
f.write(output)
|
||||
|
||||
max_latency = subprocess.check_output(('grep "Max Latencies" %s | tr " " "\n" | sort -n | tail -1 | sed s/^0*//') % log_path, shell=True).strip()
|
||||
max_latency = int(max_latency)
|
||||
|
||||
# Default target latency based on max latency (24us) captured at public execution multiple by 1.2 (20% buffer)
|
||||
# https://www.osadl.org/Latency-plot-of-system-in-rack-9-slot.qa-latencyplot-r9s5.0.html?shadow=1
|
||||
target_latency = 1.2*24
|
||||
user_defined_target_latency = self.tc.td.get("RTKERNEL_TARGET_LATENCY")
|
||||
if user_defined_target_latency:
|
||||
target_latency = int(user_defined_target_latency)
|
||||
self.assertTrue(max_latency < target_latency,
|
||||
msg="Max latency (%sus) is greater than target (%sus)." % (max_latency, target_latency))
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user