From 4461fbe4f743fa13f0d93aef042f4cdc6ee1e702 Mon Sep 17 00:00:00 2001 From: Gyorgy Sarvari Date: Mon, 17 Feb 2025 09:05:18 +0100 Subject: liboop: fix tcl PACKAGECONFIG In case tcl PACKAGECONFIG is enabled, autoconf is trying to use tcl libs and headers from the build system instead of using RECIPE_SYSROOT, and the do_configure task fails: ERROR: liboop-1.0.1-r0 do_configure: QA Issue: This autoconf log indicates errors, it looked at host include and/or library paths while determining system capabilities. Rerun configure task after fixing this. [configure-unsafe] The system path is hardcoded in the configure script. To fix this, patch the configure script to use pkg-config to find tcl in the correct sysroot. Since the previous patch was changing the same part of the script, incorporate that also into the new patch. Also, set the correct build-time dependency. The patch's Upstream-Status is "Pending", because 1. The project has been without activity for almost 15 years 2. Couldn't find info on the website on how to contribute 3. The GitLab instance mentioned on the website is password protected even for read-only access, and registration is enabled only for specific email addresses. 4. Couldn't find any contact info on the website to reach out to the maintainers. Signed-off-by: Gyorgy Sarvari Signed-off-by: Khem Raj --- .../liboop/0001-Use-pkg-config-to-find-tcl.patch | 48 ++++++++++++++++++++++ .../recipes-support/liboop/liboop/tcl_dev.patch | 13 ------ meta-oe/recipes-support/liboop/liboop_1.0.1.bb | 4 +- 3 files changed, 50 insertions(+), 15 deletions(-) create mode 100644 meta-oe/recipes-support/liboop/liboop/0001-Use-pkg-config-to-find-tcl.patch delete mode 100644 meta-oe/recipes-support/liboop/liboop/tcl_dev.patch diff --git a/meta-oe/recipes-support/liboop/liboop/0001-Use-pkg-config-to-find-tcl.patch b/meta-oe/recipes-support/liboop/liboop/0001-Use-pkg-config-to-find-tcl.patch new file mode 100644 index 0000000000..24249b9360 --- /dev/null +++ b/meta-oe/recipes-support/liboop/liboop/0001-Use-pkg-config-to-find-tcl.patch @@ -0,0 +1,48 @@ +From 5dad843ca0860d6d7be443ddc850566584b8004a Mon Sep 17 00:00:00 2001 +From: Gyorgy Sarvari +Date: Sun, 16 Feb 2025 21:09:02 +0100 +Subject: [PATCH] Use pkg-config to find tcl + +Instead of using hardcoded path for the tcl include folder +use pkg-config to find the proper values. + +That way it won't use the system folders for cross-compilation. + +Also, extend the number of tcl versions to check (at the time of +this commit oe-core provides version 8.6) + +Upstream-Status: Pending +--- + configure.ac | 15 +++++++-------- + 1 file changed, 7 insertions(+), 8 deletions(-) + +diff --git a/configure.ac b/configure.ac +index e95956e..3d0dc82 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -71,18 +71,17 @@ if test xno != x$with_glib; then + fi + + if test xno != x$with_tcl; then +- for version in 8.4 8.3 8.2 8.1 8.0 ; do +- CPPFLAGS="$save_cppflags -I/usr/include/tcl$version" +- AC_CHECK_LIB(tcl$version,Tcl_Main,[ +- AC_CHECK_HEADER(tcl.h,[ ++ save_cppflags="$CPPFLAGS" ++ for version in "" 8.4 8.3 8.2 8.1 8.0 ; do ++ PKG_CHECK_EXISTS(tcl$version,,continue) ++ PKG_CHECK_MODULES(TCL, tcl$version, [ + LIBOOP_LIBS="liboop-tcl.la $LIBOOP_LIBS" + AC_DEFINE(HAVE_TCL) +- TCL_INCLUDES="-I/usr/include/tcl$version" +- TCL_LIBS="-ltcl$version" ++ TCL_INCLUDES="$TCL_CFLAGS" ++ CPPFLAGS="$save_cppflags $TCL_CFLAGS" + break +- ])]) ++ ]) + done +- CPPFLAGS="$save_cppflags" + fi + + if test xyes = x$with_libwww; then diff --git a/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch b/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch deleted file mode 100644 index 0521aaeaff..0000000000 --- a/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch +++ /dev/null @@ -1,13 +0,0 @@ -Upstream-Status: Pending - ---- a/configure.ac -+++ b/configure.ac -@@ -71,7 +71,7 @@ - fi - - if test xno != x$with_tcl; then -- for version in 8.4 8.3 8.2 8.1 8.0 ; do -+ for version in "" 8.4 8.3 8.2 8.1 8.0 ; do - CPPFLAGS="$save_cppflags -I/usr/include/tcl$version" - AC_CHECK_LIB(tcl$version,Tcl_Main,[ - AC_CHECK_HEADER(tcl.h,[ diff --git a/meta-oe/recipes-support/liboop/liboop_1.0.1.bb b/meta-oe/recipes-support/liboop/liboop_1.0.1.bb index 8df96bcaa5..19da1d1aa9 100644 --- a/meta-oe/recipes-support/liboop/liboop_1.0.1.bb +++ b/meta-oe/recipes-support/liboop/liboop_1.0.1.bb @@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=8b54f38ccbd44feb80ab90e01af8b700" SRC_URI = "http://ftp.lysator.liu.se/pub/liboop/liboop-${PV}.tar.gz \ - file://tcl_dev.patch \ + file://0001-Use-pkg-config-to-find-tcl.patch \ " SRC_URI[sha256sum] = "56af16ad65e7397dadc8268e37ff6f67431db390c60c75e21a33e12b0e0d17e0" @@ -12,7 +12,7 @@ SRC_URI[sha256sum] = "56af16ad65e7397dadc8268e37ff6f67431db390c60c75e21a33e12b0e PACKAGECONFIG ?= "" PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline" PACKAGECONFIG[glib] = "--with-glib,--without-glib,glib-2.0 libpcre" -PACKAGECONFIG[tcl] = "--with-tcl,--without-tcl,tcl" +PACKAGECONFIG[tcl] = "--with-tcl,--without-tcl,tcl8" EXTRA_OECONF += "--without-adns -without-libwww" -- cgit v1.2.3-54-g00ecf