mirror of
https://github.com/openwrt/openwrt.git
synced 2024-11-23 18:05:20 +08:00
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>
This commit is contained in:
parent
f421fefa8a
commit
c921650382
@ -43,5 +43,5 @@ endef
|
|||||||
|
|
||||||
# 1: package name
|
# 1: package name
|
||||||
define GetABISuffix
|
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
|
endef
|
||||||
|
@ -21,8 +21,7 @@ $(if $(MENU),Menu: $(MENU)
|
|||||||
)$(if $(DEFAULT),Default: $(DEFAULT)
|
)$(if $(DEFAULT),Default: $(DEFAULT)
|
||||||
)$(if $(findstring $(PREREQ_CHECK),1),Prereq-Check: 1
|
)$(if $(findstring $(PREREQ_CHECK),1),Prereq-Check: 1
|
||||||
)Version: $(VERSION)
|
)Version: $(VERSION)
|
||||||
$(if $(ABI_VERSION),ABIVersion: $(ABI_VERSION)
|
Depends: $(call PKG_FIXUP_DEPENDS,$(1),$(DEPENDS))
|
||||||
)Depends: $(call PKG_FIXUP_DEPENDS,$(1),$(DEPENDS))
|
|
||||||
Conflicts: $(CONFLICTS)
|
Conflicts: $(CONFLICTS)
|
||||||
Menu-Depends: $(MDEPENDS)
|
Menu-Depends: $(MDEPENDS)
|
||||||
Provides: $(PROVIDES)
|
Provides: $(PROVIDES)
|
||||||
|
@ -99,7 +99,7 @@ _endef=endef
|
|||||||
|
|
||||||
ifeq ($(DUMP),)
|
ifeq ($(DUMP),)
|
||||||
define BuildTarget/ipkg
|
define BuildTarget/ipkg
|
||||||
ABIV_$(1):=$(call GetABISuffix,$(1))
|
ABIV_$(1):=$(if $(filter-out kmod-%,$(1)),$(ABI_VERSION))
|
||||||
PDIR_$(1):=$(call FeedPackageDir,$(1))
|
PDIR_$(1):=$(call FeedPackageDir,$(1))
|
||||||
IPKG_$(1):=$$(PDIR_$(1))/$(1)$$(ABIV_$(1))_$(VERSION)_$(PKGARCH).ipk
|
IPKG_$(1):=$$(PDIR_$(1))/$(1)$$(ABIV_$(1))_$(VERSION)_$(PKGARCH).ipk
|
||||||
IDIR_$(1):=$(PKG_BUILD_DIR)/ipkg-$(PKGARCH)/$(1)
|
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
|
$(STAGING_DIR_ROOT)/stamp/.$(1)_installed: $(PKG_BUILD_DIR)/.pkgdir/$(1).installed
|
||||||
mkdir -p $(STAGING_DIR_ROOT)/stamp
|
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)
|
$(call locked,$(CP) $(PKG_BUILD_DIR)/.pkgdir/$(1)/. $(STAGING_DIR_ROOT)/,root-copy)
|
||||||
touch $$@
|
touch $$@
|
||||||
|
|
||||||
|
@ -249,7 +249,6 @@ sub parse_package_metadata($) {
|
|||||||
/^Build-Types:\s*(.+)\s*$/ and $src->{buildtypes} = [ split /\s+/, $1 ];
|
/^Build-Types:\s*(.+)\s*$/ and $src->{buildtypes} = [ split /\s+/, $1 ];
|
||||||
next unless $pkg;
|
next unless $pkg;
|
||||||
/^Version: \s*(.+)\s*$/ and $pkg->{version} = $1;
|
/^Version: \s*(.+)\s*$/ and $pkg->{version} = $1;
|
||||||
/^ABIVersion: \s*(.+)\s*$/ and $pkg->{abiversion} = $1;
|
|
||||||
/^Title: \s*(.+)\s*$/ and $pkg->{title} = $1;
|
/^Title: \s*(.+)\s*$/ and $pkg->{title} = $1;
|
||||||
/^Menu: \s*(.+)\s*$/ and $pkg->{menu} = $1;
|
/^Menu: \s*(.+)\s*$/ and $pkg->{menu} = $1;
|
||||||
/^Submenu: \s*(.+)\s*$/ and $pkg->{submenu} = $1;
|
/^Submenu: \s*(.+)\s*$/ and $pkg->{submenu} = $1;
|
||||||
|
@ -532,21 +532,6 @@ sub gen_package_auxiliary() {
|
|||||||
if ($pkg->{name} && $pkg->{repository}) {
|
if ($pkg->{name} && $pkg->{repository}) {
|
||||||
print "Package/$name/subdir = $pkg->{repository}\n";
|
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;
|
my %depends;
|
||||||
foreach my $dep (@{$pkg->{depends} || []}) {
|
foreach my $dep (@{$pkg->{depends} || []}) {
|
||||||
if ($dep =~ m!^\+?(?:[^:]+:)?([^@]+)$!) {
|
if ($dep =~ m!^\+?(?:[^:]+:)?([^@]+)$!) {
|
||||||
|
Loading…
Reference in New Issue
Block a user