From 574be754c1429a8dff5c4e647990b23129da8329 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 12 Nov 2026 00:00:43 -0800 Subject: [PATCH] libgnt: upgrade 2.14.3 -> 2.15.0 Drop 0001-meson-use-pkg-config-to-find-ncursesw-panelw.patch, upstream now uses pkg-config for ncursesw and panelw, and the python2 meson option, which was removed. AI-Generated: Uses Claude Code Signed-off-by: Khem Raj --- ...e-pkg-config-to-find-ncursesw-panelw.patch | 111 ------------------ .../{libgnt_2.14.3.bb => libgnt_2.15.0.bb} | 5 +- 2 files changed, 2 insertions(+), 114 deletions(-) delete mode 100644 meta-oe/recipes-support/pidgin/libgnt/0001-meson-use-pkg-config-to-find-ncursesw-panelw.patch rename meta-oe/recipes-support/pidgin/{libgnt_2.14.3.bb => libgnt_2.15.0.bb} (74%) diff --git a/meta-oe/recipes-support/pidgin/libgnt/0001-meson-use-pkg-config-to-find-ncursesw-panelw.patch b/meta-oe/recipes-support/pidgin/libgnt/0001-meson-use-pkg-config-to-find-ncursesw-panelw.patch deleted file mode 100644 index 9d2d2ab77c..0000000000 --- a/meta-oe/recipes-support/pidgin/libgnt/0001-meson-use-pkg-config-to-find-ncursesw-panelw.patch +++ /dev/null @@ -1,111 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 4 Aug 2026 00:00:00 +0000 -Subject: [PATCH] meson: use pkg-config to find ncursesw/panelw - -The hand-rolled ncurses detection hardcodes the absolute host paths -/usr/include/ncursesw and /usr/include when probing for ncurses.h and adds -the matching -I to the compile line. When cross-compiling this leaks the -build host's ncurses headers into the target compile: - - gntwm.c:170:21: error: incomplete definition of type 'PANEL' - -because the host's panel.h keeps PANEL opaque while the target sysroot's -does not. - -Use pkg-config (ncursesw/panelw, falling back to ncurses/panel) so meson -takes the include directories from the target sysroot. libgnt 3.0 solves -this the same way upstream. - -Upstream-Status: Inappropriate [libgnt 2.x is a maintenance-only branch; -addressed differently in libgnt 3.0] - -Signed-off-by: Khem Raj ---- - meson.build | 68 ++++++++--------------------------------------------- - 1 file changed, 10 insertions(+), 58 deletions(-) - ---- a/meson.build -+++ b/meson.build -@@ -69,68 +69,28 @@ - ####################################################################### - # Check for ncurses and other things used by it - ####################################################################### --ncurses_available = true --ncurses_inc = [] --# The order of this list is important to the condition that follows. --ncurses_libs = [ -- compiler.find_library('ncursesw', required : false), -- compiler.find_library('panelw', required : false), -- compiler.find_library('tinfow', required : false), -+# Use pkg-config so that cross builds pick up the include directories from -+# the target sysroot rather than the build host's /usr/include. -+ncurses_deps = [ -+ dependency('ncursesw', required : false), -+ dependency('panelw', required : false), - ] --if not ncurses_libs[0].found() or not ncurses_libs[1].found() -- ncurses_available = false --endif -- --if host_machine.system() == 'windows' -- # FIXME: $host ? -- ncurses_sys_prefix = '/usr/$host/sys-root/mingw' --else -- ncurses_sys_prefix = '/usr' --endif -+ncurses_available = ncurses_deps[0].found() and ncurses_deps[1].found() - --ncurses_sys_dirs = [ncurses_sys_prefix + '/include/ncursesw', -- ncurses_sys_prefix + '/include'] -- --if ncurses_available -- # Some distros put the headers in ncursesw/, some don't -- found_ncurses_h = false -- foreach location : ncurses_sys_dirs -- f = location + '/ncurses.h' -- if not found_ncurses_h -- if compiler.has_header_symbol(f, 'get_wch', -- prefix : '#define _XOPEN_SOURCE_EXTENDED') -- if location != '.' -- ncurses_inc += [include_directories(location)] -- endif -- found_ncurses_h = true -- endif -- endif -- endforeach -- -- if not found_ncurses_h -- ncurses_inc = [] -- ncurses_libs = [] -- ncurses_available = false -- endif --else -- # ncursesw was not found. Look for plain old ncurses -- # The order of this list is important to the condition that follows. -- ncurses_libs = [ -- compiler.find_library('ncurses', required : false), -- compiler.find_library('panel', required : false), -- compiler.find_library('tinfo', required : false), -+if not ncurses_available -+ # ncursesw was not found. Look for plain old ncurses. -+ ncurses_deps = [ -+ dependency('ncurses', required : false), -+ dependency('panel', required : false), - ] -- ncurses_available = ncurses_libs[0].found() and ncurses_libs[1].found() -+ ncurses_available = ncurses_deps[0].found() and ncurses_deps[1].found() - gnt_config.set('NO_WIDECHAR', true) - endif - if not ncurses_available - error('ncurses could not be found!') - endif - --ncurses = declare_dependency( -- include_directories : ncurses_inc, -- dependencies : ncurses_libs --) -+ncurses = declare_dependency(dependencies : ncurses_deps) - - libgnt_SOURCES = [ - 'gntwidget.c', diff --git a/meta-oe/recipes-support/pidgin/libgnt_2.14.3.bb b/meta-oe/recipes-support/pidgin/libgnt_2.15.0.bb similarity index 74% rename from meta-oe/recipes-support/pidgin/libgnt_2.14.3.bb rename to meta-oe/recipes-support/pidgin/libgnt_2.15.0.bb index ac58a135bc..5f1b35f9d9 100644 --- a/meta-oe/recipes-support/pidgin/libgnt_2.14.3.bb +++ b/meta-oe/recipes-support/pidgin/libgnt_2.15.0.bb @@ -11,13 +11,12 @@ inherit meson pkgconfig # SRC_URI = "hg://keep.imfreedom.org/${BPN};module=${BPN} SRC_URI = "${SOURCEFORGE_MIRROR}/project/pidgin/${BPN}/${PV}/${BP}.tar.xz \ - file://0001-meson-use-pkg-config-to-find-ncursesw-panelw.patch \ " -SRC_URI[sha256sum] = "57f5457f72999d0bb1a139a37f2746ec1b5a02c094f2710a339d8bcea4236123" +SRC_URI[sha256sum] = "6dce3d4f2fb33c242d8223ddda5f1042f3dfb0ad7c395d4e33a73f92423a58a3" UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/pidgin/files/libgnt/" UPSTREAM_CHECK_REGEX = "${BPN}/(?P\d+(\.\d+)+)" -EXTRA_OEMESON = "-Dpython2=false -Ddoc=false" +EXTRA_OEMESON = "-Ddoc=false" FILES:${PN} += "${libdir}/gnt/s.so ${libdir}/gnt/irssi.so"