http://bugs.openembedded.org/show_bug.cgi?id=857

           Summary: Fix bugs in offline root handling in ipkg 0.99.154,
                    0.99.159 and 0.99.160
           Product: Openembedded
           Version: unspecified
          Platform: ARM
               URL: http://www.themastermind1.net/oe/patches/ipkg_offlinedir
                    _handling.patch
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Build
        AssignedTo: [email protected]
        ReportedBy: [EMAIL PROTECTED]
         QAContact: [EMAIL PROTECTED]


* moved common ipkglibdir.patch into files/
* patched .154: create /usr/lib/ipkg inside of offlineroot when one is specified
* patched .159: don't prepend offlineroot twice to libdir path when creating and
reading lists
* patched .160: OFFLINEROOT/usr/lib/ipkg is created, but ipkg tries to read
lists from OFFLINEROOTOFFLINEROOT/usr/lib/ipkg
# 
# old_revision [99615a35531435c50c4a545f29bc9c1c0f267ac4]
# 
# add_file "packages/ipkg/files/ipkglibdir.patch"
# 
# add_file "packages/ipkg/ipkg-0.99.154/mkdir.patch"
# 
# add_file "packages/ipkg/ipkg-0.99.159/listsdir.patch"
# 
# add_file "packages/ipkg/ipkg-0.99.160/listsdir.patch"
# 
# add_file "packages/ipkg/ipkg-native_0.99.160.bb"
# 
# add_file "packages/ipkg/ipkg_0.99.160.bb"
# 
# patch "packages/ipkg/files/ipkglibdir.patch"
#  from []
#    to [e32c3517169fd85be0a58a3c109708600910f55f]
# 
# patch "packages/ipkg/ipkg-0.99.154/mkdir.patch"
#  from []
#    to [65326afa33f2921468a578bd835de1b52fd3c9f0]
# 
# patch "packages/ipkg/ipkg-0.99.159/listsdir.patch"
#  from []
#    to [6b389ca603a17a469b834cb8232f75966ac311e8]
# 
# patch "packages/ipkg/ipkg-0.99.160/listsdir.patch"
#  from []
#    to [42b788a79757b93d61b6dfa3049d9deae4a66f2c]
# 
# patch "packages/ipkg/ipkg-native_0.99.160.bb"
#  from []
#    to [6ccdfed046575097f1d643562fe4dafc92ddb550]
# 
# patch "packages/ipkg/ipkg_0.99.154.bb"
#  from [3c4ed00ad9bf2c0040a3db98cf52f7ce0a68577f]
#    to [157e5d00f526d4a4c141d9675c5f0c6649cdaa38]
# 
# patch "packages/ipkg/ipkg_0.99.159.bb"
#  from [011bb392cd0f45cb797f3384cdca8c440aac7280]
#    to [f26be9fb3e55c61c3595e78f919cbd7758c93b1d]
# 
# patch "packages/ipkg/ipkg_0.99.160.bb"
#  from []
#    to [5243c65cf480ee7bb5cafad6af513e6a8fbf281f]
# 
============================================================
--- packages/ipkg/files/ipkglibdir.patch        
+++ packages/ipkg/files/ipkglibdir.patch        
e32c3517169fd85be0a58a3c109708600910f55f
@@ -0,0 +1,11 @@
+--- C/ipkg.h.in.old    2005-04-02 17:11:02.762413624 +0100
++++ C/ipkg.h.in        2005-04-02 17:11:06.314873568 +0100
+@@ -36,7 +36,7 @@
+ #define IPKG_LEGAL_PKG_NAME_CHARS "abcdefghijklmnopqrstuvwxyz0123456789.+-"
+ #define IPKG_PKG_VERSION_SEP_CHAR '_'
+ 
+-#define IPKG_STATE_DIR_PREFIX IPKGLIBDIR"/ipkg"
++#define IPKG_STATE_DIR_PREFIX "/usr/lib/ipkg"
+ #define IPKG_LISTS_DIR_SUFFIX "lists"
+ #define IPKG_INFO_DIR_SUFFIX "info"
+ #define IPKG_STATUS_FILE_SUFFIX "status"
============================================================
--- packages/ipkg/ipkg-0.99.154/mkdir.patch     
+++ packages/ipkg/ipkg-0.99.154/mkdir.patch     
65326afa33f2921468a578bd835de1b52fd3c9f0
@@ -0,0 +1,25 @@
+--- C/ipkg_conf.c.orig 2006-03-24 07:22:52.000000000 -0500
++++ C/ipkg_conf.c      2006-03-24 17:42:49.000000000 -0500
+@@ -423,17 +423,21 @@ static int set_and_load_pkg_dest_list(ip
+      nv_pair_t *nv_pair;
+      pkg_dest_t *dest;
+      char *root_dir;
++     char *l_dir;
+ 
+      for (iter = nv_pair_list->head; iter; iter = iter->next) {
+         nv_pair = iter->data;
+ 
+         if (conf->offline_root) {
+              sprintf_alloc(&root_dir, "%s%s", conf->offline_root, 
nv_pair->value);
++             sprintf_alloc(&l_dir, "%s%s", conf->offline_root, lists_dir);
+         } else {
++             l_dir = lists_dir;
+              root_dir = strdup(nv_pair->value);
+         }
+-        dest = pkg_dest_list_append(&conf->pkg_dest_list, nv_pair->name, 
root_dir,
lists_dir);
++        dest = pkg_dest_list_append(&conf->pkg_dest_list, nv_pair->name, 
root_dir,
l_dir);
+         free(root_dir);
++        free(l_dir);
+         if (dest == NULL) {
+              continue;
+         }
============================================================
--- packages/ipkg/ipkg-0.99.159/listsdir.patch  
+++ packages/ipkg/ipkg-0.99.159/listsdir.patch
6b389ca603a17a469b834cb8232f75966ac311e8
@@ -0,0 +1,40 @@
+--- C/ipkg_cmd.c.orig  2006-03-30 03:14:33.000000000 -0500
++++ C/ipkg_cmd.c       2006-03-30 03:16:44.000000000 -0500
+@@ -190,13 +190,7 @@ static int ipkg_update_cmd(ipkg_conf_t *
+      pkg_src_t *src;
+ 
+  
+-     if (conf->offline_root) {
+-        sprintf_alloc(&lists_dir, "%s/%s", 
+-                      conf->offline_root, 
+-                      conf->restrict_to_default_dest ? 
conf->default_dest->lists_dir :
conf->lists_dir);
+-     } else {
+-        sprintf_alloc(&lists_dir, "%s", conf->restrict_to_default_dest ?
conf->default_dest->lists_dir : conf->lists_dir);
+-     }
++        sprintf_alloc(&lists_dir, "%s", conf->restrict_to_default_dest ?
conf->default_dest->lists_dir : conf->lists_dir);
+  
+     if (! file_is_dir(lists_dir)) {
+         if (file_exists(lists_dir)) {
+--- C/ipkg_conf.c.orig 2006-04-15 04:48:12.000000000 -0400
++++ C/ipkg_conf.c      2006-04-15 04:48:25.000000000 -0400
+@@ -406,16 +406,10 @@ static int set_and_load_pkg_src_list(ipk
+         if (src == NULL) {
+              continue;
+         }
+-        if (conf->offline_root) {
+-             sprintf_alloc(&list_file, "%s/%s/%s", 
+-                           conf->offline_root,
+-                           conf->restrict_to_default_dest ? 
conf->default_dest->lists_dir :
conf->lists_dir, 
+-                           src->name);
+-        } else {
+-             sprintf_alloc(&list_file, "%s/%s", 
+-                           conf->restrict_to_default_dest ? 
conf->default_dest->lists_dir :
conf->lists_dir, 
+-                           src->name);
+-        }
++
++        sprintf_alloc(&list_file, "%s/%s", 
++                        conf->restrict_to_default_dest ? 
conf->default_dest->lists_dir :
conf->lists_dir, 
++                        src->name);
+ 
+         if (file_exists(list_file)) {
+              pkg_hash_add_from_file(conf, list_file, src, NULL, 0);
============================================================
--- packages/ipkg/ipkg-0.99.160/listsdir.patch  
+++ packages/ipkg/ipkg-0.99.160/listsdir.patch
42b788a79757b93d61b6dfa3049d9deae4a66f2c
@@ -0,0 +1,23 @@
+--- C/ipkg_conf.c.orig 2006-04-15 04:48:12.000000000 -0400
++++ C/ipkg_conf.c      2006-04-15 04:48:25.000000000 -0400
+@@ -406,16 +406,10 @@ static int set_and_load_pkg_src_list(ipk
+         if (src == NULL) {
+              continue;
+         }
+-        if (conf->offline_root) {
+-             sprintf_alloc(&list_file, "%s/%s/%s", 
+-                           conf->offline_root,
+-                           conf->restrict_to_default_dest ? 
conf->default_dest->lists_dir :
conf->lists_dir, 
+-                           src->name);
+-        } else {
+-             sprintf_alloc(&list_file, "%s/%s", 
+-                           conf->restrict_to_default_dest ? 
conf->default_dest->lists_dir :
conf->lists_dir, 
+-                           src->name);
+-        }
++
++        sprintf_alloc(&list_file, "%s/%s", 
++                        conf->restrict_to_default_dest ? 
conf->default_dest->lists_dir :
conf->lists_dir, 
++                        src->name);
+ 
+         if (file_exists(list_file)) {
+              pkg_hash_add_from_file(conf, list_file, src, NULL, 0);
============================================================
--- packages/ipkg/ipkg-native_0.99.160.bb       
+++ packages/ipkg/ipkg-native_0.99.160.bb       
6ccdfed046575097f1d643562fe4dafc92ddb550
@@ -0,0 +1,2 @@
+include ipkg_${PV}.bb
+include ipkg-native.inc
============================================================
--- packages/ipkg/ipkg_0.99.154.bb      3c4ed00ad9bf2c0040a3db98cf52f7ce0a68577f
+++ packages/ipkg/ipkg_0.99.154.bb      157e5d00f526d4a4c141d9675c5f0c6649cdaa38
@@ -1,2 +1,4 @@
 include ipkg.inc
+SRC_URI += " \
+                       file://mkdir.patch;patch=1"
+PR = "r3"
-PR = "r2"
============================================================
--- packages/ipkg/ipkg_0.99.159.bb      011bb392cd0f45cb797f3384cdca8c440aac7280
+++ packages/ipkg/ipkg_0.99.159.bb      f26be9fb3e55c61c3595e78f919cbd7758c93b1d
@@ -1 +1,5 @@
 include ipkg.inc
+SRC_URI += " \
+                       file://ipkglibdir.patch;patch=1 \
+                       file://listsdir.patch;patch=1"
+PR = "r1"
============================================================
--- packages/ipkg/ipkg_0.99.160.bb      
+++ packages/ipkg/ipkg_0.99.160.bb      5243c65cf480ee7bb5cafad6af513e6a8fbf281f
@@ -0,0 +1,5 @@
+include ipkg.inc
+SRC_URI += " \
+                       file://ipkglibdir.patch;patch=1 \
+                       file://listsdir.patch;patch=1"
+PR = "r0"

-- 
Configure bugmail: http://bugs.openembedded.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
_______________________________________________
Oe mailing list
[email protected]
https://www.handhelds.org/mailman/listinfo/oe

Reply via email to