summaryrefslogtreecommitdiff
path: root/packages/ipkg
diff options
context:
space:
mode:
authorOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2007-10-07 00:33:28 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2007-10-07 00:33:28 +0000
commit6e90aae26efa66553063b74b9afa9563b70fb982 (patch)
treedc0273068963d8e57f48f75875e5236153cf1cd9 /packages/ipkg
parent496d5415774f03b6e09aee17763ac9432d9c2755 (diff)
parent62007cb1fac3e5a7f4a09b61c7d3c3b7cd5fc8a7 (diff)
merge of '55c714e37be4606a4166b3df883d5f404d3889bf'
and 'd714000fc8a6b75093a93f01782724b65d31eac1'
Diffstat (limited to 'packages/ipkg')
-rw-r--r--packages/ipkg/files/lonk-link-name.patch38
-rw-r--r--packages/ipkg/ipkg_0.99.163.bb3
2 files changed, 40 insertions, 1 deletions
diff --git a/packages/ipkg/files/lonk-link-name.patch b/packages/ipkg/files/lonk-link-name.patch
new file mode 100644
index 0000000000..14fc73a5ac
--- /dev/null
+++ b/packages/ipkg/files/lonk-link-name.patch
@@ -0,0 +1,38 @@
+--- ipkg-0.99.163/libbb/unarchive.c.orig 2007-10-04 12:39:42.000000000 +0200
++++ ipkg-0.99.163/libbb/unarchive.c 2007-10-04 12:41:28.000000000 +0200
+@@ -595,10 +595,6 @@
+ if (longname) {
+ tar_entry->name = longname;
+ longname = NULL;
+- }
+- else if (linkname) {
+- tar_entry->name = linkname;
+- linkname = NULL;
+ } else
+ #endif
+ if (tar.formated.prefix[0] == 0) {
+@@ -606,6 +602,15 @@
+ } else {
+ tar_entry->name = concat_path_file(tar.formated.prefix, tar.formated.name);
+ }
++
++#ifdef CONFIG_FEATURE_TAR_GNU_EXTENSIONS
++ if (linkname) {
++ tar_entry->link_name = linkname;
++ linkname = NULL;
++ } else
++#endif
++ tar_entry->link_name = strlen(tar.formated.linkname) ?
++ xstrdup(tar.formated.linkname) : NULL;
+
+ // tar_entry->name = xstrdup(tar.formated.name);
+
+@@ -618,8 +623,6 @@
+ tar_entry->gid = strtol(tar.formated.gid, NULL, 8);
+ tar_entry->size = strtol(tar.formated.size, NULL, 8);
+ tar_entry->mtime = strtol(tar.formated.mtime, NULL, 8);
+- tar_entry->link_name = strlen(tar.formated.linkname) ?
+- xstrdup(tar.formated.linkname) : NULL;
+ tar_entry->device = (strtol(tar.formated.devmajor, NULL, 8) << 8) +
+ strtol(tar.formated.devminor, NULL, 8);
+
diff --git a/packages/ipkg/ipkg_0.99.163.bb b/packages/ipkg/ipkg_0.99.163.bb
index c5972a7c53..56e25900c1 100644
--- a/packages/ipkg/ipkg_0.99.163.bb
+++ b/packages/ipkg/ipkg_0.99.163.bb
@@ -1,5 +1,5 @@
include ipkg.inc
-PR = "r4"
+PR = "r5"
S = "${WORKDIR}/ipkg-${PV}"
@@ -8,6 +8,7 @@ SRC_URI = "http://www.handhelds.org/pub/packages/ipkg/ipkg-${PV}.tar.gz \
file://is-processing.patch;patch=1 \
file://1-pkg-parse--Optimize-inefficient-parsing.patch;patch=1 \
file://2-pkg-vec--Optimize-gross-inefficiency.patch;patch=1 \
+ file://lonk-link-name.patch;patch=1 \
"
do_stage() {