public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/guru:dev commit in: x11-drivers/evdi/, x11-drivers/evdi/files/
@ 2024-11-21 16:23 Paul Zander
  0 siblings, 0 replies; 3+ messages in thread
From: Paul Zander @ 2024-11-21 16:23 UTC (permalink / raw
  To: gentoo-commits

commit:     9e63c7ccde4aca908e36f9911b302d6f3c8fd1d0
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Thu Nov 21 16:20:02 2024 +0000
Commit:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
CommitDate: Thu Nov 21 16:20:02 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=9e63c7cc

x11-drivers/evdi: fix build with kernel-6.12

Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>

 x11-drivers/evdi/evdi-1.14.7-r1.ebuild             |  1 +
 .../evdi-1.14.7-removed-output_poll_changed.patch  | 24 ++++++++++++++++++++++
 2 files changed, 25 insertions(+)

diff --git a/x11-drivers/evdi/evdi-1.14.7-r1.ebuild b/x11-drivers/evdi/evdi-1.14.7-r1.ebuild
index 6df4558dc..84b6d26db 100644
--- a/x11-drivers/evdi/evdi-1.14.7-r1.ebuild
+++ b/x11-drivers/evdi/evdi-1.14.7-r1.ebuild
@@ -41,6 +41,7 @@ CONFIG_CHECK="~FB_VIRTUAL ~I2C ~DRM ~USB_SUPPORT ~USB_ARCH_HAS_HCD MODULES"
 
 PATCHES=(
 	"${FILESDIR}/${PN}-1.14.4-format-truncation.patch"
+	"${FILESDIR}/${PN}-1.14.7-removed-output_poll_changed.patch"
 )
 
 pkg_setup() {

diff --git a/x11-drivers/evdi/files/evdi-1.14.7-removed-output_poll_changed.patch b/x11-drivers/evdi/files/evdi-1.14.7-removed-output_poll_changed.patch
new file mode 100644
index 000000000..1c7788bdb
--- /dev/null
+++ b/x11-drivers/evdi/files/evdi-1.14.7-removed-output_poll_changed.patch
@@ -0,0 +1,24 @@
+From 30760596ec3a6905405564e1a191e1161a78f275 Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Thu, 21 Nov 2024 16:20:48 +0100
+Subject: [PATCH] drm: Remove struct drm_mode_config_funcs.output_poll_changed
+
+https://patchwork.freedesktop.org/patch/607909/
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/module/evdi_modeset.c b/module/evdi_modeset.c
+index dfa9d10..8f72b8d 100644
+--- a/module/evdi_modeset.c
++++ b/module/evdi_modeset.c
+@@ -504,7 +504,6 @@ static int evdi_crtc_init(struct drm_device *dev)
+ 
+ static const struct drm_mode_config_funcs evdi_mode_funcs = {
+ 	.fb_create = evdi_fb_user_fb_create,
+-	.output_poll_changed = NULL,
+ 	.atomic_commit = drm_atomic_helper_commit,
+ 	.atomic_check = drm_atomic_helper_check
+ };
+-- 
+2.47.0
+


^ permalink raw reply related	[flat|nested] 3+ messages in thread
* [gentoo-commits] repo/proj/guru:dev commit in: x11-drivers/evdi/, x11-drivers/evdi/files/
@ 2025-01-13 12:42 Paul Zander
  0 siblings, 0 replies; 3+ messages in thread
From: Paul Zander @ 2025-01-13 12:42 UTC (permalink / raw
  To: gentoo-commits

commit:     e1ab8bf47fdfc50f4a965623ff69d58ed1eb86b5
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Mon Jan 13 12:38:21 2025 +0000
Commit:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
CommitDate: Mon Jan 13 12:38:21 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=e1ab8bf4

x11-drivers/evdi: bump 1.14.7-r2 fix kernel-6.1 build

Includes
https://github.com/DisplayLink/evdi/commit/88d67b63487ad484dff31d9e1355a32771787979
which fixes a check for versions > 6.1.51 <=6.2.0

Closes: https://bugs.gentoo.org/939313
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>

 ...evdi-1.14.7-r1.ebuild => evdi-1.14.7-r2.ebuild} |  1 +
 .../files/evdi-1.14.7-drm_fb_helper.info.patch     | 55 ++++++++++++++++++++++
 2 files changed, 56 insertions(+)

diff --git a/x11-drivers/evdi/evdi-1.14.7-r1.ebuild b/x11-drivers/evdi/evdi-1.14.7-r2.ebuild
similarity index 95%
rename from x11-drivers/evdi/evdi-1.14.7-r1.ebuild
rename to x11-drivers/evdi/evdi-1.14.7-r2.ebuild
index 84b6d26db..2f7f68793 100644
--- a/x11-drivers/evdi/evdi-1.14.7-r1.ebuild
+++ b/x11-drivers/evdi/evdi-1.14.7-r2.ebuild
@@ -42,6 +42,7 @@ CONFIG_CHECK="~FB_VIRTUAL ~I2C ~DRM ~USB_SUPPORT ~USB_ARCH_HAS_HCD MODULES"
 PATCHES=(
 	"${FILESDIR}/${PN}-1.14.4-format-truncation.patch"
 	"${FILESDIR}/${PN}-1.14.7-removed-output_poll_changed.patch"
+	"${FILESDIR}/${PN}-1.14.7-drm_fb_helper.info.patch" # backport from 1.14.8
 )
 
 pkg_setup() {

diff --git a/x11-drivers/evdi/files/evdi-1.14.7-drm_fb_helper.info.patch b/x11-drivers/evdi/files/evdi-1.14.7-drm_fb_helper.info.patch
new file mode 100644
index 000000000..07f887910
--- /dev/null
+++ b/x11-drivers/evdi/files/evdi-1.14.7-drm_fb_helper.info.patch
@@ -0,0 +1,55 @@
+https://github.com/DisplayLink/evdi/commit/88d67b63487ad484dff31d9e1355a32771787979.patch
+From 88d67b63487ad484dff31d9e1355a32771787979 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C5=81ukasz=20Spintzyk?= <Lukasz.Spintzyk@synaptics.com>
+Date: Mon, 7 Oct 2024 09:17:43 +0200
+Subject: [PATCH] Validate build with CONFIG_FB define
+
+---
+ ci/build_against_kernel | 2 +-
+ module/evdi_fb.c        | 6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/ci/build_against_kernel b/ci/build_against_kernel
+index ebd0562..25cf174 100755
+--- a/ci/build_against_kernel
++++ b/ci/build_against_kernel
+@@ -236,7 +236,7 @@ build_one() { # KVER
+ 
+   local src_dir
+   local KTAG=v${KVER}
+-  local extra_cflags=
++  local extra_cflags="-DCONFIG_FB"
+   if [ "${KVER}" == "master" ]; then
+     KTAG="origin/master"
+   else
+diff --git a/module/evdi_fb.c b/module/evdi_fb.c
+index 6bd364e..d8feca6 100644
+--- a/module/evdi_fb.c
++++ b/module/evdi_fb.c
+@@ -404,7 +404,7 @@ static int evdifb_create(struct drm_fb_helper *helper,
+ 	fb = &efbdev->efb.base;
+ 
+ 	efbdev->helper.fb = fb;
+-#if KERNEL_VERSION(6, 1, 51) <= LINUX_VERSION_CODE || defined(EL8) || defined(EL9)
++#if KERNEL_VERSION(6, 2, 0) <= LINUX_VERSION_CODE || defined(EL8) || defined(EL9)
+ 	efbdev->helper.info = info;
+ #else
+ 	efbdev->helper.fbdev = info;
+@@ -464,7 +464,7 @@ static void evdi_fbdev_destroy(__always_unused struct drm_device *dev,
+ {
+ 	struct fb_info *info;
+ 
+-#if KERNEL_VERSION(6, 1, 51) <= LINUX_VERSION_CODE || defined(EL8) || defined(EL9)
++#if KERNEL_VERSION(6, 2, 0) <= LINUX_VERSION_CODE || defined(EL8) || defined(EL9)
+ 	if (efbdev->helper.info) {
+ 		info = efbdev->helper.info;
+ #else
+@@ -556,7 +556,7 @@ void evdi_fbdev_unplug(struct drm_device *dev)
+ 		return;
+ 
+ 	efbdev = evdi->fbdev;
+-#if KERNEL_VERSION(6, 1, 51) <= LINUX_VERSION_CODE || defined(EL8) || defined(EL9)
++#if KERNEL_VERSION(6, 2, 0) <= LINUX_VERSION_CODE || defined(EL8) || defined(EL9)
+ 	if (efbdev->helper.info) {
+ 		struct fb_info *info;
+ 


^ permalink raw reply related	[flat|nested] 3+ messages in thread
* [gentoo-commits] repo/proj/guru:dev commit in: x11-drivers/evdi/, x11-drivers/evdi/files/
@ 2024-05-25 20:56 Paul Zander
  0 siblings, 0 replies; 3+ messages in thread
From: Paul Zander @ 2024-05-25 20:56 UTC (permalink / raw
  To: gentoo-commits

commit:     cab90cf303784e3b5efdb70291729be3a83aa29d
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Sat May 25 20:56:11 2024 +0000
Commit:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
CommitDate: Sat May 25 20:56:11 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=cab90cf3

x11-driver/evdi: new package, add 14.4.4

Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>

 x11-drivers/evdi/Manifest                          |  1 +
 x11-drivers/evdi/evdi-1.14.4.ebuild                | 75 ++++++++++++++++++++++
 .../evdi/files/evdi-1.14.4-format-truncation.patch | 22 +++++++
 x11-drivers/evdi/metadata.xml                      | 14 ++++
 4 files changed, 112 insertions(+)

diff --git a/x11-drivers/evdi/Manifest b/x11-drivers/evdi/Manifest
new file mode 100644
index 000000000..ef25cc00d
--- /dev/null
+++ b/x11-drivers/evdi/Manifest
@@ -0,0 +1 @@
+DIST evdi-1.14.4.tar.gz 88726 BLAKE2B 15aa13c1e6f67f923cf474a7f33bc1b8ce97e87e3ea19d53ae4c4b827581311907c5d98128190c97a530e566595b2ffd46a10450a63a8ecfc5a352d1f3e80f23 SHA512 53354fc9b09870768b54a6ea391dd7c406d372a248623f628334a1fecd433a59a729821b8a8af4ab31d0dca944d330156d88e79af308964c5686798ab20cabf3

diff --git a/x11-drivers/evdi/evdi-1.14.4.ebuild b/x11-drivers/evdi/evdi-1.14.4.ebuild
new file mode 100644
index 000000000..b88c2a543
--- /dev/null
+++ b/x11-drivers/evdi/evdi-1.14.4.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit linux-mod-r1 python-single-r1
+
+DESCRIPTION="Extensible Virtual Display Interface"
+HOMEPAGE="https://github.com/DisplayLink/evdi"
+SRC_URI="https://github.com/DisplayLink/evdi/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+IUSE="python test"
+
+RDEPEND="${PYTHON_DEPS}
+	x11-libs/libdrm
+	python? (
+		$(python_gen_cond_dep '
+			dev-python/pybind11[${PYTHON_USEDEP}]
+			test? (
+				dev-python/pytest-mock[${PYTHON_USEDEP}]
+			)
+		')
+	)
+"
+
+DEPEND="${RDEPEND}
+	sys-kernel/linux-headers
+"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RESTRICT="!test? ( test )"
+
+CONFIG_CHECK="~FB_VIRTUAL ~I2C"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.14.4-format-truncation.patch"
+)
+
+pkg_setup() {
+	linux-mod-r1_pkg_setup
+	use python && python-single-r1_pkg_setup
+}
+
+src_compile() {
+	local modlist=(
+		"evdi=video:${S}/module"
+	)
+	linux-mod-r1_src_compile
+
+	emake library
+	ln -srf "${S}/library/libevdi.so"{".$(ver_cut 1)",} || die
+
+	use python && emake pyevdi
+}
+
+src_test() {
+	use python && emake -C pyevdi tests
+}
+
+src_install() {
+	linux-mod-r1_src_install
+
+	dolib.so "library/libevdi.so.${PV}"
+
+	dosym "libevdi.so.${PV}" "/usr/$(get_libdir)/libevdi.so.$(ver_cut 1)"
+	dosym "libevdi.so.$(ver_cut 1)" "/usr/$(get_libdir)/libevdi.so"
+
+	use python && DESTDIR="${D}" emake -C pyevdi install
+}

diff --git a/x11-drivers/evdi/files/evdi-1.14.4-format-truncation.patch b/x11-drivers/evdi/files/evdi-1.14.4-format-truncation.patch
new file mode 100644
index 000000000..fb6ccb835
--- /dev/null
+++ b/x11-drivers/evdi/files/evdi-1.14.4-format-truncation.patch
@@ -0,0 +1,22 @@
+diff --git a/library/evdi_lib.c b/library/evdi_lib.c
+index ec22b01..8618bc8 100644
+--- a/library/evdi_lib.c
++++ b/library/evdi_lib.c
+@@ -473,7 +473,8 @@ static bool is_correct_parent_device(const char *dirname, size_t dirname_maxlen,
+ {
+ 	char link_path[PATH_MAX];
+ 
+-	snprintf(link_path, MIN(PATH_MAX - 7, dirname_maxlen), "%s/device", dirname);
++	assert((strnlen(dirname, dirname_maxlen) + 7) < PATH_MAX);
++	snprintf(link_path, sizeof(link_path), "%s/device", dirname);
+ 
+ 	if (parent_device == NULL)
+ 		return access(link_path, F_OK) != 0;
+@@ -619,6 +620,7 @@ static enum evdi_device_status evdi_device_to_platform(int device, char *path)
+ 
+ 		snprintf(path, PATH_MAX,
+ 			"/sys/bus/platform/devices/%s", fd_entry->d_name);
++		assert((strnlen(path, PATH_MAX) + 5) < PATH_MAX);
+ 		snprintf(card_path, PATH_MAX, "%s/drm/card%d", path, device);
+ 		if (path_exists(card_path)) {
+ 			status = AVAILABLE;

diff --git a/x11-drivers/evdi/metadata.xml b/x11-drivers/evdi/metadata.xml
new file mode 100644
index 000000000..d4a93bd43
--- /dev/null
+++ b/x11-drivers/evdi/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>negril.nx+gentoo@gmail.com</email>
+		<name>Paul Zander</name>
+	</maintainer>
+	<upstream>
+		<remote-id type="github">DisplayLink/evdi</remote-id>
+	</upstream>
+	<use>
+		<flag name="python">Build PyEvdi</flag>
+	</use>
+</pkgmetadata>


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-01-13 12:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-21 16:23 [gentoo-commits] repo/proj/guru:dev commit in: x11-drivers/evdi/, x11-drivers/evdi/files/ Paul Zander
  -- strict thread matches above, loose matches on Subject: below --
2025-01-13 12:42 Paul Zander
2024-05-25 20:56 Paul Zander

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox