Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=systemd.git;a=commitdiff;h=be6b53a97e61488eb561925b4686b4d847a0e1e6
commit be6b53a97e61488eb561925b4686b4d847a0e1e6 Author: Michel Hermier <herm...@frugalware.org> Date: Fri Nov 26 22:22:54 2010 +0100 pacman-g2-3.7.9-2-i686 * We require some changes from upstream (be able to install without beeing able to detect available size). diff --git a/source/base/pacman-g2/FrugalBuild b/source/base/pacman-g2/FrugalBuild index 17f4fae..224c94c 100644 --- a/source/base/pacman-g2/FrugalBuild +++ b/source/base/pacman-g2/FrugalBuild @@ -8,7 +8,7 @@ USE_MINIMAL=${USE_MINIMAL:-"n"} pkgname=pacman-g2 pkgver=3.7.9 Fuse $USE_DEVEL && pkgver=3.7.3.32.gedb838c -pkgrel=1 +pkgrel=2 pkgdesc="A .tar.xz based package manager library (libpacman) and client (pacman-g2) with dependency support." url="http://ftp.frugalware.org/pub/other/pacman-g2/" backup=(etc/{makepkg,pacman-g2}.conf etc/pacman-g2/repos/{frugalware,frugalware-current}) @@ -26,8 +26,8 @@ archs=('i686' 'x86_64' 'ppc') _F_archive_nosort=y up2date="Flasttar $url/releases/" if ! Fuse $USE_DEVEL; then - source=($url/releases/$pkgname-$pkgver.tar.gz) - signatures=("$source.asc") + source=($url/releases/$pkgname-$pkgver.tar.gz current.diff) + signatures=("$source.asc" '') else _F_scm_type="git" _F_scm_url="git://git.frugalware.org/pub/other/pacman-g2/pacman-g2" diff --git a/source/base/pacman-g2/current.diff b/source/base/pacman-g2/current.diff new file mode 100644 index 0000000..0f2ff4e --- /dev/null +++ b/source/base/pacman-g2/current.diff @@ -0,0 +1,114 @@ +commit 24e18c44dda28f67df841012c798caf1666ebd8b +Author: Michel Hermier <herm...@frugalware.org> +Date: Thu Nov 25 13:02:25 2010 +0100 + + lib/libpacman/util.c: _pacman_check_freespace handle get_freespace return code. + + * The free space checking may return negative value on getmntent failure + (like /etc/mtab does not exist yet). + +diff --git a/lib/libpacman/util.c b/lib/libpacman/util.c +index afdc6a4..0928974 100644 +--- a/lib/libpacman/util.c ++++ b/lib/libpacman/util.c +@@ -760,6 +760,10 @@ int _pacman_check_freespace(pmtrans_t *trans, pmlist_t **data) + } + } + freespace = get_freespace(); ++ if(freespace < 0) { ++ _pacman_log(PM_LOG_WARNING, _("check_freespace: total pkg size: %lld, disk space: unknown"), pkgsize); ++ return(0); ++ } + _pacman_log(PM_LOG_DEBUG, _("check_freespace: total pkg size: %lld, disk space: %lld"), pkgsize, freespace); + if(pkgsize > freespace) { + if(data) { + +commit 77df8f87bb01ae7eaea3e16bf1ba5661bea5870a +Author: Michel Hermier <herm...@frugalware.org> +Date: Thu Nov 25 12:59:01 2010 +0100 + + lib/libpacman/util.c: get_freespace fix (FILE *) mntent leak. + +diff --git a/lib/libpacman/util.c b/lib/libpacman/util.c +index 8a07936..afdc6a4 100644 +--- a/lib/libpacman/util.c ++++ b/lib/libpacman/util.c +@@ -727,7 +727,7 @@ static long long get_freespace(void) + + fp = setmntent (table, "r"); + if(!fp) +- return(-1); ++ return(-1); + while ((mnt = getmntent (fp))) + { + struct statvfs64 buf; +@@ -735,6 +735,7 @@ static long long get_freespace(void) + statvfs64(mnt->mnt_dir, &buf); + ret += buf.f_bavail * buf.f_bsize; + } ++ endmntent(fp); + return(ret); + } + + +commit aba9cdc0ef445e69d37f481b28beb251d13bc89e +Author: Miklos Vajna <vmik...@frugalware.org> +Date: Wed Nov 17 14:10:52 2010 +0100 + + Make sure provides() is for all versions + + Before: + pkgname=foo + pkgver=1.0 + provides=('bar') + => provides=('bar>=1.0') + + After: + pkgname=foo + pkgver=1.0 + provides=('bar') + => provides=('bar') + +diff --git a/lib/libpacman/deps.c b/lib/libpacman/deps.c +index b9fa6f6..432f3eb 100644 +--- a/lib/libpacman/deps.c ++++ b/lib/libpacman/deps.c +@@ -358,8 +358,10 @@ pmlist_t *_pacman_checkdeps(pmtrans_t *trans, pmdb_t *db, unsigned char op, pmli + pmpkg_t *p = (pmpkg_t *)k->data; + /* see if the package names match OR if p provides depend.name */ + if(!strcmp(p->name, depend.name) || _pacman_list_is_strin(depend.name, _pacman_pkg_getinfo(p, PM_PKG_PROVIDES))) { +- if(depend.mod == PM_DEP_MOD_ANY) { +- /* accept any version */ ++ if(depend.mod == PM_DEP_MOD_ANY || ++ _pacman_list_is_strin(depend.name, _pacman_pkg_getinfo(p, PM_PKG_PROVIDES))) { ++ /* depend accepts any version or p provides depend (provides - by ++ * definition - is for all versions) */ + found = 1; + } else { + char *ver = strdup(p->version); +diff --git a/pactest/tests/sync993.py b/pactest/tests/sync993.py +new file mode 100644 +index 0000000..31edcaf +--- /dev/null ++++ b/pactest/tests/sync993.py +@@ -0,0 +1,20 @@ ++self.description = "System upgrade (Ignoring version on provides)" ++ ++sp1 = pmpkg("pkg1", "1.0-2") ++sp1.depends = ["pkg3>=2.0"] ++self.addpkg2db("sync", sp1); ++ ++lp1 = pmpkg("pkg1") ++self.addpkg2db("local", lp1) ++ ++lp2 = pmpkg("pkg2", "1.0-1") ++lp2.conflicts = ["pkg3"] ++lp2.provides = ["pkg3"] ++self.addpkg2db("sync", lp2) ++self.addpkg2db("local", lp2) ++ ++self.args = "-Su" ++ ++self.addrule("PACMAN_RETCODE=0") ++self.addrule("PKG_MODIFIED=pkg1") ++self.addrule("PKG_EXIST=pkg2") _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git