From: Eric Fahlgren Date: Mon, 9 Jun 2025 23:59:13 +0000 (-0700) Subject: package: include abiversion tag in package metadata X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a61a2a9291eed08d735a499828f4f2c7f7744a45;p=thirdparty%2Fopenwrt.git package: include abiversion tag in package metadata OpenWrt library packages are often named using their ABI version, for example 'libubus20250102'. Updates that cause the ABI version to change result in changes to the package name. This makes it impossible for downstream tools to determine when a package update is available without further information. The opkg package manager stores the ABI version as part of its package metadata in the ABIVersion field. This makes extraction of the canonical name of the package possible, allowing various versions of a package to be associated with one another, their versions or build dates compared. We add a custom tag 'openwrt:abiversion=' to the apk v3 package metadata, restoring the status quo and making it functionally backwards compatible with opkg (the tag format was selected per the guidelines in the apk-tools documentation). Links: https://gitlab.alpinelinux.org/alpine/apk-tools/-/commit/1925de55beef8859c987f72c3b2727d756296ddb Signed-off-by: Eric Fahlgren Link: https://github.com/openwrt/openwrt/pull/19082 Signed-off-by: Robert Marko --- diff --git a/include/package-pack.mk b/include/package-pack.mk index d784d0ac3bb..925c4ca4c75 100644 --- a/include/package-pack.mk +++ b/include/package-pack.mk @@ -376,6 +376,7 @@ else $(FAKEROOT) $(STAGING_DIR_HOST)/bin/apk mkpkg \ --info "name:$(1)$$(ABIV_$(1))" \ --info "version:$(VERSION)" \ + $$(if $$(ABIV_$(1)),--info "tags:openwrt:abiversion=$$(ABIV_$(1))") \ --info "description:$$(call description_escape,$$(strip $$(Package/$(1)/description)))" \ $(if $(findstring all,$(PKGARCH)),--info "arch:noarch",--info "arch:$(PKGARCH)") \ --info "license:$(LICENSE)" \