diff options
-rw-r--r-- | meta/conf/distro/include/poky-default-revisions.inc | 2 | ||||
-rw-r--r-- | meta/recipes-devtools/opkg/opkg-0.1.8/opkg_unarchive.patch | 17 | ||||
-rw-r--r-- | meta/recipes-devtools/opkg/opkg/logfix.patch | 23 | ||||
-rw-r--r-- | meta/recipes-devtools/opkg/opkg/longlinksfix.patch | 92 | ||||
-rw-r--r-- | meta/recipes-devtools/opkg/opkg_svn.bb | 8 |
5 files changed, 97 insertions, 45 deletions
diff --git a/meta/conf/distro/include/poky-default-revisions.inc b/meta/conf/distro/include/poky-default-revisions.inc index beffe9a89b..10103a27fe 100644 --- a/meta/conf/distro/include/poky-default-revisions.inc +++ b/meta/conf/distro/include/poky-default-revisions.inc | |||
@@ -133,7 +133,7 @@ SRCREV_pn-networkmanager ??= "2984" | |||
133 | SRCREV_pn-ofono ??= "14544d5996836f628613c2ce544380ee6fc8f514" | 133 | SRCREV_pn-ofono ??= "14544d5996836f628613c2ce544380ee6fc8f514" |
134 | SRCREV_pn-oh-puzzles ??= "23" | 134 | SRCREV_pn-oh-puzzles ??= "23" |
135 | SRCREV_pn-ohm ??= "edfe25d49d67884bf004de7ae0724c162bb5e65e" | 135 | SRCREV_pn-ohm ??= "edfe25d49d67884bf004de7ae0724c162bb5e65e" |
136 | OPKGSRCREV = "524" | 136 | OPKGSRCREV = "590" |
137 | SRCREV_pn-opkg ??= "${OPKGSRCREV}" | 137 | SRCREV_pn-opkg ??= "${OPKGSRCREV}" |
138 | SRCREV_pn-opkg-native ??= "${OPKGSRCREV}" | 138 | SRCREV_pn-opkg-native ??= "${OPKGSRCREV}" |
139 | SRCREV_pn-opkg-nativesdk ??= "${OPKGSRCREV}" | 139 | SRCREV_pn-opkg-nativesdk ??= "${OPKGSRCREV}" |
diff --git a/meta/recipes-devtools/opkg/opkg-0.1.8/opkg_unarchive.patch b/meta/recipes-devtools/opkg/opkg-0.1.8/opkg_unarchive.patch deleted file mode 100644 index 4b12448155..0000000000 --- a/meta/recipes-devtools/opkg/opkg-0.1.8/opkg_unarchive.patch +++ /dev/null | |||
@@ -1,17 +0,0 @@ | |||
1 | Rebase for the latest version | ||
2 | Dongxiao Xu <dongxiao.xu@intel.com> | ||
3 | |||
4 | diff -ruN opkg-0.1.8-orig/libbb/unarchive.c opkg-0.1.8/libbb/unarchive.c | ||
5 | --- opkg-0.1.8-orig/libbb/unarchive.c 2010-07-20 09:39:02.266424893 +0800 | ||
6 | +++ opkg-0.1.8/libbb/unarchive.c 2010-07-20 09:39:50.474435569 +0800 | ||
7 | @@ -523,6 +523,10 @@ | ||
8 | } | ||
9 | } | ||
10 | |||
11 | + if (strlen(tar_entry->name) > 100) { | ||
12 | + tar_entry->name[100] = 0; | ||
13 | + } | ||
14 | + | ||
15 | // tar_entry->name = xstrdup(tar.formated.name); | ||
16 | |||
17 | /* | ||
diff --git a/meta/recipes-devtools/opkg/opkg/logfix.patch b/meta/recipes-devtools/opkg/opkg/logfix.patch deleted file mode 100644 index da06f00bd0..0000000000 --- a/meta/recipes-devtools/opkg/opkg/logfix.patch +++ /dev/null | |||
@@ -1,23 +0,0 @@ | |||
1 | Patch to remove "duplicate" bits of logs from opkg output, which | ||
2 | massively simplifies do_rootfs logs. The reason is we get unflushed | ||
3 | data passed to the children and duplicated. | ||
4 | |||
5 | RP - 26/1/10 | ||
6 | |||
7 | Index: trunk/libbb/gz_open.c | ||
8 | =================================================================== | ||
9 | --- trunk.orig/libbb/gz_open.c 2010-01-26 23:12:10.000000000 +0000 | ||
10 | +++ trunk/libbb/gz_open.c 2010-01-26 23:12:17.000000000 +0000 | ||
11 | @@ -38,6 +38,12 @@ | ||
12 | perror_msg("pipe"); | ||
13 | return(NULL); | ||
14 | } | ||
15 | + | ||
16 | + /* If we don't flush, we end up with two copies of anything pending, | ||
17 | + one from the parent, one from the child */ | ||
18 | + fflush(stdout); | ||
19 | + fflush(stderr); | ||
20 | + | ||
21 | if ((*pid = fork()) == -1) { | ||
22 | perror_msg("fork"); | ||
23 | return(NULL); | ||
diff --git a/meta/recipes-devtools/opkg/opkg/longlinksfix.patch b/meta/recipes-devtools/opkg/opkg/longlinksfix.patch new file mode 100644 index 0000000000..6908392932 --- /dev/null +++ b/meta/recipes-devtools/opkg/opkg/longlinksfix.patch | |||
@@ -0,0 +1,92 @@ | |||
1 | If a tarball contains a long symlink (over 100 chars) in a longpath (over 100 | ||
2 | chars) then the resulting link or path can be truncated to 100 chars. | ||
3 | |||
4 | This is due to a bug where if both 'L' and 'K' entries are found in the tarball, | ||
5 | only the first one takes affect due to get_header_tar recursively calling itself. | ||
6 | To fix this, process longname and linkname at the end of the function rather | ||
7 | than the start after any subcalls have taken place. | ||
8 | |||
9 | Richard Purdie | ||
10 | 22/12/2010 | ||
11 | |||
12 | Index: trunk/libbb/unarchive.c | ||
13 | =================================================================== | ||
14 | --- trunk.orig/libbb/unarchive.c 2010-12-22 18:14:52.575074849 +0000 | ||
15 | +++ trunk/libbb/unarchive.c 2010-12-22 18:16:01.845103832 +0000 | ||
16 | @@ -506,23 +506,7 @@ | ||
17 | /* convert to type'ed variables */ | ||
18 | tar_entry = xcalloc(1, sizeof(file_header_t)); | ||
19 | |||
20 | -#ifdef CONFIG_FEATURE_TAR_GNU_EXTENSIONS | ||
21 | - if (longname) { | ||
22 | - tar_entry->name = longname; | ||
23 | - longname = NULL; | ||
24 | - } else | ||
25 | -#endif | ||
26 | - { | ||
27 | - tar_entry->name = xstrndup(tar.formated.name, 100); | ||
28 | |||
29 | - if (tar.formated.prefix[0]) { | ||
30 | - char *temp = tar_entry->name; | ||
31 | - char *prefixTemp = xstrndup(tar.formated.prefix, 155); | ||
32 | - tar_entry->name = concat_path_file(prefixTemp, temp); | ||
33 | - free(temp); | ||
34 | - free(prefixTemp); | ||
35 | - } | ||
36 | - } | ||
37 | |||
38 | // tar_entry->name = xstrdup(tar.formated.name); | ||
39 | |||
40 | @@ -535,16 +519,7 @@ | ||
41 | tar_entry->gid = strtol(tar.formated.gid, NULL, 8); | ||
42 | tar_entry->size = strtol(tar.formated.size, NULL, 8); | ||
43 | tar_entry->mtime = strtol(tar.formated.mtime, NULL, 8); | ||
44 | -#ifdef CONFIG_FEATURE_TAR_GNU_EXTENSIONS | ||
45 | - if (linkname) { | ||
46 | - tar_entry->link_name = linkname; | ||
47 | - linkname = NULL; | ||
48 | - } else | ||
49 | -#endif | ||
50 | - { | ||
51 | - tar_entry->link_name = *tar.formated.linkname != '\0' ? | ||
52 | - xstrndup(tar.formated.linkname, 100) : NULL; | ||
53 | - } | ||
54 | + | ||
55 | tar_entry->device = (strtol(tar.formated.devmajor, NULL, 8) << 8) + | ||
56 | strtol(tar.formated.devminor, NULL, 8); | ||
57 | |||
58 | @@ -611,6 +586,34 @@ | ||
59 | |||
60 | } | ||
61 | |||
62 | + | ||
63 | +#ifdef CONFIG_FEATURE_TAR_GNU_EXTENSIONS | ||
64 | + if (longname) { | ||
65 | + tar_entry->name = longname; | ||
66 | + longname = NULL; | ||
67 | + } else | ||
68 | +#endif | ||
69 | + { | ||
70 | + tar_entry->name = xstrndup(tar.formated.name, 100); | ||
71 | + | ||
72 | + if (tar.formated.prefix[0]) { | ||
73 | + char *temp = tar_entry->name; | ||
74 | + char *prefixTemp = xstrndup(tar.formated.prefix, 155); | ||
75 | + tar_entry->name = concat_path_file(prefixTemp, temp); | ||
76 | + free(temp); | ||
77 | + free(prefixTemp); | ||
78 | + } | ||
79 | + } | ||
80 | + | ||
81 | + if (linkname) { | ||
82 | + tar_entry->link_name = linkname; | ||
83 | + linkname = NULL; | ||
84 | + } else | ||
85 | + { | ||
86 | + tar_entry->link_name = *tar.formated.linkname != '\0' ? | ||
87 | + xstrndup(tar.formated.linkname, 100) : NULL; | ||
88 | + } | ||
89 | + | ||
90 | return(tar_entry); | ||
91 | } | ||
92 | |||
diff --git a/meta/recipes-devtools/opkg/opkg_svn.bb b/meta/recipes-devtools/opkg/opkg_svn.bb index 518c767354..7a9e90e76b 100644 --- a/meta/recipes-devtools/opkg/opkg_svn.bb +++ b/meta/recipes-devtools/opkg/opkg_svn.bb | |||
@@ -9,15 +9,15 @@ RDEPENDS_${PN}_virtclass-nativesdk = "" | |||
9 | PACKAGE_ARCH_update-alternatives-cworth = "all" | 9 | PACKAGE_ARCH_update-alternatives-cworth = "all" |
10 | 10 | ||
11 | SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \ | 11 | SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \ |
12 | file://opkg_unarchive.patch \ | ||
13 | file://add_vercmp.patch \ | 12 | file://add_vercmp.patch \ |
14 | file://headerfix.patch \ | 13 | file://headerfix.patch \ |
15 | file://logfix.patch" | 14 | file://longlinksfix.patch \ |
15 | " | ||
16 | 16 | ||
17 | S = "${WORKDIR}/trunk" | 17 | S = "${WORKDIR}/trunk" |
18 | 18 | ||
19 | PV = "0.0+svnr${SRCREV}" | 19 | PV = "0.1.8+svnr${SRCREV}" |
20 | PR = "r15" | 20 | PR = "r1" |
21 | 21 | ||
22 | PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth" | 22 | PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth" |
23 | 23 | ||