makepkg: fix check for previously built packages with package splitting

Checks if some or all packages are built before overwriting/installing.
Adds some new strings for translation.

Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Allan McRae 2009-07-02 13:53:29 +10:00
parent 617e7d512f
commit b312c820c8

View file

@ -1648,6 +1648,7 @@ if [ "${#pkgname[@]}" -gt "1" ]; then
SPLITPKG=1
fi
if [ "$SPLITPKG" -eq 0 ]; then
if [ -f "$PKGDEST/${pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT}" \
-a "$FORCE" -eq 0 -a "$SOURCEONLY" -eq 0 -a "$NOBUILD" -eq 0 ]; then
if [ "$INSTALL" -eq 1 ]; then
@ -1659,6 +1660,34 @@ if [ -f "$PKGDEST/${pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT}" \
exit 1
fi
fi
else
allpkgbuilt=1
somepkgbuilt=0
for pkg in ${pkgname[@]}; do
if [ -f "$PKGDEST/${pkg}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT}" ]; then
somepkgbuilt=1
else
allpkgbuilt=0
fi
done
if [ "$FORCE" -eq 0 -a "$SOURCEONLY" -eq 0 -a "$NOBUILD" -eq 0 ]; then
if [ "$allpkgbuilt" -eq 1 ]; then
if [ "$INSTALL" -eq 1 ]; then
warning "$(gettext "The package group has already been built, installing existing packages...")"
install_package
exit $?
else
error "$(gettext "The package group has already been built. (use -f to overwrite)")"
exit 1
fi
fi
if [ "$somepkgbuilt" -eq 1 ]; then
error "$(gettext "Part of the package group has already been built. (use -f to overwrite)")"
exit 1
fi
fi
unset allpkgbuilt somepkgbuilt
fi
# Run the bare minimum in fakeroot
if [ "$INFAKEROOT" -eq 1 ]; then