El Thu, 08 Feb 2024 10:22:55 +0100
Omar Polo <o...@omarpolo.com> escribió:
> Hello,
> 
> Sorry for the delay.
> 
> I haven't tested the diff (yet), but thanks for working on it!  I find
> it curious that glGetQueryObjectuiv is exported and
> glGetQueryObjectui64v is not.  However if upstream is expecting an
> uint64, I'm not sure that silently changing it to a int is a sensible
> thing to do, especially since it seems to be a timestamp.
> 
> It would probably be safer to ask upstream about this and see if they
> have a clue.  Let me know if you prefer to do it, otherwise I can ask
> them.
> 
> 
> Thanks,
> 
> Omar Polo

Sorry, I forget attach the last diff with the changes send to upstream



-- 
*********************************************************
Dios en su cielo, todo bien en la Tierra
Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/picom/Makefile,v
retrieving revision 1.11
diff -u -p -r1.11 Makefile
--- Makefile	24 Apr 2023 11:42:49 -0000	1.11
+++ Makefile	8 Feb 2024 19:57:18 -0000
@@ -1,19 +1,16 @@
 COMMENT =	lightweight compositor for X11
 
-GH_ACCOUNT =	yshui
-GH_PROJECT =	picom
-GH_TAGNAME =	v10.2
-REVISION =	0
+DIST_TUPLE =   github yshui picom v11.1 .
 
 CATEGORIES =	x11
 
 # MPL 2.0
 PERMIT_PACKAGE =	Yes
 
-WANTLIB += EGL GL X11 X11-xcb c config dbus-1 ev m pcre pixman-1
-WANTLIB += xcb-composite xcb-damage xcb-glx xcb-image xcb-present
+WANTLIB += EGL GL X11 X11-xcb c config dbus-1 ev m pcre2-8 pixman-1
+WANTLIB += pthread xcb-composite xcb-damage xcb-glx xcb-image xcb-present
 WANTLIB += xcb-randr xcb-render-util xcb-render xcb-shape xcb-sync
-WANTLIB += xcb-xfixes xcb-xinerama xcb
+WANTLIB += xcb-xfixes xcb-util xcb epoxy
 
 MODULES =		devel/meson
 
@@ -29,7 +26,7 @@ RUN_DEPENDS =		x11/gtk+4,-guic \
 
 LIB_DEPENDS =		devel/libconfig \
 			devel/libev \
-			devel/pcre \
+			devel/pcre2 \
 			x11/dbus
 
 CONFIGURE_ARGS	+=	-Dwith_docs=true \
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/picom/distinfo,v
retrieving revision 1.7
diff -u -p -r1.7 distinfo
--- distinfo	24 Dec 2022 16:35:26 -0000	1.7
+++ distinfo	8 Feb 2024 19:57:18 -0000
@@ -1,2 +1,2 @@
-SHA256 (picom-10.2.tar.gz) = l0FXffATbYor5IAFyiuT7cFZE1KOGbzreYU1ykaDNBw=
-SIZE (picom-10.2.tar.gz) = 287166
+SHA256 (yshui-picom-v11.1.tar.gz) = lvKjOpMGSnS1V5QtAwCirHeshT9Q77v2RmhJ/MdULsg=
+SIZE (yshui-picom-v11.1.tar.gz) = 308617
Index: patches/patch-src_backend_gl_gl_common_c
===================================================================
RCS file: patches/patch-src_backend_gl_gl_common_c
diff -N patches/patch-src_backend_gl_gl_common_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_backend_gl_gl_common_c	8 Feb 2024 19:57:18 -0000
@@ -0,0 +1,16 @@
+Index: src/backend/gl/gl_common.c
+--- src/backend/gl/gl_common.c.orig
++++ src/backend/gl/gl_common.c
+@@ -1,7 +1,12 @@
+ // SPDX-License-Identifier: MPL-2.0
+ // Copyright (c) Yuxuan Shui <yshu...@gmail.com>
++#ifndef __OpenBSD__
+ #include <GL/gl.h>
+ #include <GL/glext.h>
++#else
++#include <epoxy/gl.h>
++#include <epoxy/glx.h>
++#endif
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
Index: patches/patch-src_meson_build
===================================================================
RCS file: patches/patch-src_meson_build
diff -N patches/patch-src_meson_build
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_meson_build	8 Feb 2024 19:57:18 -0000
@@ -0,0 +1,16 @@
+Index: src/meson.build
+--- src/meson.build.orig
++++ src/meson.build
+@@ -82,8 +82,11 @@ host_system = host_machine.system()
+ if host_system == 'linux'
+ 	cflags += ['-DHAS_INOTIFY']
+ elif (host_system == 'freebsd' or host_system == 'netbsd' or
+-      host_system == 'dragonfly' or host_system == 'openbsd')
++      host_system == 'dragonfly')
+ 	cflags += ['-DHAS_KQUEUE']
++elif host_system == 'openbsd'
++	cflags += ['-DHAS_KQUEUE']
++        deps += [dependency('epoxy', required: true)]
+ endif
+ 
+ subdir('backend')
Index: patches/patch-src_picom_c
===================================================================
RCS file: patches/patch-src_picom_c
diff -N patches/patch-src_picom_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_picom_c	8 Feb 2024 19:57:18 -0000
@@ -0,0 +1,68 @@
+Index: src/picom.c
+--- src/picom.c.orig
++++ src/picom.c
+@@ -2553,24 +2553,46 @@ err:
+ /// This requires the user to set up permissions for the real-time scheduling. e.g. by
+ /// setting `ulimit -r`, or giving us the CAP_SYS_NICE capability.
+ void set_rr_scheduling(void) {
+-	int priority = sched_get_priority_min(SCHED_RR);
+-
+-	int ret;
+-	struct sched_param param;
+-
+-	ret = sched_getparam(0, &param);
+-	if (ret != 0) {
+-		log_debug("Failed to get old scheduling priority");
+-		return;
+-	}
+-
+-	param.sched_priority = priority;
+-	ret = sched_setscheduler(0, SCHED_RR, &param);
+-	if (ret != 0) {
+-		log_info("Failed to set real-time scheduling priority to %d.", priority);
+-		return;
+-	}
+-	log_info("Set real-time scheduling priority to %d", priority);
++#ifndef __OpenBSD__
++        int priority = sched_get_priority_min(SCHED_RR);
++
++        int ret;
++        struct sched_param param;
++
++        ret = sched_getparam(0, &param);
++        if (ret != 0) {
++                log_debug("Failed to get old scheduling priority");
++                return;
++        }
++
++        param.sched_priority = priority;
++        ret = sched_setscheduler(0, SCHED_RR, &param);
++        if (ret != 0) {
++                log_info("Failed to set real-time scheduling priority to %d.", priority);
++                return;
++        }
++        log_info("Set real-time scheduling priority to %d", priority);
++#else // OpenBSD real-time support
++        int priority = sched_get_priority_min(SCHED_RR);
++
++        int old_policy;
++        int ret;
++        struct sched_param param;
++
++        ret = pthread_getschedparam(pthread_self(), &old_policy, &param);
++        if (ret != 0) {
++                log_debug("Failed to get old scheduling priority");
++                return;
++        }
++      
++      	param.sched_priority = priority;
++        ret = pthread_setschedparam(pthread_self(), SCHED_RR, &param);
++        if (ret != 0) {
++                log_info("Failed to set real-time scheduling priority to %d.", priority);
++                return;
++        }
++        log_info("Set real-time scheduling priority to %d", priority);
++#endif
+ }
+ 
+ /**

Reply via email to