diff options
author | takeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp> | 2020-11-02 11:07:33 +0900 |
---|---|---|
committer | takeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp> | 2020-11-02 11:07:33 +0900 |
commit | 1c7d6584a7811b7785ae5c1e378f14b5ba0971cf (patch) | |
tree | cd70a267a5ef105ba32f200aa088e281fbd85747 /bsp/meta-freescale/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch | |
parent | 4204309872da5cb401cbb2729d9e2d4869a87f42 (diff) |
basesystem-jjsandbox/ToshikazuOhiwa/master-jj
recipes
Diffstat (limited to 'bsp/meta-freescale/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch')
-rw-r--r-- | bsp/meta-freescale/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/bsp/meta-freescale/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch b/bsp/meta-freescale/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch new file mode 100644 index 00000000..ae6b0ab7 --- /dev/null +++ b/bsp/meta-freescale/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch @@ -0,0 +1,140 @@ +From 45f48f8a5de59c04b0510c23853772bc970f411e Mon Sep 17 00:00:00 2001 +From: Max Krummenacher <max.krummenacher@toradex.com> +Date: Thu, 9 Jan 2020 01:01:35 +0000 +Subject: [PATCH] meson: add libdrm-vivante to the meson meta data + +Upstream libdrm added the option to use meason as the buildsystem. +Integrate Vivante into the relevant meson build information. + +Upstream-Status: Pending + +Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> +--- + meson.build | 14 +++++++++++++ + meson_options.txt | 7 +++++++ + vivante/meson.build | 50 +++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 71 insertions(+) + create mode 100644 vivante/meson.build + +diff --git a/meson.build b/meson.build +index e292554a..f4740634 100644 +--- a/meson.build ++++ b/meson.build +@@ -157,6 +157,15 @@ if _vc4 != 'false' + with_vc4 = _vc4 == 'true' or ['arm', 'aarch64'].contains(host_machine.cpu_family()) + endif + ++with_vivante = false ++_vivante = get_option('vivante') ++if _vivante == 'true' ++ if not with_atomics ++ error('libdrm_vivante requires atomics.') ++ endif ++ with_vivante = true ++endif ++ + # XXX: Apparently only freebsd and dragonfly bsd actually need this (and + # gnu/kfreebsd), not openbsd and netbsd + with_libkms = false +@@ -312,6 +321,7 @@ install_headers( + 'include/drm/savage_drm.h', 'include/drm/sis_drm.h', + 'include/drm/tegra_drm.h', 'include/drm/vc4_drm.h', + 'include/drm/via_drm.h', 'include/drm/virtgpu_drm.h', ++ 'include/drm/vivante_drm.h', + subdir : 'libdrm', + ) + if with_vmwgfx +@@ -362,6 +372,9 @@ endif + if with_etnaviv + subdir('etnaviv') + endif ++if with_vivante ++ subdir('vivante') ++endif + if with_man_pages + subdir('man') + endif +@@ -382,5 +395,6 @@ message(' EXYNOS API @0@'.format(with_exynos)) + message(' Freedreno API @0@ (kgsl: @1@)'.format(with_freedreno, with_freedreno_kgsl)) + message(' Tegra API @0@'.format(with_tegra)) + message(' VC4 API @0@'.format(with_vc4)) ++message(' Vivante API @0@'.format(with_etnaviv)) + message(' Etnaviv API @0@'.format(with_etnaviv)) + message('') +diff --git a/meson_options.txt b/meson_options.txt +index 8af33f1c..dc69563d 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -95,6 +95,13 @@ option( + choices : ['true', 'false', 'auto'], + description : '''Enable support for vc4's KMS API.''', + ) ++option( ++ 'vivante', ++ type : 'combo', ++ value : 'false', ++ choices : ['true', 'false', 'auto'], ++ description : '''Enable support for vivante's propriatary experimental KMS API.''', ++) + option( + 'etnaviv', + type : 'combo', +diff --git a/vivante/meson.build b/vivante/meson.build +new file mode 100644 +index 00000000..f6adb598 +--- /dev/null ++++ b/vivante/meson.build +@@ -0,0 +1,50 @@ ++# Copyright © 2017-2018 Intel Corporation ++ ++# Permission is hereby granted, free of charge, to any person obtaining a copy ++# of this software and associated documentation files (the "Software"), to deal ++# in the Software without restriction, including without limitation the rights ++# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell ++# copies of the Software, and to permit persons to whom the Software is ++# furnished to do so, subject to the following conditions: ++ ++# The above copyright notice and this permission notice shall be included in ++# all copies or substantial portions of the Software. ++ ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ++# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++# SOFTWARE. ++ ++ ++libdrm_vivante = shared_library( ++ 'drm_vivante', ++ [ ++ files( ++ 'vivante_bo.c', ++ ), ++ config_file ++ ], ++ include_directories : [inc_root, inc_drm], ++ link_with : libdrm, ++ c_args : libdrm_c_args, ++ dependencies : [dep_pthread_stubs, dep_rt, dep_atomic_ops], ++ version : '1.0.0', ++ install : true, ++) ++ ++pkg.generate( ++ name : 'libdrm_vivante', ++ libraries : libdrm_vivante, ++ subdirs : ['.', 'libdrm'], ++ version : meson.project_version(), ++ requires_private : 'libdrm', ++ description : 'Userspace interface to Vivante kernel DRM services', ++) ++ ++ext_libdrm_vivante = declare_dependency( ++ link_with : [libdrm, libdrm_vivante], ++ include_directories : [inc_drm, include_directories('.')], ++) +-- +2.20.1 + |