scripts/*: cleanup. handle old unpack stamps

This commit is contained in:
Stefan Saraev 2013-12-12 19:59:28 +02:00
parent bc4e8ad846
commit 0dc3e926dc
2 changed files with 36 additions and 57 deletions

View File

@ -22,8 +22,7 @@
. config/options $1 . config/options $1
clean () if [ ! -z "$1" ]; then
{
printf "%${BUILD_INDENT}c CLEAN $1\n" ' '>&$SILENT_OUT printf "%${BUILD_INDENT}c CLEAN $1\n" ' '>&$SILENT_OUT
export BUILD_INDENT=$((${BUILD_INDENT:-1}+$BUILD_INDENT_SIZE)) export BUILD_INDENT=$((${BUILD_INDENT:-1}+$BUILD_INDENT_SIZE))
@ -32,45 +31,20 @@ clean ()
return return
fi fi
if [ "$FULL" = true ]; then for i in $BUILD/$1-*; do
rm -rf $BUILD_BASE*/$STAMPS_NOARCH/$1* if [ -d $i -a -f "$i/.openelec-unpack" ] ; then
rm -rf $BUILD_BASE*/$1* . "$i/.openelec-unpack"
rm -rf $STAMPS_NOARCH/$1 if [ "$STAMP_PKG_NAME" = "$1" ]; then
rm -rf $SOURCES/$1 printf "%${BUILD_INDENT}c * Removing $i ...\n" ' '>&$SILENT_OUT
else rm -rf $i
for i in $BUILD/$1-*; do
if [ -d $i ] ; then
if [ -f $i/.openelec-unpack ] ; then
. $i/.openelec-unpack
if [ "$STAMP_PKG_NAME" = "$1" ]; then
printf "%${BUILD_INDENT}c * Removing $i ...\n" ' '>&$SILENT_OUT
rm -rf $i
fi
else
printf "%${BUILD_INDENT}c * Removing $i ...\n" ' '>&$SILENT_OUT
rm -rf $i
fi
fi fi
done else
rm -f $STAMPS/$1*/build_* # force clean if no stamp found (previous unpack failed)
fi printf "%${BUILD_INDENT}c * Removing $i ...\n" ' '>&$SILENT_OUT
} rm -rf $i
fi
if [ "$1" = "--full" ]; then done
FULL=true rm -f $STAMPS/$1*/build_*
shift
elif [ "$1" = "--sources" ]; then
CLEAN_SOURCES=true
shift
fi
if [ -z "$1" ]; then
for i in $PACKAGES/*; do clean ${i#$PACKAGES/}; done
rm -rf $BUILD/iso
rm -rf $BUILD/ziso
[ "$FULL" = true ] && rm -rf $CCACHE_DIR
else
clean $1
fi fi
exit 0 exit 0

View File

@ -36,25 +36,30 @@ mkdir -p $BUILD
[ ! -d "$SOURCES/$1" -a ! -d "$PKG_DIR/sources" ] && exit 0 [ ! -d "$SOURCES/$1" -a ! -d "$PKG_DIR/sources" ] && exit 0
# TODO: remove
[ -f "$STAMP" -a -f "$PKG_DIR/need_unpack" ] && $PKG_DIR/need_unpack $@ [ -f "$STAMP" -a -f "$PKG_DIR/need_unpack" ] && $PKG_DIR/need_unpack $@
if [ -f $PKG_DIR/package.mk ]; then for i in $BUILD/$1-*; do
# trigger unpack / full rebuild on any package.mk change if [ -d $i -a -f "$i/.openelec-unpack" ] ; then
if [ -f $STAMP -a $PKG_DIR/package.mk -nt $STAMP ]; then . "$i/.openelec-unpack"
CLEAN_SOURCE=yes if [ "$STAMP_PKG_NAME" = "$1" ]; then
fi # trigger unpack / full rebuild on any package.mk change
elif [ -f $PKG_DIR/meta ]; then if [ -f $PKG_DIR/package.mk -a $PKG_DIR/package.mk -nt "$i/.openelec-unpack" ]; then
# trigger unpack / full rebuild on any meta change (deprecated) CLEAN_SOURCE=yes
if [ -f $STAMP -a $PKG_DIR/meta -nt $STAMP ]; then break
CLEAN_SOURCE=yes # TODO: remove after converting ALL packages
fi elif [ -f $PKG_DIR/meta -a $PKG_DIR/meta -nt "$i/.openelec-unpack" ]; then
fi CLEAN_SOURCE=yes
break
for patch in $PKG_DIR/patches/*; do fi
# trigger unpack / full rebuild on any patch change # trigger unpack / full rebuild on any patch change
if [ "$patch" -nt "$STAMP" ]; then for patch in $PKG_DIR/patches/* $PKG_DIR/patches.upstream/*; do
CLEAN_SOURCE=yes if [ -f "$patch" -a "$patch" -nt "$i/.openelec-unpack" ]; then
break CLEAN_SOURCE=yes
break
fi
done
fi
fi fi
done done