diff options
-rw-r--r-- | meta/conf/distro/include/poky-fixed-revisions.inc | 6 | ||||
-rw-r--r-- | meta/packages/opkg/files/opkg_unarchive.patch | 13 | ||||
-rw-r--r-- | meta/packages/opkg/opkg.inc | 18 | ||||
-rw-r--r-- | meta/packages/opkg/opkg/add_vercmp.patch | 34 | ||||
-rw-r--r-- | meta/packages/opkg/opkg/opkg-intercept-cleanup.patch | 47 | ||||
-rw-r--r-- | meta/packages/opkg/opkg_svn.bb | 6 |
6 files changed, 106 insertions, 18 deletions
diff --git a/meta/conf/distro/include/poky-fixed-revisions.inc b/meta/conf/distro/include/poky-fixed-revisions.inc index e8fdfcdf16..a017e180ff 100644 --- a/meta/conf/distro/include/poky-fixed-revisions.inc +++ b/meta/conf/distro/include/poky-fixed-revisions.inc | |||
@@ -75,9 +75,9 @@ SRCREV_pn-matchbox-themes-extra ?= "1524" | |||
75 | SRCREV_pn-matchbox-wm-2 ?= "2083" | 75 | SRCREV_pn-matchbox-wm-2 ?= "2083" |
76 | SRCREV_pn-matchbox-wm ?= "1524" | 76 | SRCREV_pn-matchbox-wm ?= "1524" |
77 | SRCREV_pn-oh-puzzles ?= "23" | 77 | SRCREV_pn-oh-puzzles ?= "23" |
78 | SRCREV_pn-opkg-native ?= "4545" | 78 | SRCREV_pn-opkg-native ?= "215" |
79 | SRCREV_pn-opkg-nativesdk ?= "4545" | 79 | SRCREV_pn-opkg-nativesdk ?= "215" |
80 | SRCREV_pn-opkg ?= "4545" | 80 | SRCREV_pn-opkg ?= "215" |
81 | SRCREV_pn-opkg-utils-native ?= "4534" | 81 | SRCREV_pn-opkg-utils-native ?= "4534" |
82 | SRCREV_pn-opkg-utils ?= "4534" | 82 | SRCREV_pn-opkg-utils ?= "4534" |
83 | SRCREV_pn-oprofileui ?= "194" | 83 | SRCREV_pn-oprofileui ?= "194" |
diff --git a/meta/packages/opkg/files/opkg_unarchive.patch b/meta/packages/opkg/files/opkg_unarchive.patch new file mode 100644 index 0000000000..9e5ccfb714 --- /dev/null +++ b/meta/packages/opkg/files/opkg_unarchive.patch | |||
@@ -0,0 +1,13 @@ | |||
1 | --- trunk/libbb/unarchive.c.orig 2009-02-11 22:14:58.000000000 +0100 | ||
2 | +++ trunk/libbb/unarchive.c 2009-02-11 22:15:07.000000000 +0100 | ||
3 | @@ -606,6 +606,10 @@ | ||
4 | tar_entry->name = concat_path_file(tar.formated.prefix, tar.formated.name); | ||
5 | } | ||
6 | |||
7 | + if (strlen(tar_entry->name) > 100) { | ||
8 | + tar_entry->name[100] = 0; | ||
9 | + } | ||
10 | + | ||
11 | // tar_entry->name = xstrdup(tar.formated.name); | ||
12 | |||
13 | /* | ||
diff --git a/meta/packages/opkg/opkg.inc b/meta/packages/opkg/opkg.inc index 0b1db89c8a..d82f6d53f2 100644 --- a/meta/packages/opkg/opkg.inc +++ b/meta/packages/opkg/opkg.inc | |||
@@ -5,20 +5,14 @@ SECTION = "base" | |||
5 | LICENSE = "GPL" | 5 | LICENSE = "GPL" |
6 | DEPENDS = "curl gpgme" | 6 | DEPENDS = "curl gpgme" |
7 | PV = "0.0+svnr${SRCREV}" | 7 | PV = "0.0+svnr${SRCREV}" |
8 | PE = "1" | ||
8 | 9 | ||
9 | # opkg-fix-gcc-warnings.patch: the patch is already upstreamed and could be | 10 | SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \ |
10 | # taken out once okpg is updated to new repo | 11 | file://opkg_unarchive.patch;patch=1;maxrev=201 \ |
11 | # http://opkg.googlecode.com/svn/trunk | 12 | file://opkg-intercept-cleanup.patch;patch=1 \ |
12 | # with rev >= 150 | 13 | file://add_vercmp.patch;patch=1" |
13 | 14 | ||
14 | # sighandlerfix.patch: from r145 | 15 | S = "${WORKDIR}/trunk" |
15 | |||
16 | SRC_URI = "svn://svn.openmoko.org/trunk/src/target/;module=opkg;proto=http \ | ||
17 | file://fix_prototype.patch;patch=1 \ | ||
18 | file://sighandlerfix.patch;patch=1 \ | ||
19 | file://opkg-fix-gcc-warnings.patch;patch=1" | ||
20 | |||
21 | S = "${WORKDIR}/opkg" | ||
22 | 16 | ||
23 | # Werror gives all kinds bounds issuses with gcc 4.3.3 | 17 | # Werror gives all kinds bounds issuses with gcc 4.3.3 |
24 | do_configure_prepend() { | 18 | do_configure_prepend() { |
diff --git a/meta/packages/opkg/opkg/add_vercmp.patch b/meta/packages/opkg/opkg/add_vercmp.patch new file mode 100644 index 0000000000..5c0473ff70 --- /dev/null +++ b/meta/packages/opkg/opkg/add_vercmp.patch | |||
@@ -0,0 +1,34 @@ | |||
1 | Index: trunk/libopkg/opkg.c | ||
2 | =================================================================== | ||
3 | --- trunk.orig/libopkg/opkg.c 2009-10-05 14:33:47.000000000 +0100 | ||
4 | +++ trunk/libopkg/opkg.c 2009-10-05 20:59:19.000000000 +0100 | ||
5 | @@ -1092,3 +1092,18 @@ | ||
6 | free(src); | ||
7 | return ret; | ||
8 | } | ||
9 | + | ||
10 | +int | ||
11 | +opkg_compare_versions (const char *ver1, const char *ver2) | ||
12 | +{ | ||
13 | + pkg_t *pkg1, *pkg2; | ||
14 | + | ||
15 | + pkg1 = pkg_new(); | ||
16 | + pkg2 = pkg_new(); | ||
17 | + | ||
18 | + parseVersion(pkg1, ver1); | ||
19 | + parseVersion(pkg2, ver2); | ||
20 | + | ||
21 | + return pkg_compare_versions(pkg1, pkg2); | ||
22 | +} | ||
23 | + | ||
24 | Index: trunk/libopkg/opkg.h | ||
25 | =================================================================== | ||
26 | --- trunk.orig/libopkg/opkg.h 2009-10-05 21:06:22.000000000 +0100 | ||
27 | +++ trunk/libopkg/opkg.h 2009-10-05 21:06:35.000000000 +0100 | ||
28 | @@ -87,4 +87,6 @@ | ||
29 | |||
30 | int opkg_repository_accessibility_check(opkg_t *opkg); | ||
31 | |||
32 | +int opkg_compare_versions (const char *ver1, const char *ver2); | ||
33 | + | ||
34 | #endif /* OPKG_H */ | ||
diff --git a/meta/packages/opkg/opkg/opkg-intercept-cleanup.patch b/meta/packages/opkg/opkg/opkg-intercept-cleanup.patch new file mode 100644 index 0000000000..12893e3852 --- /dev/null +++ b/meta/packages/opkg/opkg/opkg-intercept-cleanup.patch | |||
@@ -0,0 +1,47 @@ | |||
1 | --- | ||
2 | libopkg/opkg_cmd.c | 13 +++++++++---- | ||
3 | 1 file changed, 9 insertions(+), 4 deletions(-) | ||
4 | |||
5 | --- trunk.orig/libopkg/opkg_cmd.c | ||
6 | +++ trunk/libopkg/opkg_cmd.c | ||
7 | @@ -19,6 +19,7 @@ | ||
8 | #include "includes.h" | ||
9 | #include <dirent.h> | ||
10 | #include <glob.h> | ||
11 | +#include <unistd.h> | ||
12 | |||
13 | #include "opkg_conf.h" | ||
14 | #include "opkg_cmd.h" | ||
15 | @@ -350,7 +351,6 @@ static opkg_intercept_t opkg_prep_interc | ||
16 | |||
17 | static int opkg_finalize_intercepts(opkg_intercept_t ctx) | ||
18 | { | ||
19 | - char *cmd; | ||
20 | DIR *dir; | ||
21 | int err = 0; | ||
22 | |||
23 | @@ -376,6 +376,10 @@ static int opkg_finalize_intercepts(opkg | ||
24 | err = errno; | ||
25 | perror (de->d_name); | ||
26 | } | ||
27 | + if (unlink (path)) { | ||
28 | + err = errno; | ||
29 | + perror (path); | ||
30 | + } | ||
31 | } | ||
32 | free (path); | ||
33 | } | ||
34 | @@ -383,9 +387,10 @@ static int opkg_finalize_intercepts(opkg | ||
35 | } else | ||
36 | perror (ctx->statedir); | ||
37 | |||
38 | - sprintf_alloc (&cmd, "rm -rf %s", ctx->statedir); | ||
39 | - err = system (cmd); | ||
40 | - free (cmd); | ||
41 | + if (rmdir (ctx->statedir)) { | ||
42 | + err = errno; | ||
43 | + perror (ctx->statedir); | ||
44 | + } | ||
45 | |||
46 | free (ctx->statedir); | ||
47 | free (ctx); | ||
diff --git a/meta/packages/opkg/opkg_svn.bb b/meta/packages/opkg/opkg_svn.bb index 68e04c60d6..0d68939346 100644 --- a/meta/packages/opkg/opkg_svn.bb +++ b/meta/packages/opkg/opkg_svn.bb | |||
@@ -6,7 +6,7 @@ RCONFLICTS_update-alternatives-cworth = "update-alternatives-dpkg" | |||
6 | RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives}" | 6 | RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives}" |
7 | PACKAGE_ARCH_update-alternatives-cworth = "all" | 7 | PACKAGE_ARCH_update-alternatives-cworth = "all" |
8 | 8 | ||
9 | PR = "r10" | 9 | PR = "r3" |
10 | 10 | ||
11 | PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth" | 11 | PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth" |
12 | 12 | ||
@@ -28,7 +28,7 @@ EXTRACFLAGS_overo = "-Wno-array-bounds" | |||
28 | 28 | ||
29 | TARGET_CFLAGS += "${EXTRACFLAGS}" | 29 | TARGET_CFLAGS += "${EXTRACFLAGS}" |
30 | 30 | ||
31 | pkg_postinst_opkg () { | 31 | pkg_postinst_${PN} () { |
32 | #!/bin/sh | 32 | #!/bin/sh |
33 | if [ "x$D" != "x" ]; then | 33 | if [ "x$D" != "x" ]; then |
34 | install -d ${IMAGE_ROOTFS}/${sysconfdir}/rcS.d | 34 | install -d ${IMAGE_ROOTFS}/${sysconfdir}/rcS.d |
@@ -43,7 +43,7 @@ fi | |||
43 | update-alternatives --install ${bindir}/opkg opkg ${bindir}/opkg-cl 100 | 43 | update-alternatives --install ${bindir}/opkg opkg ${bindir}/opkg-cl 100 |
44 | } | 44 | } |
45 | 45 | ||
46 | pkg_postrm_opkg () { | 46 | pkg_postrm_${PN} () { |
47 | #!/bin/sh | 47 | #!/bin/sh |
48 | update-alternatives --remove opkg ${bindir}/opkg-cl | 48 | update-alternatives --remove opkg ${bindir}/opkg-cl |
49 | } | 49 | } |