summaryrefslogtreecommitdiffstats
path: root/meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch')
-rw-r--r--meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch b/meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch
new file mode 100644
index 000000000..36728a788
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch
@@ -0,0 +1,46 @@
+Description: sort the filelist when it is complete to get reproducible behaviour
+Author: Reiner Herrmann <reiner@reiner-h.de>
+Bug-Debian: https://bugs.debian.org/795790
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+
+Index: rdfind-1.3.4/Fileinfo.hh
+===================================================================
+--- rdfind-1.3.4.orig/Fileinfo.hh
++++ rdfind-1.3.4/Fileinfo.hh
+@@ -189,6 +189,10 @@ public:
+ static bool compareondepth(const Fileinfo &a, const Fileinfo &b)
+ {return (a.depth() < b.depth());}
+
++ //returns true if a has lower filename than b)
++ static bool compareonfilename(const Fileinfo &a, const Fileinfo &b)
++ {return (a.name().compare(b.name()) < 0);}
++
+ //fills with bytes from the file. if lasttype is supplied,
+ //it is used to see if the file needs to be read again - useful if
+ //file is shorter than the length of the bytes field.
+@@ -235,6 +239,10 @@ public:
+ static bool equaldepth(const Fileinfo &a, const Fileinfo &b)
+ {return (a.depth()==b.depth());}
+
++ //returns true if filenames are equal
++ static bool equalfilename(const Fileinfo &a, const Fileinfo &b)
++ {return (a.name()==b.name());}
++
+ //returns true if file is a regular file. call readfileinfo first!
+ bool isRegularFile() {return m_info.is_file;}
+
+Index: rdfind-1.3.4/rdfind.cc
+===================================================================
+--- rdfind-1.3.4.orig/rdfind.cc
++++ rdfind-1.3.4/rdfind.cc
+@@ -349,6 +349,7 @@ int main(int narg, char *argv[])
+ cout<<dryruntext<<"Now have "<<filelist1.size()<<" files in total."<<endl;
+
+
++ gswd.sortlist(&Fileinfo::compareonfilename,&Fileinfo::equalfilename);
+
+ //mark files with a unique number
+ gswd.markitems();
OpenPOWER on IntegriCloud