aboutsummaryrefslogtreecommitdiffstats
path: root/meta/packages/ipkg-utils
diff options
context:
space:
mode:
Diffstat (limited to 'meta/packages/ipkg-utils')
-rw-r--r--meta/packages/ipkg-utils/ipkg-link/link-vfat-libs.patch34
-rw-r--r--meta/packages/ipkg-utils/ipkg-link_1.6+cvs20050404.bb20
-rw-r--r--meta/packages/ipkg-utils/ipkg-utils-native/ipkg-utils-fix.patch17
-rw-r--r--meta/packages/ipkg-utils/ipkg-utils-native_1.6+cvs20050404.bb16
-rw-r--r--meta/packages/ipkg-utils/ipkg-utils_1.6+cvs20050404.bb33
5 files changed, 120 insertions, 0 deletions
diff --git a/meta/packages/ipkg-utils/ipkg-link/link-vfat-libs.patch b/meta/packages/ipkg-utils/ipkg-link/link-vfat-libs.patch
new file mode 100644
index 0000000000..7f495f9f4c
--- /dev/null
+++ b/meta/packages/ipkg-utils/ipkg-link/link-vfat-libs.patch
@@ -0,0 +1,34 @@
+--- ipkg-utils/ipkg-link.orig 2006-04-05 00:08:28.518992136 +0200
++++ ipkg-utils/ipkg-link 2006-04-05 00:08:40.399186072 +0200
+@@ -58,6 +58,31 @@
+ `ln -s "$PREFIX$line" "$line"`
+ fi
+ fi
++
++ # The next function checks whether the _source_ file (ie: /media/card/something)
++ # does actually exist. If it doesn't, it could by a library symlink (ie: libsomething.0.1 -> libsomething.0)
++ # Since VFAT & friends do not support symlinks, these library links would not exist after installation
++ # and trying to symlink them into the rootfs with ipkg-link results in unconnected symlinks in the rootfs.
++ # So we use the real lib file in /media/card/whatever and create all needed symlinks in the rootfs
++ # using the real file as source.
++
++ if [ ! -e "$PREFIX$line" ]; then
++ if ( echo "$line" | grep -q "lib" ) ; then
++ libsearchfile=$(echo $line | sed -e "s#[a-z0-9/.]*/##g")
++ libfoundfiles=$(find $PREFIX -name "$libsearchfile*")
++
++ for liblinkfile in $libfoundfiles; do
++ echo "Linking $line to $liblinkfile"
++ # link will be pointing to nowhere
++ if test -L $line; then
++ rm -f $line
++ fi
++ ln -s $liblinkfile $line
++ done
++ else
++ echo "WARNING: Source file [$PREFIX$line] is missing!"
++ fi
++ fi
+ done
+ }
+
diff --git a/meta/packages/ipkg-utils/ipkg-link_1.6+cvs20050404.bb b/meta/packages/ipkg-utils/ipkg-link_1.6+cvs20050404.bb
new file mode 100644
index 0000000000..35e5ba1086
--- /dev/null
+++ b/meta/packages/ipkg-utils/ipkg-link_1.6+cvs20050404.bb
@@ -0,0 +1,20 @@
+SECTION = "base"
+DESCRIPTION = "Itsy Package Manager utilities link script"
+LICENSE = "GPL"
+CONFLICTS = "ipkg-utils"
+SRCDATE = "20050404"
+PR = "r4"
+
+SRC_URI = "${HANDHELDS_CVS};module=ipkg-utils \
+ file://link-vfat-libs.patch;patch=1"
+
+S = "${WORKDIR}/ipkg-utils"
+
+do_compile() {
+ :
+}
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 0755 ipkg-link ${D}${bindir}
+}
diff --git a/meta/packages/ipkg-utils/ipkg-utils-native/ipkg-utils-fix.patch b/meta/packages/ipkg-utils/ipkg-utils-native/ipkg-utils-fix.patch
new file mode 100644
index 0000000000..a9e6fc4d05
--- /dev/null
+++ b/meta/packages/ipkg-utils/ipkg-utils-native/ipkg-utils-fix.patch
@@ -0,0 +1,17 @@
+--- ../../../work/i686-linux/ipkg-utils-native-1.6+cvs20050404-r6/ipkg-utils/ipkg.py 2005-01-08 19:08:52.000000000 +0100
++++ ipkg-utils/ipkg.py 2006-06-29 12:52:58.466446000 +0200
+@@ -150,11 +150,11 @@
+ stat = os.stat(fn)
+ self.size = stat[ST_SIZE]
+ self.filename = os.path.basename(fn)
+- ## sys.stderr.write(" extracting control.tar.gz from %s\n"% (fn,))
++ sys.stderr.write(" extracting control.tar.gz from %s\n"% (fn,))
+ if self.isdeb:
+- control = os.popen("ar p "+fn+" control.tar.gz | tar xfzO - '*control'","r")
++ control = os.popen("ar p "+fn+" control.tar.gz | tar xfzO - './control'","r")
+ else:
+- control = os.popen("tar xfzO "+fn+" '*control.tar.gz' | tar xfzO - '*control'","r")
++ control = os.popen("tar xfzO "+fn+" 'control.tar.gz' | tar xfzO - './control'","r")
+ line = control.readline()
+ while 1:
+ if not line: break
diff --git a/meta/packages/ipkg-utils/ipkg-utils-native_1.6+cvs20050404.bb b/meta/packages/ipkg-utils/ipkg-utils-native_1.6+cvs20050404.bb
new file mode 100644
index 0000000000..ab8f4d63e0
--- /dev/null
+++ b/meta/packages/ipkg-utils/ipkg-utils-native_1.6+cvs20050404.bb
@@ -0,0 +1,16 @@
+include ipkg-utils_${PV}.bb
+SRC_URI += "file://ipkg-utils-fix.patch;patch=1"
+
+RDEPENDS = ""
+PR = "r7"
+
+inherit native
+
+# Avoid circular dependencies from package_ipk.bbclass
+PACKAGES = ""
+
+do_stage() {
+ for i in ${INSTALL}; do
+ install -m 0755 $i ${STAGING_BINDIR}
+ done
+}
diff --git a/meta/packages/ipkg-utils/ipkg-utils_1.6+cvs20050404.bb b/meta/packages/ipkg-utils/ipkg-utils_1.6+cvs20050404.bb
new file mode 100644
index 0000000000..12ed042f15
--- /dev/null
+++ b/meta/packages/ipkg-utils/ipkg-utils_1.6+cvs20050404.bb
@@ -0,0 +1,33 @@
+DESCRIPTION = "Itsy Package Manager utilities"
+SECTION = "base"
+PRIORITY = "optional"
+LICENSE = "GPL"
+CONFLICTS = "ipkg-link"
+RDEPENDS = "python"
+SRCDATE = "20050404"
+PR = "r11"
+
+SRC_URI = "${HANDHELDS_CVS};module=ipkg-utils"
+
+S = "${WORKDIR}/ipkg-utils"
+
+INSTALL = "ipkg-build ipkg-deb-unbuild ipkg-unbuild ipkg-compare-versions ipkg-upload ipkg-make-index ipkg-link ipkg.py"
+
+do_compile() {
+ oe_runmake ipkg-compare-versions
+}
+
+do_install() {
+ install -d ${D}${bindir}
+ for i in ${INSTALL}
+ do
+ install -m 0755 $i ${D}${bindir}
+ done
+}
+
+#FIXME: ipkg-utils is not allowed to have packages or else a ipkg-native -> ipkg-utils -> ipkg-utils
+# recursive dependency is triggered. This has been fixed by installing the ipkg-link script in
+# a dedicated package.
+#PACKAGES_prepend = "ipkg-link "
+#FILES_ipkg-link = "${bindir}/ipkg-link"
+