1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-12-22 15:58:50 -05:00

makepkg : remove xdelta support

The pkgdelta script can be used instead.

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Xavier Chantry 2009-02-25 19:40:57 +01:00 committed by Dan McGee
parent 8c09c19139
commit b4e1365657
3 changed files with 3 additions and 75 deletions

View File

@ -70,7 +70,7 @@ Options
This is often used to set the number of jobs used, for example, `-j2`.
Other flags that make accepts can also be passed.
**BUILDENV=(**fakeroot !distcc color !ccache !xdelta**)**::
**BUILDENV=(**fakeroot !distcc color !ccache**)**::
This array contains options that affect the build environment, the defaults
are shown here. All options should always be left in the array; to enable
or disable an option simply remove or place an ``!'' at the front of the
@ -93,11 +93,6 @@ Options
be disabled for individual packages by placing `!ccache` in the
PKGBUILD options array.
*xdelta*;;
Generate an xdelta binary patch from previous to current package. The
previous package must be available in the makepkg cache directory for
this to occur.
**DISTCC_HOSTS=**"host1 ..."::
If using DistCC, this is used to specify a space-delimited list of hosts
running in the DistCC cluster. In addition, you will want to modify your

View File

@ -39,16 +39,15 @@ CXXFLAGS="@CARCHFLAGS@-mtune=generic -O2 -pipe"
# BUILD ENVIRONMENT
#########################################################################
#
# Defaults: BUILDENV=(fakeroot !distcc color !ccache !xdelta)
# Defaults: BUILDENV=(fakeroot !distcc color !ccache)
# A negated environment option will do the opposite of the comments below.
#
#-- fakeroot: Allow building packages as a non-root user
#-- distcc: Use the Distributed C/C++/ObjC compiler
#-- color: Colorize output messages
#-- ccache: Use ccache to cache compilation
#-- xdelta: Generate delta patch from previous to current package
#
BUILDENV=(fakeroot !distcc color !ccache !xdelta)
BUILDENV=(fakeroot !distcc color !ccache)
#
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
#-- specify a space-delimited list of hosts running in the DistCC cluster.

View File

@ -982,70 +982,6 @@ create_package() {
shopt -u nullglob
}
create_xdelta() {
if [ "$(check_buildenv xdelta)" != "y" ]; then
return
elif [ ! "$(type -p xdelta)" ]; then
error "$(gettext "Cannot find the xdelta binary! Is xdelta installed?")"
return
fi
local pkg_file=$1
local cache_dir="/var/cache/pacman/pkg" # TODO: autoconf me
local pkginfo="$(mktemp "$startdir"/xdelta-pkginfo.XXXXXXXXX)"
local old_file old_version
for old_file in $(ls {"$cache_dir","$PKGDEST"}/${pkgname}-*-*{,-$CARCH}$PKGEXT 2>/dev/null); do
bsdtar -xOf "$old_file" .PKGINFO > "$pkginfo" || continue
if [ "$(cat "$pkginfo" | grep '^pkgname = ')" != "pkgname = $pkgname" ]; then
continue # Package name does not match.
elif [ "$(cat "$pkginfo" | grep '^arch = ')" != "arch = $CARCH" ] ; then
continue # Not same arch.
fi
old_version="$(cat "$pkginfo" | grep '^pkgver = ' | sed 's/^pkgver = //')"
# old_version may include the target package, only use the old versions
local vercmp=$(vercmp "$old_version" "$latest_version")
if [ "$old_version" != "$pkgver-$pkgrel" -a $vercmp -gt 0 ]; then
local latest_version=$old_version
local base_file=$old_file
fi
done
rm -f "$pkginfo"
if [ -n "$base_file" ]; then
msg "$(gettext "Making delta from version %s...")" "$latest_version"
local delta_file="$PKGDEST/$pkgname-${latest_version}_to_$pkgver-$pkgrel-$CARCH.delta"
local ret=0
# xdelta will decompress base_file & pkg_file into TMP_DIR (or /tmp if
# TMP_DIR is unset) then perform the delta on the resulting tars
xdelta delta "$base_file" "$pkg_file" "$delta_file" || ret=$?
if [ $ret -eq 0 -o $ret -eq 1 ]; then
# Generate the final gz using xdelta for compression. xdelta will be our
# common denominator compression utility between the packager and the
# users. makepkg and pacman must use the same compression algorithm or
# the delta generated package may not match, producing md5 checksum
# errors.
msg2 "$(gettext "Recreating package tarball from delta to match md5 signatures")"
msg2 "$(gettext "NOTE: the delta should ONLY be distributed with this tarball")"
ret=0
xdelta patch "$delta_file" "$base_file" "$pkg_file" || ret=$?
if [ $ret -ne 0 ]; then
error "$(gettext "Could not generate the package from the delta.")"
exit 1
fi
else
warning "$(gettext "Delta was not able to be created.")"
fi
else
warning "$(gettext "No previous version found, skipping xdelta.")"
fi
}
create_srcpackage() {
cd "$startdir"
if [ "$SOURCEONLY" -eq 2 ]; then
@ -1810,8 +1746,6 @@ else
fakeroot -- $0 -F $ARGLIST || exit $?
fi
fi
create_xdelta "$PKGDEST/${pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT}"
fi
msg "$(gettext "Finished making: %s")" "$pkgname $pkgver-$pkgrel $CARCH ($(date))"