Issue after changing from xz to zstd

e9hack e9hack at gmail.com
Sat Apr 6 13:35:22 PDT 2024


Am 06.04.2024 um 21:50 schrieb Robert Marko:
> On Sat, 6 Apr 2024 at 21:47, Hartmut Birr <osexpert at gmail.com> wrote:
>>
>> Hi,
>>
>> I did change the Makefile for dnsmasq in the way that I give:
>>
>> PKG_SOURCE_URL:=git://thekelleys.org.uk/dnsmasq.git
>> PKG_SOURCE_PROTO:=git
>> PKG_SOURCE_DATE:=2024-03-27
>> PKG_SOURCE_VERSION:=550c368adea12b312f83686c61f9015c122046c2    # Treat cache insertion failure of DNSKEY and DS records as another resource problem and fail validation with suitable logging.
>> PKG_MIRROR_HASH:=284a34bdb967ec8a9dff132df065ca64e9a1819d79bb8cecee1af001e22d626c
>>
>> Before changing to zstd, the generated source tar ball contains a file 'VERSION' with content '$Format:%d$'. This does match the dnsmasq git repository. After changing to zstd, VERSION contains ' (HEAD, origin/master, origin/HEAD, master)'.
>>
>> Any idea why VERSION is manipulated?
>>
>> I generate automatically a patch which modifies VERSION to see the commit hash via logread. Applying the patch doesn't work any more.
>>
>> dnsmasq/patches/999-dnsmasq-version.patch:
>> diff --git a/VERSION b/VERSION
>> index 998eb1f..9977908 100644
>> --- a/VERSION
>> +++ b/VERSION
>> @@ -1 +1 @@
>> -$Format:%d$
>> + (master, v2.90deb2-8-g550c368, head)
>>
> 
> Hi Hartmut,
> We are now using git-archive to make a tarball of git repositories in
> order to make them reproducible which fixes a long standing issue.
> git-archive respects .gitattributes so that along with:
> https://github.com/imp/dnsmasq/commit/2aaea18f432374fd062370f2d899e47849558b2f
> 
> Is most likely the cause.

I did add another static patch to solve the issue for me temporary:

--- a/VERSION	2024-03-27 17:00:06.000000000 +0100
+++ b/VERSION	2024-03-27 17:00:06.000000000 +0100
@@ -1 +1 @@
- (HEAD, origin/master, origin/HEAD, master)
+$Format:%d$

I generate 999-dnsmasq-version.patch via the following extension in the Makefile:

define Build/Prepare
	mkdir -p $(TOPDIR)/tmp/dl && \
		cd $(TOPDIR)/tmp/dl && \
		rm -rf $(PKG_SOURCE_SUBDIR) && \
		git clone -4 $(PKG_SOURCE_URL) $(PKG_SOURCE_SUBDIR) --recursive && \
		cd $(PKG_SOURCE_SUBDIR) && \
		git checkout $(PKG_SOURCE_VERSION) && \
		version=`git describe` && \
		echo " (master, $$$$version, head)" > VERSION && \
		git diff VERSION > 999-dnsmasq-version.patch
	$(CP) $(TOPDIR)/tmp/dl/$(PKG_SOURCE_SUBDIR)/999-dnsmasq-version.patch ./patches
	touch -c -r ./Makefile ./patches/999-dnsmasq-version.patch
	cd $(TOPDIR)/tmp/dl && \
		rm -rf $(PKG_SOURCE_SUBDIR)
	$(call Build/Prepare/Default)
endef

Regards,
Hartmut

> 
> Regards,
> Robert
> 
>> Regards,
>> Hartmut
>>
>> _______________________________________________
>> openwrt-devel mailing list
>> openwrt-devel at lists.openwrt.org
>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel




More information about the openwrt-devel mailing list