Runs make clean after make-install to reduce used disk (#855)
* Runs `make clean` after `make-install` to reduce used disk Make install leaves many .o and other files Fixes problems with disk space on github actions runner * Create a flag --clean-after-install that can be passed as the second argument to `make_build` function. * Create a flag --clean-after-install that can be passed as the second argument to `make_build` function. Ups tools-cache-version to v7 * Now running clean after install just depends on adding an environment variable when using scripts that call `module_make` or `module_build`. Those two bash functions will check CLEANAFTERINSTALL and if it is non-empty, they will call `make clean` after other `make` calls. * build-toolchains.sh gets new flag --clean-after-install to turn enable `make clean` in `module_make` and `module_run`
This commit is contained in:
@@ -18,11 +18,12 @@ usage() {
|
||||
echo " ec2fast: if set, pulls in a pre-compiled RISC-V toolchain for an EC2 manager instance"
|
||||
echo ""
|
||||
echo "Options"
|
||||
echo " --prefix PREFIX : Install destination. If unset, defaults to $(pwd)/riscv-tools-install"
|
||||
echo " or $(pwd)/esp-tools-install"
|
||||
echo " --ignore-qemu : Ignore installing QEMU"
|
||||
echo " --arch -a : Architecture (e.g., rv64gc)"
|
||||
echo " --help -h : Display this message"
|
||||
echo " --prefix PREFIX : Install destination. If unset, defaults to $(pwd)/riscv-tools-install"
|
||||
echo " or $(pwd)/esp-tools-install"
|
||||
echo " --ignore-qemu : Ignore installing QEMU"
|
||||
echo " --clean-after-install : Run make clean in calls to module_make and module_build"
|
||||
echo " --arch -a : Architecture (e.g., rv64gc)"
|
||||
echo " --help -h : Display this message"
|
||||
exit "$1"
|
||||
}
|
||||
|
||||
@@ -37,6 +38,7 @@ die() {
|
||||
TOOLCHAIN="riscv-tools"
|
||||
EC2FASTINSTALL="false"
|
||||
IGNOREQEMU=""
|
||||
CLEANAFTERINSTALL=""
|
||||
RISCV=""
|
||||
ARCH=""
|
||||
|
||||
@@ -51,9 +53,11 @@ do
|
||||
RISCV=$(realpath $1) ;;
|
||||
--ignore-qemu )
|
||||
IGNOREQEMU="true" ;;
|
||||
-a | --arch )
|
||||
shift
|
||||
ARCH=$1 ;;
|
||||
-a | --arch )
|
||||
shift
|
||||
ARCH=$1 ;;
|
||||
--clean-after-install )
|
||||
CLEANAFTERINSTALL="true" ;;
|
||||
riscv-tools | esp-tools)
|
||||
TOOLCHAIN=$1 ;;
|
||||
ec2fast )
|
||||
|
||||
@@ -49,6 +49,9 @@ module_make() ( # <submodule> <target..>
|
||||
cd "${SRCDIR}/${1}/build"
|
||||
shift
|
||||
"${MAKE}" "$@" | tee "build-${1:-make}.log"
|
||||
if [ -n "$CLEANAFTERINSTALL" ] ; then
|
||||
"${MAKE}" clean # get rid of intermediate files
|
||||
fi
|
||||
)
|
||||
|
||||
module_build() ( # <submodule> [configure-arg..]
|
||||
@@ -81,6 +84,9 @@ module_build() ( # <submodule> [configure-arg..]
|
||||
"${MAKE}"
|
||||
echo "==> Installing ${name}"
|
||||
"${MAKE}" install
|
||||
if [ -n "$CLEANAFTERINSTALL" ] ; then
|
||||
"${MAKE}" clean # get rid of intermediate files
|
||||
fi
|
||||
} 2>&1 | tee build.log
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user