From: Stuart Cassoff Subject: x11/x11vnc: Don't use MODTK_VERSION in substitution. To: OpenBSD Ports Date: Thu, 20 Nov 2025 15:56:02 +0000 A step towards removing MODTK_VERSION from SUBST_VARS.The gui works fine with Tk 8.6. The patch is also a little nicer.$ x11vnc -gui Unrelated to Tk, I have to use '-noshm' or else x11vnc dies with a SIGABRT and doesn't clean up properly. The list output by ipcs(1) will continue to grow. If x11vnc is run repeatedly then it will eventually die with "no space left on device". Seems to happen when calling XShmGetImage(3). Stu Index: Makefile=================================================================== RCS file: /cvs/ports/x11/x11vnc/Makefile,v diff -u -p -u -p -r1.58 Makefile --- Makefile 21 May 2025 13:27:22 -0000 1.58 +++ Makefile 20 Nov 2025 15:22:49 -0000 @@ -4,6 +4,8 @@ GH_ACCOUNT = LibVNC GH_PROJECT = x11vnc GH_TAGNAME = 0.9.17 +REVISION = 0 + CATEGORIES = x11 # GPLv2 @@ -14,6 +16,8 @@ WANTLIB += Xrandr Xtst avahi-client avah WANTLIB += ssl vncclient vncserver MODULES = x11/tk +MODTK_VERSION = 8.6 + RUN_DEPENDS = devel/desktop-file-utils \ ${MODTK_RUN_DEPENDS} LIB_DEPENDS = graphics/cairo \ @@ -30,6 +34,10 @@ CONFIGURE_ENV += ac_cv_header_linux_inpu AUTOCONF_VERSION = 2.69 AUTOMAKE_VERSION = 1.15 + +SUBST_VARS = WISH_BIN + +WISH_BIN = ${MODTK_BIN:T} pre-configure: ${SUBST_CMD} ${WRKSRC}/src/gui.c Index: patches/patch-src_gui_c =================================================================== RCS file: /cvs/ports/x11/x11vnc/patches/patch-src_gui_c,v diff -u -p -u -p -r1.2 patch-src_gui_c --- patches/patch-src_gui_c 11 Mar 2022 20:17:40 -0000 1.2 +++ patches/patch-src_gui_c 20 Nov 2025 15:22:49 -0000 @@ -8,7 +8,7 @@ - ":/usr/X11R6/bin:/usr/openwin/bin:/usr/dt/bin:/opt/sfw/bin"; -static char *wishes[] = {"wish8.4", "wish", "wish8.3", "wish8.5", "wish8.6", "wish8.7", "wishx", "wish8.0", NULL}; +static char *extra_path = ":${PREFIX}/bin:${LOCALBASE}/bin:${X11BASE}/bin"; -+static char *wishes[] = {"wish${MODTK_VERSION}", NULL}; ++static char *wishes[] = {"${WISH_BIN}", NULL}; static void run_gui(char *gui_xdisplay, int connect_to_x11vnc, int start_x11vnc, int simple_gui, pid_t parent, char *gui_opts) {