aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2021-02-12 11:16:35 +0100
committerFelix Fietkau <nbd@nbd.name>2021-02-14 19:41:52 +0100
commitc92165038217e49075098479704da58a2a3a89bd (patch)
treeb5b6d843dc3d09c7c5074da3f20aaf8c8964837e
parentf421fefa8a34319c5ff5dcc1af39d6311ec1ad1e (diff)
downloadupstream-c92165038217e49075098479704da58a2a3a89bd.tar.gz
upstream-c92165038217e49075098479704da58a2a3a89bd.tar.bz2
upstream-c92165038217e49075098479704da58a2a3a89bd.zip
build: drop ABI version from metadata
Preparation for supporting dynamic ABI versions that depend on the runtime configuration. Read the suffix from the staging dir pkginfo version files. Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r--include/feeds.mk2
-rw-r--r--include/package-dumpinfo.mk3
-rw-r--r--include/package-ipkg.mk9
-rw-r--r--scripts/metadata.pm1
-rwxr-xr-xscripts/package-metadata.pl15
5 files changed, 9 insertions, 21 deletions
diff --git a/include/feeds.mk b/include/feeds.mk
index ef5fef7f4b..5676cc4a8f 100644
--- a/include/feeds.mk
+++ b/include/feeds.mk
@@ -43,5 +43,5 @@ endef
# 1: package name
define GetABISuffix
-$(if $(filter-out kmod-%,$(1)),$(if $(Package/$(1)/abiversion),$(if $(filter %0 %1 %2 %3 %4 %5 %6 %7 %8 %9,$(1)),-)$(Package/$(1)/abiversion)))
+$(if $(filter-out kmod-%,$(1)),$(foreach v,$(wildcard $(STAGING_DIR)/pkginfo/$(1).version),$(shell cat $(v))))
endef
diff --git a/include/package-dumpinfo.mk b/include/package-dumpinfo.mk
index 30b0187f11..597452e4b9 100644
--- a/include/package-dumpinfo.mk
+++ b/include/package-dumpinfo.mk
@@ -21,8 +21,7 @@ $(if $(MENU),Menu: $(MENU)
)$(if $(DEFAULT),Default: $(DEFAULT)
)$(if $(findstring $(PREREQ_CHECK),1),Prereq-Check: 1
)Version: $(VERSION)
-$(if $(ABI_VERSION),ABIVersion: $(ABI_VERSION)
-)Depends: $(call PKG_FIXUP_DEPENDS,$(1),$(DEPENDS))
+Depends: $(call PKG_FIXUP_DEPENDS,$(1),$(DEPENDS))
Conflicts: $(CONFLICTS)
Menu-Depends: $(MDEPENDS)
Provides: $(PROVIDES)
diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk
index fb1b7549fb..e89276ed1a 100644
--- a/include/package-ipkg.mk
+++ b/include/package-ipkg.mk
@@ -99,7 +99,7 @@ _endef=endef
ifeq ($(DUMP),)
define BuildTarget/ipkg
- ABIV_$(1):=$(call GetABISuffix,$(1))
+ ABIV_$(1):=$(if $(filter-out kmod-%,$(1)),$(ABI_VERSION))
PDIR_$(1):=$(call FeedPackageDir,$(1))
IPKG_$(1):=$$(PDIR_$(1))/$(1)$$(ABIV_$(1))_$(VERSION)_$(PKGARCH).ipk
IDIR_$(1):=$(PKG_BUILD_DIR)/ipkg-$(PKGARCH)/$(1)
@@ -157,7 +157,12 @@ ifeq ($(DUMP),)
$(STAGING_DIR_ROOT)/stamp/.$(1)_installed: $(PKG_BUILD_DIR)/.pkgdir/$(1).installed
mkdir -p $(STAGING_DIR_ROOT)/stamp
- $(if $(ABI_VERSION),echo '$(ABI_VERSION)' | cmp -s - $(PKG_INFO_DIR)/$(1).version || echo '$(ABI_VERSION)' > $(PKG_INFO_DIR)/$(1).version)
+ $(if $(ABI_VERSION),echo '$(ABI_VERSION)' | cmp -s - $(PKG_INFO_DIR)/$(1).version || \
+ echo '$(ABI_VERSION)' > $(PKG_INFO_DIR)/$(1).version \
+ $(foreach pkg,$(filter-out $(1),$(PROVIDES)),; \
+ cp $(PKG_INFO_DIR)/$(1).version $(PKG_INFO_DIR)/$(pkg).version \
+ ) \
+ )
$(call locked,$(CP) $(PKG_BUILD_DIR)/.pkgdir/$(1)/. $(STAGING_DIR_ROOT)/,root-copy)
touch $$@
diff --git a/scripts/metadata.pm b/scripts/metadata.pm
index f6dce39662..5fbb77a36c 100644
--- a/scripts/metadata.pm
+++ b/scripts/metadata.pm
@@ -249,7 +249,6 @@ sub parse_package_metadata($) {
/^Build-Types:\s*(.+)\s*$/ and $src->{buildtypes} = [ split /\s+/, $1 ];
next unless $pkg;
/^Version: \s*(.+)\s*$/ and $pkg->{version} = $1;
- /^ABIVersion: \s*(.+)\s*$/ and $pkg->{abiversion} = $1;
/^Title: \s*(.+)\s*$/ and $pkg->{title} = $1;
/^Menu: \s*(.+)\s*$/ and $pkg->{menu} = $1;
/^Submenu: \s*(.+)\s*$/ and $pkg->{submenu} = $1;
diff --git a/scripts/package-metadata.pl b/scripts/package-metadata.pl
index 5abc1bdef3..02102be8f3 100755
--- a/scripts/package-metadata.pl
+++ b/scripts/package-metadata.pl
@@ -532,21 +532,6 @@ sub gen_package_auxiliary() {
if ($pkg->{name} && $pkg->{repository}) {
print "Package/$name/subdir = $pkg->{repository}\n";
}
- if ($pkg->{name} && defined($pkg->{abiversion}) && length($pkg->{abiversion})) {
- my $abiv;
-
- if ($pkg->{abiversion} =~ m!^(\d{4})-(\d{2})-(\d{2})-[0-9a-f]{7,40}$!) {
- print STDERR "WARNING: Reducing ABI version '$pkg->{abiversion}' of package '$name' to '$1$2$3'\n";
- $abiv = "$1$2$3";
- }
- else {
- $abiv = $pkg->{abiversion};
- }
-
- foreach my $n (@{$pkg->{provides}}) {
- print "Package/$n/abiversion = $abiv\n";
- }
- }
my %depends;
foreach my $dep (@{$pkg->{depends} || []}) {
if ($dep =~ m!^\+?(?:[^:]+:)?([^@]+)$!) {