Files
poky/meta/recipes-devtools/mtd/mtd-utils/add-exclusion-to-mkfs-jffs2-git-2.patch
Mike Crowe 780033d5c4 mtd-utils: Upgrade to 2.0.0
Upstream has started using automake which means that the recipe must now
inherit from autotools and pkgconfig.

The source tree has been reorganised too which requires the paths in the
patches to be modified. None of the patches appear to have been applied
upstream.

(From OE-Core rev: dacf6ab5aaf8cc588280b92d64db2e28c6c07a22)

Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-09 13:39:12 +00:00

104 lines
3.4 KiB
Diff

Upstream-Status: Pending
--- /tmp/mkfs.jffs2.c 2009-01-11 15:28:41.000000000 +0100
+++ git/jffsX-utils/mkfs.jffs2.c 2009-01-11 15:59:29.000000000 +0100
@@ -100,6 +100,11 @@
struct rb_node hardlink_rb;
};
+struct ignorepath_entry {
+ struct ignorepath_entry* next; /* Points to the next ignorepath element */
+ char name[PATH_MAX]; /* Name of the entry */
+};
+static struct ignorepath_entry* ignorepath = 0;
struct rb_root hardlinks;
static int out_fd = -1;
static int in_fd = -1;
@@ -408,7 +413,7 @@
char *hpath, *tpath;
struct dirent *dp, **namelist;
struct filesystem_entry *entry;
-
+ struct ignorepath_entry* element = ignorepath;
if (lstat(hostpath, &sb)) {
perror_msg_and_die("%s", hostpath);
@@ -417,6 +422,15 @@
entry = add_host_filesystem_entry(targetpath, hostpath,
sb.st_uid, sb.st_gid, sb.st_mode, 0, parent);
+ while ( element ) {
+ if ( strcmp( element->name, targetpath ) == 0 ) {
+ printf( "Note: ignoring directories below '%s'\n", targetpath );
+ return entry;
+ break;
+ }
+ element = element->next;
+ }
+
n = scandir(hostpath, &namelist, 0, alphasort);
if (n < 0) {
perror_msg_and_die("opening directory %s", hostpath);
@@ -1453,6 +1467,7 @@
{"root", 1, NULL, 'r'},
{"pagesize", 1, NULL, 's'},
{"eraseblock", 1, NULL, 'e'},
+ {"ignore", 1, NULL, 'I'},
{"output", 1, NULL, 'o'},
{"help", 0, NULL, 'h'},
{"verbose", 0, NULL, 'v'},
@@ -1500,6 +1515,7 @@
" -L, --list-compressors Show the list of the avaiable compressors\n"
" -t, --test-compression Call decompress and compare with the original (for test)\n"
" -n, --no-cleanmarkers Don't add a cleanmarker to every eraseblock\n"
+" -I, --ignore=PATH Ignore sub directory and file tree below PATH when recursing over the file system\n"
" -o, --output=FILE Output to FILE (default: stdout)\n"
" -l, --little-endian Create a little-endian filesystem\n"
" -b, --big-endian Create a big-endian filesystem\n"
@@ -1666,6 +1682,7 @@
char *compr_name = NULL;
int compr_prior = -1;
int warn_page_size = 0;
+ struct ignorepath_entry* element = ignorepath;
page_size = sysconf(_SC_PAGESIZE);
if (page_size < 0) /* System doesn't know so ... */
@@ -1676,7 +1693,7 @@
jffs2_compressors_init();
while ((opt = getopt_long(argc, argv,
- "D:d:r:s:o:qUPfh?vVe:lbp::nc:m:x:X:Lty:i:", long_options, &c)) >= 0)
+ "D:d:r:s:I:o:qUPfh?vVe:lbp::nc:m:x:X:Lty:i:", long_options, &c)) >= 0)
{
switch (opt) {
case 'D':
@@ -1700,6 +1717,28 @@
warn_page_size = 0; /* set by user, so don't need to warn */
break;
+ case 'I':
+ printf( "Note: Adding '%s' to ignore Path\n", optarg );
+ element = ignorepath;
+ if ( !ignorepath ) {
+ ignorepath = xmalloc( sizeof( struct ignorepath_entry ) );
+ ignorepath->next = 0;
+ strcpy( &ignorepath->name[0], optarg );
+ } else {
+ while ( element->next ) element = element->next;
+ element->next = xmalloc( sizeof( struct ignorepath_entry ) );
+ element->next->next = 0;
+ strcpy( &element->next->name[0], optarg );
+ }
+ printf( "--------- Dumping ignore path list ----------------\n" );
+ element = ignorepath;
+ while ( element ) {
+ printf( " * '%s'\n", &element->name[0] );
+ element = element->next;
+ }
+ printf( "---------------------------------------------------\n" );
+ break;
+
case 'o':
if (out_fd != -1) {
error_msg_and_die("output filename specified more than once");