* [ptxdist] [PATCH 1/2] libsolv: New package
@ 2025-10-13 14:12 Sven Püschel
2025-10-13 14:12 ` [ptxdist] [PATCH 2/2] opkg: version bump 0.7.0 -> 0.9.0 Sven Püschel
0 siblings, 1 reply; 2+ messages in thread
From: Sven Püschel @ 2025-10-13 14:12 UTC (permalink / raw)
To: ptxdist; +Cc: Sven Püschel
libsolv is a package dependency solving library used by some
package managers.
Signed-off-by: Sven Püschel <s.pueschel@pengutronix.de>
---
rules/host-libsolv.in | 6 +++
rules/host-libsolv.make | 14 +++++++
rules/libsolv.in | 8 ++++
rules/libsolv.make | 93 +++++++++++++++++++++++++++++++++++++++++
4 files changed, 121 insertions(+)
create mode 100644 rules/host-libsolv.in
create mode 100644 rules/host-libsolv.make
create mode 100644 rules/libsolv.in
create mode 100644 rules/libsolv.make
diff --git a/rules/host-libsolv.in b/rules/host-libsolv.in
new file mode 100644
index 000000000..1b3f57fc4
--- /dev/null
+++ b/rules/host-libsolv.in
@@ -0,0 +1,6 @@
+## SECTION=hosttools_noprompt
+
+config HOST_LIBSOLV
+ tristate
+ select HOST_CMAKE
+ default y if ALLYES
diff --git a/rules/host-libsolv.make b/rules/host-libsolv.make
new file mode 100644
index 000000000..cd938bbe6
--- /dev/null
+++ b/rules/host-libsolv.make
@@ -0,0 +1,14 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2025 by Sven Püschel <s.pueschel@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+HOST_PACKAGES-$(PTXCONF_HOST_LIBSOLV) += host-libsolv
+
+# vim: syntax=make
diff --git a/rules/libsolv.in b/rules/libsolv.in
new file mode 100644
index 000000000..998557499
--- /dev/null
+++ b/rules/libsolv.in
@@ -0,0 +1,8 @@
+## SECTION=system_libraries
+
+menuconfig LIBSOLV
+ tristate
+ select HOST_CMAKE
+ prompt "libsolv"
+ help
+ Package dependency solver library
diff --git a/rules/libsolv.make b/rules/libsolv.make
new file mode 100644
index 000000000..7381d01bf
--- /dev/null
+++ b/rules/libsolv.make
@@ -0,0 +1,93 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2025 by Sven Püschel <s.pueschel@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_LIBSOLV) += libsolv
+
+#
+# Paths and names
+#
+LIBSOLV_VERSION := 0.7.35
+LIBSOLV_MD5 := 442f8283a03bae0b0591536a9aac4c29
+LIBSOLV := libsolv-$(LIBSOLV_VERSION)
+LIBSOLV_SUFFIX := tar.gz
+LIBSOLV_URL := https://github.com/openSUSE/libsolv/archive/$(LIBSOLV_VERSION)/$(LIBSOLV).$(LIBSOLV_SUFFIX)
+LIBSOLV_SOURCE := $(SRCDIR)/$(LIBSOLV).$(LIBSOLV_SUFFIX)
+LIBSOLV_DIR := $(BUILDDIR)/$(LIBSOLV)
+LIBSOLV_LICENSE := BSD-3-Clause
+LIBSOLV_LICENSE_FILES := \
+ file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8 \
+ file://src/solver.c;startline=1;endline=6;md5=25bead0f383354e6ccfb31ebf9ca8be4
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+LIBSOLV_CONF_TOOL := cmake
+LIBSOLV_CONF_OPT := \
+ $(CROSS_CMAKE_USR) \
+ -DDISABLE_SHARED=OFF \
+ -DENABLE_APK=OFF \
+ -DENABLE_APPDATA=OFF \
+ -DENABLE_ARCHREPO=OFF \
+ -DENABLE_BZIP2_COMPRESSION=OFF \
+ -DENABLE_COMPS=OFF \
+ -DENABLE_CONDA=OFF \
+ -DENABLE_CUDFREPO=OFF \
+ -DENABLE_DEBIAN=OFF \
+ -DENABLE_HAIKU=OFF \
+ -DENABLE_HELIXREPO=OFF \
+ -DENABLE_LUA=OFF \
+ -DENABLE_LZMA_COMPRESSION=OFF \
+ -DENABLE_MDKREPO=OFF \
+ -DENABLE_PERL=OFF \
+ -DENABLE_PUBKEY=OFF \
+ -DENABLE_PYTHON=OFF \
+ -DENABLE_RPMDB=OFF \
+ -DENABLE_RPMDB_BDB=OFF \
+ -DENABLE_RPMDB_BYRPMHEADER=OFF \
+ -DENABLE_RPMDB_LIBRPM=OFF \
+ -DENABLE_RPMMD=OFF \
+ -DENABLE_RPMPKG=OFF \
+ -DENABLE_RPMPKG_LIBRPM=OFF \
+ -DENABLE_RUBY=OFF \
+ -DENABLE_STATIC=OFF \
+ -DENABLE_STATIC_BINDINGS=OFF \
+ -DENABLE_STATIC_TOOLS=OFF \
+ -DENABLE_SUSEREPO=OFF \
+ -DENABLE_TCL=OFF \
+ -DENABLE_ZCHUNK_COMPRESSION=OFF \
+ -DENABLE_ZSTD_COMPRESSION=OFF \
+ -DMULTI_SEMANTICS=OFF \
+ -DUSE_VENDORDIRS=OFF \
+ -DWITHOUT_COOKIEOPEN=OFF \
+ -DWITH_LIBXML2=OFF \
+ -DWITH_SYSTEM_ZCHUNK=OFF
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/libsolv.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, libsolv)
+ @$(call install_fixup, libsolv,PRIORITY,optional)
+ @$(call install_fixup, libsolv,SECTION,base)
+ @$(call install_fixup, libsolv,AUTHOR,"Sven Püschel <s.pueschel@pengutronix.de>")
+ @$(call install_fixup, libsolv,DESCRIPTION,missing)
+
+ @$(call install_lib, libsolv, 0, 0, 0644, libsolv)
+
+ @$(call install_finish, libsolv)
+
+ @$(call touch)
+
+# vim: syntax=make
--
2.47.3
^ permalink raw reply [flat|nested] 2+ messages in thread
* [ptxdist] [PATCH 2/2] opkg: version bump 0.7.0 -> 0.9.0
2025-10-13 14:12 [ptxdist] [PATCH 1/2] libsolv: New package Sven Püschel
@ 2025-10-13 14:12 ` Sven Püschel
0 siblings, 0 replies; 2+ messages in thread
From: Sven Püschel @ 2025-10-13 14:12 UTC (permalink / raw)
To: ptxdist; +Cc: Sven Püschel
Due to access problems, the current releases of opkg are not currently
uploaded to the release folder. Therefore get it from the git repo. See:
https://lists.yoctoproject.org/g/opkg/topic/release_tarball_for_0_9_0/115374634
opkg switched in version 0.9.0 to CMake as a build system.
Use the libsolv library, as the internal SAT solver is marked as
deprecated and will probably be removed in a future version.
https://git.yoctoproject.org/opkg/tag/?h=v0.8.0
https://git.yoctoproject.org/opkg/tag/?h=v0.9.0
Signed-off-by: Sven Püschel <s.pueschel@pengutronix.de>
---
rules/host-opkg.in | 2 ++
rules/host-opkg.make | 32 +++++++++++++++-----------------
rules/opkg.in | 3 +++
rules/opkg.make | 40 +++++++++++++++++++---------------------
4 files changed, 39 insertions(+), 38 deletions(-)
diff --git a/rules/host-opkg.in b/rules/host-opkg.in
index dd42e4087..190f38e44 100644
--- a/rules/host-opkg.in
+++ b/rules/host-opkg.in
@@ -3,7 +3,9 @@
config HOST_OPKG
tristate
default y if ALLYES
+ select HOST_CMAKE
select HOST_LIBARCHIVE
+ select HOST_LIBSOLV
select HOST_OPKG_UTILS
help
opkg is used on the development host to install packets into
diff --git a/rules/host-opkg.make b/rules/host-opkg.make
index a9fe3d20a..ff9afd2aa 100644
--- a/rules/host-opkg.make
+++ b/rules/host-opkg.make
@@ -22,23 +22,21 @@ HOST_OPKG_DIR = $(HOST_BUILDDIR)/$(HOST_OPKG)
# Prepare
# ----------------------------------------------------------------------------
-#
-# autoconf
-#
-HOST_OPKG_CONF_TOOL := autoconf
+HOST_OPKG_CONF_TOOL := cmake
HOST_OPKG_CONF_OPT := \
- $(HOST_AUTOCONF) \
- --disable-libopkg-api \
- --disable-static \
- --disable-xz \
- --disable-bzip2 \
- --disable-lz4 \
- --disable-zstd \
- --disable-curl \
- --disable-sha256 \
- --disable-ssl-curl \
- --disable-gpg \
- --without-static-libopkg \
- --without-libsolv
+ $(HOST_CMAKE_OPT) \
+ -DSTATIC_LIBOPKG=OFF \
+ -DUSE_ACL=OFF \
+ -DUSE_SOLVER_INTERNAL=OFF \
+ -DUSE_SOLVER_LIBSOLV=ON \
+ -DUSE_XATTR=OFF \
+ -DWITH_BZIP2=OFF \
+ -DWITH_CURL=OFF \
+ -DWITH_GPGME=OFF \
+ -DWITH_LIBOPKG_API=OFF \
+ -DWITH_LZ4=OFF \
+ -DWITH_SHA256=OFF \
+ -DWITH_XZ=OFF \
+ -DWITH_ZSTD=OFF
# vim: syntax=make
diff --git a/rules/opkg.in b/rules/opkg.in
index fa913537c..db3b8b418 100644
--- a/rules/opkg.in
+++ b/rules/opkg.in
@@ -2,8 +2,10 @@
menuconfig OPKG
tristate
+ select HOST_CMAKE
select LIBARCHIVE
select LIBCURL if OPKG_CURL
+ select LIBSOLV
prompt "opkg "
help
Opkg is a lightweight package management system based on Ipkg.
@@ -29,6 +31,7 @@ config OPKG_SHA256
config OPKG_SSL_CURL
bool
prompt "libcurl certificate authentication"
+ depends on OPKG_CURL
help
FIXME
diff --git a/rules/opkg.make b/rules/opkg.make
index 1ceca3ef1..93eb693fc 100644
--- a/rules/opkg.make
+++ b/rules/opkg.make
@@ -15,11 +15,11 @@ PACKAGES-$(PTXCONF_OPKG) += opkg
#
# Paths and names
#
-OPKG_VERSION := 0.7.0
-OPKG_MD5 := 6bf0315a3fd5fd046279d0fd98a39016
+OPKG_VERSION := 0.9.0
+OPKG_MD5 := 3a100d77beaedd4820599d91bc53e302
OPKG := opkg-$(OPKG_VERSION)
OPKG_SUFFIX := tar.gz
-OPKG_URL := http://downloads.yoctoproject.org/releases/opkg/$(OPKG).$(OPKG_SUFFIX)
+OPKG_URL := https://git.yoctoproject.org/opkg/snapshot/$(OPKG).$(OPKG_SUFFIX)
OPKG_SOURCE := $(SRCDIR)/$(OPKG).$(OPKG_SUFFIX)
OPKG_DIR := $(BUILDDIR)/$(OPKG)
OPKG_LICENSE := GPL-2.0-or-later
@@ -29,25 +29,23 @@ OPKG_LICENSE_FILES := file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f
# Prepare
# ----------------------------------------------------------------------------
-#
-# autoconf
-#
-OPKG_CONF_TOOL := autoconf
+OPKG_CONF_TOOL := cmake
OPKG_CONF_OPT := \
- $(CROSS_AUTOCONF_USR) \
- $(GLOBAL_LARGE_FILE_OPTION) \
- --disable-libopkg-api \
- --disable-static \
- --disable-xz \
- --disable-bzip2 \
- --disable-lz4 \
- --disable-zstd \
- --$(call ptx/endis, PTXCONF_OPKG_CURL)-curl \
- --$(call ptx/endis, PTXCONF_OPKG_SHA256)-sha256 \
- --$(call ptx/endis, PTXCONF_OPKG_SSL_CURL)-ssl-curl \
- --$(call ptx/endis, PTXCONF_OPKG_GPG)-gpg \
- --without-static-libopkg \
- --without-libsolv
+ $(CROSS_CMAKE_USR) \
+ -DSTATIC_LIBOPKG=OFF \
+ -DUSE_ACL=OFF \
+ -DUSE_SOLVER_INTERNAL=OFF \
+ -DUSE_SOLVER_LIBSOLV=ON \
+ -DUSE_XATTR=OFF \
+ -DWITH_BZIP2=OFF \
+ -DWITH_CURL=$(call ptx/onoff, PTXCONF_OPKG_CURL) \
+ -DWITH_GPGME=$(call ptx/onoff, PTXCONF_OPKG_GPG) \
+ -DWITH_LIBOPKG_API=OFF \
+ -DWITH_LZ4=OFF \
+ -DWITH_SHA256=$(call ptx/onoff, PTXCONF_OPKG_SHA256) \
+ -DWITH_SSLCURL=$(call ptx/onoff, PTXCONF_OPKG_SSL_CURL) \
+ -DWITH_XZ=OFF \
+ -DWITH_ZSTD=OFF
# ----------------------------------------------------------------------------
# Target-Install
--
2.47.3
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-10-13 14:12 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-10-13 14:12 [ptxdist] [PATCH 1/2] libsolv: New package Sven Püschel
2025-10-13 14:12 ` [ptxdist] [PATCH 2/2] opkg: version bump 0.7.0 -> 0.9.0 Sven Püschel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox