mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [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