All of lore.kernel.org
 help / color / mirror / Atom feed
From: ecordonnier@snap.com
To: openembedded-core@lists.openembedded.org
Cc: Etienne Cordonnier <ecordonnier@snap.com>
Subject: [OE-core][PATCH v4 2/2] opkg: upgrade 0.8.0 -> 0.9.0
Date: Thu, 23 Oct 2025 15:46:56 +0200	[thread overview]
Message-ID: <20251023134656.2059483-2-ecordonnier@snap.com> (raw)
In-Reply-To: <20251023134656.2059483-1-ecordonnier@snap.com>

From: Etienne Cordonnier <ecordonnier@snap.com>

See release notes at
- http://downloads.yoctoproject.org/releases/opkg/opkg-0.9.0.release-notes

[0.9.0] - 2025-06-27

Semiannual opkg release.
Bumping the minor version as a result of the project build tooling changing from autotools to cmake.

- Added a Dockerfile container definition (`:docker/`) for a valid developer build environment for opkg.
  - It's recommended that project contributors use this container to build and test their changes.
- The AutoTools-based build framework has [been replaced](https://git.yoctoproject.org/opkg/commit/?id=3f6040e321634471ec442fb0e80f140f1437e90b) with a more modern, CMake framework.
  - Refer to the `docs/CONTRIBUTING.md` documentation for updated build instructions.

Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
---
 .../opkg/opkg/0002-config.h.in-fix-typo.patch | 27 +++++++++++++++++++
 meta/recipes-devtools/opkg/opkg/run-ptest     |  2 +-
 .../opkg/{opkg_0.8.0.bb => opkg_0.9.0.bb}     | 22 ++++++++-------
 3 files changed, 41 insertions(+), 10 deletions(-)
 create mode 100644 meta/recipes-devtools/opkg/opkg/0002-config.h.in-fix-typo.patch
 rename meta/recipes-devtools/opkg/{opkg_0.8.0.bb => opkg_0.9.0.bb} (76%)

diff --git a/meta/recipes-devtools/opkg/opkg/0002-config.h.in-fix-typo.patch b/meta/recipes-devtools/opkg/opkg/0002-config.h.in-fix-typo.patch
new file mode 100644
index 00000000000..626bbd01b68
--- /dev/null
+++ b/meta/recipes-devtools/opkg/opkg/0002-config.h.in-fix-typo.patch
@@ -0,0 +1,27 @@
+From 5a81faadbc2397d554bc598d535fd2d44cbc8d10 Mon Sep 17 00:00:00 2001
+From: Etienne Cordonnier <ecordonnier@snap.com>
+Date: Mon, 20 Oct 2025 18:57:56 +0200
+Subject: [PATCH] config.h.in: fix typo
+
+Upstream-Status: Backport [https://git.yoctoproject.org/opkg/commit/?id=d723a90bfe6409c7ad983ed911225d4aefbfd09e]
+Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
+---
+ config.h.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/config.h.in b/config.h.in
+index 4fa9842..877b8c7 100644
+--- a/config.h.in
++++ b/config.h.in
+@@ -2,7 +2,7 @@
+ #cmakedefine01 WITH_XZ
+ #cmakedefine01 WITH_BZIP2
+ #cmakedefine01 WITH_LZ4
+-#cmakedefine01 WITH_LZSTD
++#cmakedefine01 WITH_ZSTD
+ #cmakedefine01 WITH_CURL
+ #cmakedefine01 WITH_SSLCURL
+ #cmakedefine01 WITH_ACL
+-- 
+2.43.0
+
diff --git a/meta/recipes-devtools/opkg/opkg/run-ptest b/meta/recipes-devtools/opkg/opkg/run-ptest
index 5fb7077eec9..d485a4aace5 100644
--- a/meta/recipes-devtools/opkg/opkg/run-ptest
+++ b/meta/recipes-devtools/opkg/opkg/run-ptest
@@ -2,4 +2,4 @@
 
 OPKG_PATH=$(which opkg)
 
-make OPKG_PATH=$OPKG_PATH run-tests
+make -C tests DATADIR=/share SYSCONFDIR=/etc VARDIR=/var OPKG_PATH=$OPKG_PATH
diff --git a/meta/recipes-devtools/opkg/opkg_0.8.0.bb b/meta/recipes-devtools/opkg/opkg_0.9.0.bb
similarity index 76%
rename from meta/recipes-devtools/opkg/opkg_0.8.0.bb
rename to meta/recipes-devtools/opkg/opkg_0.9.0.bb
index 12e2edf7e3f..ed2f36d636b 100644
--- a/meta/recipes-devtools/opkg/opkg_0.8.0.bb
+++ b/meta/recipes-devtools/opkg/opkg_0.9.0.bb
@@ -15,34 +15,35 @@ PE = "1"
 SRC_URI = "http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz \
            file://opkg.conf \
            file://0001-opkg_conf-create-opkg.lock-in-run-instead-of-var-run.patch \
+           file://0002-config.h.in-fix-typo.patch \
            file://run-ptest \
            "
 
-SRC_URI[sha256sum] = "582a4c9e220cce0b7d08a0915c95db9f24ae43ad372ed5d42d5ec5f6cd413f0c"
+SRC_URI[sha256sum] = "440ef321862e01f83da4d02884a0cbb4d9d7b32f82faa81a6a85493f0c89d0f5"
 
 # This needs to be before ptest inherit, otherwise all ptest files end packaged
 # in libopkg package if OPKGLIBDIR == libdir, because default
 # PTEST_PATH ?= "${libdir}/${BPN}/ptest"
 PACKAGES =+ "libopkg"
 
-inherit autotools pkgconfig ptest
+inherit cmake pkgconfig ptest
 
 target_localstatedir := "${localstatedir}"
 OPKGLIBDIR ??= "${target_localstatedir}/lib"
 
 PACKAGECONFIG ??= "libsolv"
 
-PACKAGECONFIG[gpg] = "--enable-gpg,--disable-gpg,\
+PACKAGECONFIG[gpg] = "-DWITH_GPGME=ON,-DWITH_GPGME=OFF,\
     gnupg gpgme libgpg-error,\
     ${@ "gnupg" if ("native" in d.getVar("PN")) else "gnupg-gpg"}\
     "
-PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl"
-PACKAGECONFIG[ssl-curl] = "--enable-ssl-curl,--disable-ssl-curl,curl openssl"
-PACKAGECONFIG[sha256] = "--enable-sha256,--disable-sha256"
-PACKAGECONFIG[libsolv] = "--with-libsolv,--without-libsolv,libsolv"
+PACKAGECONFIG[curl] = "-DWITH_CURL=ON,-DWITH_CURL=OFF,curl"
+PACKAGECONFIG[ssl-curl] = "-DWITH_SSLCURL=ON,-DWITH_SSLCURL=OFF,curl openssl"
+PACKAGECONFIG[sha256] = "-DWITH_SHA256=ON,-DWITH_SHA256=OFF"
+PACKAGECONFIG[libsolv] = "-DUSE_SOLVER_LIBSOLV=ON,-DUSE_SOLVER_LIBSOLV=OFF,libsolv"
 
-EXTRA_OECONF = "--enable-zstd"
-EXTRA_OECONF:append:class-native = " --localstatedir=/${@os.path.relpath('${localstatedir}', '${STAGING_DIR_NATIVE}')} --sysconfdir=/${@os.path.relpath('${sysconfdir}', '${STAGING_DIR_NATIVE}')}"
+EXTRA_OECMAKE = "-DWITH_ZSTD=ON"
+EXTRA_OECMAKE:append:class-native = " -DVARDIR=/${@os.path.relpath('${localstatedir}', '${STAGING_DIR_NATIVE}')} -DSYSCONFDIR=/${@os.path.relpath('${sysconfdir}', '${STAGING_DIR_NATIVE}')}"
 
 do_install:append () {
 	install -d ${D}${sysconfdir}/opkg
@@ -56,6 +57,9 @@ do_install:append () {
 }
 
 do_install_ptest () {
+	# the ptest class uses a Makefile for installation, but cmake uses Ninja per default so we need to install ptests manually:
+	cp -r ${S}/tests ${D}${PTEST_PATH}
+
 	sed -i -e '/@echo $^/d' ${D}${PTEST_PATH}/tests/Makefile
 	sed -i -e '/@PYTHONPATH=. $(PYTHON) $^/a\\t@if [ "$$?" != "0" ];then echo "FAIL:"$^;else echo "PASS:"$^;fi' ${D}${PTEST_PATH}/tests/Makefile
 }
-- 
2.43.0



  reply	other threads:[~2025-10-23 13:47 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-23 13:46 [OE-core][PATCH v4 1/2] opkg: upgrade 0.7.0 -> 0.8.0 ecordonnier
2025-10-23 13:46 ` ecordonnier [this message]
2025-11-27 17:08   ` [OE-core][PATCH v4 2/2] opkg: upgrade 0.8.0 -> 0.9.0 Gyorgy Sarvari
2025-11-27 18:10     ` Etienne Cordonnier
2025-12-03 21:04       ` Khem Raj
2025-12-03 21:34         ` Khem Raj
2025-12-04 18:56           ` Etienne Cordonnier
2025-12-05 22:15             ` Etienne Cordonnier
2025-12-05 22:34               ` Khem Raj
2025-12-05 22:36                 ` Etienne Cordonnier
2025-12-05 22:55                   ` Khem Raj
2025-12-08 23:44                     ` Etienne Cordonnier
2025-12-09  0:20                       ` Khem Raj
2026-01-09 23:43         ` Ricardo de Araujo (Salveti)
     [not found] ` <187122D70EFBB6A8.8642@lists.openembedded.org>
2025-11-17  9:26   ` Etienne Cordonnier
2025-11-17  9:43     ` Mathieu Dubois-Briand

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251023134656.2059483-2-ecordonnier@snap.com \
    --to=ecordonnier@snap.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.