[oe] [meta-oe][PATCH] rdfind: add initial recipe, rdfind 1.3.4

Andre McCurdy armccurdy at gmail.com
Fri Sep 2 02:03:18 UTC 2016


  https://rdfind.pauldreik.se/

Signed-off-by: Andre McCurdy <armccurdy at gmail.com>
---
 .../rdfind/files/reproducible_build.patch          | 46 ++++++++++++++++++++++
 meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb     | 17 ++++++++
 2 files changed, 63 insertions(+)
 create mode 100644 meta-oe/recipes-support/rdfind/files/reproducible_build.patch
 create mode 100644 meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb

diff --git a/meta-oe/recipes-support/rdfind/files/reproducible_build.patch b/meta-oe/recipes-support/rdfind/files/reproducible_build.patch
new file mode 100644
index 0000000..36728a7
--- /dev/null
+++ b/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 at reiner-h.de>
+Bug-Debian: https://bugs.debian.org/795790
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy at 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();
diff --git a/meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb b/meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb
new file mode 100644
index 0000000..4d984ee
--- /dev/null
+++ b/meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Rdfind is a program that finds duplicate files"
+HOMEPAGE = "https://rdfind.pauldreik.se/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
+
+DEPENDS = "nettle"
+
+SRC_URI = "https://rdfind.pauldreik.se/${BP}.tar.gz \
+           file://reproducible_build.patch \
+"
+
+SRC_URI[md5sum] = "97c0cb35933588413583c61d3b5f9adf"
+SRC_URI[sha256sum] = "a5f0b3f72093d927b93898c993479b35682cccb47f7393fb72bd4803212fcc7d"
+
+inherit autotools
+
+BBCLASSEXTEND = "native"
-- 
1.9.1




More information about the Openembedded-devel mailing list