Files
LibreELEC.tv/scripts/clean
2018-02-23 10:19:59 +00:00

61 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
# OpenELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# OpenELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
################################################################################
. config/options $1
clean_package() {
printf "%${BUILD_INDENT}c $(print_color CLR_CLEAN "CLEAN") $1\n" ' '>&$SILENT_OUT
export BUILD_INDENT=$((${BUILD_INDENT:-1}+$BUILD_INDENT_SIZE))
if [ "$CLEAN_SOURCES" = true ]; then
rm -rf $SOURCES/$1
return
fi
# Use a wilcard here to remove all versions of the package
for i in $BUILD/$1-*; do
if [ -d $i -a -f "$i/.libreelec-unpack" ] ; then
. "$i/.libreelec-unpack"
if [ "$STAMP_PKG_NAME" = "$1" ]; then
printf "%${BUILD_INDENT}c $(print_color CLR_WARNING "*") $(print_color CLR_WARNING_DIM "Removing $i ...")\n" ' '>&$SILENT_OUT
rm -rf $i
fi
else
# force clean if no stamp found (previous unpack failed)
printf "%${BUILD_INDENT}c * Removing $i ...\n" ' '>&$SILENT_OUT
rm -rf $i
fi
done
rm -f $STAMPS/$1/build_*
}
if [ "$1" = "--all" ]; then
if [ ! -z "$2" ]; then
for build_dir in $(ls -1d ${ROOT}/build.*); do
load_build_config "${build_dir}" && ./scripts/clean $2
done
fi
else
if [ ! -z "$1" ]; then
clean_package $1
fi
fi