+++ /dev/null
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- C/ipkg_cmd.c~terse
-+++ C/ipkg_cmd.c
-@@ -148,9 +146,7 @@
- int result;
- p_userdata = userdata;
- result = (cmd->fun)(conf, argc, argv);
-- if ( result == 0 ) {
-- ipkg_message(conf, IPKG_NOTICE, "Successfully terminated.\n");
-- } else {
-+ if ( result != 0 ) {
- ipkg_message(conf, IPKG_NOTICE, "An error ocurred, return value: %d.\n", result);
- }
-
+++ /dev/null
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- C/ipkg_cmd.c~terse
-+++ C/ipkg_cmd.c
-@@ -148,9 +146,7 @@
- int result;
- p_userdata = userdata;
- result = (cmd->fun)(conf, argc, argv);
-- if ( result == 0 ) {
-- ipkg_message(conf, IPKG_NOTICE, "Successfully terminated.\n");
-- } else {
-+ if ( result != 0 ) {
- ipkg_message(conf, IPKG_NOTICE, "An error ocurred, return value: %d.\n", result);
- }
-
+++ /dev/null
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- C/ipkg_cmd.c~terse
-+++ C/ipkg_cmd.c
-@@ -148,9 +146,7 @@
- int result;
- p_userdata = userdata;
- result = (cmd->fun)(conf, argc, argv);
-- if ( result == 0 ) {
-- ipkg_message(conf, IPKG_NOTICE, "Successfully terminated.\n");
-- } else {
-+ if ( result != 0 ) {
- ipkg_message(conf, IPKG_NOTICE, "An error ocurred, return value: %d.\n", result);
- }
-
+++ /dev/null
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- C/ipkg_cmd.c~terse
-+++ C/ipkg_cmd.c
-@@ -148,9 +146,7 @@
- int result;
- p_userdata = userdata;
- result = (cmd->fun)(conf, argc, argv);
-- if ( result == 0 ) {
-- ipkg_message(conf, IPKG_NOTICE, "Successfully terminated.\n");
-- } else {
-+ if ( result != 0 ) {
- ipkg_message(conf, IPKG_NOTICE, "An error ocurred, return value: %d.\n", result);
- }
-
+++ /dev/null
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- C/ipkg_cmd.c~terse
-+++ C/ipkg_cmd.c
-@@ -148,9 +146,7 @@
- int result;
- p_userdata = userdata;
- result = (cmd->fun)(conf, argc, argv);
-- if ( result == 0 ) {
-- ipkg_message(conf, IPKG_NOTICE, "Successfully terminated.\n");
-- } else {
-+ if ( result != 0 ) {
- ipkg_message(conf, IPKG_NOTICE, "An error ocurred, return value: %d.\n", result);
- }
-
+++ /dev/null
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- C/ipkg_cmd.c~terse
-+++ C/ipkg_cmd.c
-@@ -148,9 +146,7 @@
- int result;
- p_userdata = userdata;
- result = (cmd->fun)(conf, argc, argv);
-- if ( result == 0 ) {
-- ipkg_message(conf, IPKG_NOTICE, "Successfully terminated.\n");
-- } else {
-+ if ( result != 0 ) {
- ipkg_message(conf, IPKG_NOTICE, "An error ocurred, return value: %d.\n", result);
- }
-
+++ /dev/null
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- C/ipkg_cmd.c~terse
-+++ C/ipkg_cmd.c
-@@ -148,9 +146,7 @@
- int result;
- p_userdata = userdata;
- result = (cmd->fun)(conf, argc, argv);
-- if ( result == 0 ) {
-- ipkg_message(conf, IPKG_NOTICE, "Successfully terminated.\n");
-- } else {
-+ if ( result != 0 ) {
- ipkg_message(conf, IPKG_NOTICE, "An error ocurred, return value: %d.\n", result);
- }
-
--- /dev/null
+SECTION = "base"
+include ipkg_${PV}.bb
+
+# NOTE: ipkg now obeys ${libdir}, so ipkg-native now installs
+# things into the wrong location inside of offline_root. Backup
+# the target libdir and use that.
+target_libdir := "${libdir}"
+
+inherit native
+
+DEPENDS = "libtool-native automake-native"
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/ipkg-${PV}"
+PROVIDES = ""
--- /dev/null
+SECTION = "base"
+DESCRIPTION = "Itsy Package Manager"
+DESCRIPTION_libipkg = "Itsy Package Manager Library"
+LICENSE = "GPL"
+PROVIDES = "virtual/ipkg libipkg"
+PR = "r0"
+
+PACKAGES =+ "libipkg-dev libipkg"
+FILES_libipkg-dev = "${libdir}/*.a ${libdir}/*.la ${libdir}/*.so"
+FILES_libipkg = "${libdir}"
+AUTO_LIBNAME_PKGS = "libipkg"
+
+SRC_URI = "${HANDHELDS_CVS};module=familiar/dist/ipkg;tag=${@'V' + bb.data.getVar('PV',d,1).replace('.', '-')} \
+ file://terse.patch;patch=1 "
+
+S = "${WORKDIR}/ipkg/C"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF += "--with-ipkglibdir=/usr/lib"
+
+pkg_postinst_ipkg () {
+#!/bin/sh
+if [ "x$D" != "x" ]; then
+ install -d ${IMAGE_ROOTFS}/${sysconfdir}/rcS.d
+ # this happens at S98 where our good 'ole packages script used to run
+ echo -e "#!/bin/sh
+ipkg-cl configure
+" > ${IMAGE_ROOTFS}/${sysconfdir}/rcS.d/S98configure
+ chmod 0755 ${IMAGE_ROOTFS}/${sysconfdir}/rcS.d/S98configure
+fi
+
+update-alternatives --install ${bindir}/ipkg ipkg ${bindir}/ipkg-cl 100
+}
+
+pkg_postrm_ipkg () {
+#!/bin/sh
+update-alternatives --remove ipkg ${bindir}/ipkg-cl
+}
+
+do_stage() {
+ oe_libinstall -so libipkg ${STAGING_LIBDIR}
+ install -d ${STAGING_INCDIR}/replace/
+ install -m 0644 replace/replace.h ${STAGING_INCDIR}/replace/
+ install -d ${STAGING_INCDIR}/libipkg/
+ for f in *.h
+ do
+ install -m 0644 $f ${STAGING_INCDIR}/libipkg/
+ done
+}
+
+#
+# FIXME: Install /etc/ipkg.conf and /etc/ipkg/arch.conf
+#
+++ /dev/null
---- rsync-2.6.2/configure.in 2004-04-30 14:02:43.000000000 -0400
-+++ rsync-2.6.2/configure.in 2004-05-22 13:09:42.000000000 -0400
-@@ -307,6 +307,8 @@
- AC_CHECK_MEMBERS([struct stat.st_rdev])
-
- AC_CHECK_TYPE([ino_t], [unsigned])
-+AC_CHECK_TYPES([int64_t])
-+AC_CHECK_TYPES([uint64_t])
- TYPE_SOCKLEN_T
-
- AC_CACHE_CHECK([for errno in errno.h],rsync_cv_errno, [
---- rsync-2.6.2/rsync.h 2004-04-26 21:36:16.000000000 -0400
-+++ rsync-2.6.2/rsync.h 2004-05-22 13:06:16.000000000 -0400
-@@ -298,7 +298,9 @@
- #define STRUCT_STAT struct stat
- #endif
-
--#if HAVE_OFF64_T
-+#if defined(HAVE_INT64_T)
-+#define int64 int64_t
-+#elif HAVE_OFF64_T
- #define int64 off64_t
- #elif (SIZEOF_LONG == 8)
- #define int64 long
-@@ -312,7 +314,9 @@
- #define NO_INT64
- #endif
-
--#if (SIZEOF_LONG == 8)
-+#if defined(HAVE_UINT64_T)
-+#define uint64 uint64_t
-+#elif (SIZEOF_LONG == 8)
- #define uint64 unsigned long
- #elif (SIZEOF_INT == 8)
- #define uint64 unsigned int