#!/bin/bash # helper script: clean the dependencies that were built in coreboot # # Copyright (C) 2014, 2015, 2016 Francis Rowe # Copyright (C) 2015 Klemens Nanni # # This program 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 3 of the License, or # (at your option) any later version. # # This program 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 this program. If not, see . # # This script assumes that the current working directory is the root [ "x${DEBUG+set}" = 'xset' ] && set -v set -u -e # clean coreboot utilities (dependencies for 'build'): printf "Cleaning the previous build of coreboot and its utilities\n" # clean coreboot and crossgcc (source archives preserved) for payload in coreboot/*; do for board in "${payload}/"*; do ( # Reset to master branch, where there are no board-specific patches applied # also remove the .git history and so on cd "${board}/" git checkout master rm -Rf ".git/"* rm -Rf "3rdparty/"*/*.git ) # Clean coreboot, of course make -C "${board}/" distclean # Clean its utilities as well for util in {cbfs,ifd,nvram}tool cbmem; do make -C "${board}/util/${util}/" clean done make -C "${board}/payloads/libpayload/" distclean rm -f "${board}/util/crossgcc" done done # Also do the same for the crossgcc version of coreboot # Note how we do not want to delete crossgcc. We only clean it make -C "crossgcc/" crossgcc-clean for util in {cbfs,ifd,nvram}tool cbmem; do make -C "crossgcc/util/${util}/" clean done make -C "crosgcc/" distclean printf "\n\n"