[OE-core] [PATCH] createrepo: Fix stat floating timestamps

Richard Purdie richard.purdie at linuxfoundation.org
Sat Mar 5 09:35:47 UTC 2016


When reading the mtime from disk, the system can get a floating point
value. Convert this to an int for comparision purposes, else some
packages always get reindexed as the value in the index is an int.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

diff --git a/meta/recipes-support/createrepo/createrepo/fixstat.patch b/meta/recipes-support/createrepo/createrepo/fixstat.patch
new file mode 100644
index 0000000..d34eb56
--- /dev/null
+++ b/meta/recipes-support/createrepo/createrepo/fixstat.patch
@@ -0,0 +1,19 @@
+When reading the mtime from disk, the system can get a floating point 
+value. Convert this to an int for comparision purposes, else some
+packages always get reindexed as the value in the index is an int.
+RP 2016/3/2
+Upstream-Status: Pending
+
+Index: createrepo-0.4.11/readMetadata.py
+===================================================================
+--- createrepo-0.4.11.orig/readMetadata.py
++++ createrepo-0.4.11/readMetadata.py
+@@ -126,7 +126,7 @@ class MetadataIndex(object):
+             if self.opts.get('verbose'):
+                 print _("Size (%i -> %i) changed for file %s") % (size,st.st_size,filepath)
+             return
+-        if st.st_mtime != mtime:
++        if int(st.st_mtime) != mtime:
+             if self.opts.get('verbose'):
+                 print _("Modification time changed for %s") % filepath
+             return
diff --git a/meta/recipes-support/createrepo/createrepo_0.4.11.bb b/meta/recipes-support/createrepo/createrepo_0.4.11.bb
index 5f9ecf6..2a3231b 100644
--- a/meta/recipes-support/createrepo/createrepo_0.4.11.bb
+++ b/meta/recipes-support/createrepo/createrepo_0.4.11.bb
@@ -19,6 +19,7 @@ SRC_URI = "http://createrepo.baseurl.org/download/${BP}.tar.gz \
            file://createrepo-dbpath.patch \
            file://dumpMetadata-disable-signature-validation.patch \
            file://rpm-createsolvedb.py \
+           file://fixstat.patch \
            "
 
 SRC_URI[md5sum] = "3e9ccf4abcffe3f49af078c83611eda2"





More information about the Openembedded-core mailing list