From 7c6b35cf95128a58b91a1d58b31469438fe1f5cc Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sat, 2 Sep 2023 23:42:34 +0100 Subject: unify build/clean scripts: use handle/make instead The -c option is added for distclean, and -x for crossgcc-clean, in handle/make/config about 100 sloc removed from lbmk Signed-off-by: Leah Rowe --- script/build/clean/cbutils | 59 --------------------------------------------- script/build/clean/crossgcc | 45 ---------------------------------- script/build/clean/seabios | 48 ------------------------------------ script/build/clean/u-boot | 51 --------------------------------------- script/build/release/src | 14 +++++------ 5 files changed, 6 insertions(+), 211 deletions(-) delete mode 100755 script/build/clean/cbutils delete mode 100755 script/build/clean/crossgcc delete mode 100755 script/build/clean/seabios delete mode 100755 script/build/clean/u-boot (limited to 'script/build') diff --git a/script/build/clean/cbutils b/script/build/clean/cbutils deleted file mode 100755 index bdacc45a..00000000 --- a/script/build/clean/cbutils +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the dependencies that were built in coreboot -# -# Copyright (C) 2014-2016, 2020, 2023 Leah 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 - -. "include/err.sh" - -main() -{ - printf "Cleaning the previous build of coreboot and its utilities\n" - - rm -Rf cbutils || err "cannot remove cbutils/" - [ ! -d "coreboot/" ] && exit 0 - - clean_cbutils -} - -clean_cbutils() -{ - for tree in coreboot/*; do - [ "${tree##*/}" = "coreboot" ] && continue - [ -d "${tree}" ] || continue - - # Clean coreboot, of course - make -C "${tree}/" distclean || \ - err "clean_cbutils: ${tree}: cannot distclean" - - # Clean its utilities as well - for util in cbfstool ifdtool nvramtool cbmem; do - make distclean -C "${tree}/util/${util}/" || \ - err "clean_cbutils: ${cbtree} ${util}: can't clean" - done - make distclean -C "${tree}/payloads/libpayload/" || \ - err "clean_cbutils: ${tree}: can't distclean libpayload" - done -} - -main $@ diff --git a/script/build/clean/crossgcc b/script/build/clean/crossgcc deleted file mode 100755 index c76d1849..00000000 --- a/script/build/clean/crossgcc +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the crossgcc builds -# -# Copyright (C) 2014-2016, 2020, 2023 Leah 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 . -# - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -. "include/err.sh" - -main() -{ - printf "Cleaning crossgcc builds in all coreboot archives\n" - [ ! -d "coreboot/" ] && exit 0 - - clean_crossgcc -} - -clean_crossgcc() -{ - for board in coreboot/*; do - [ -d "${board}" ] || continue - [ "${board##*/}" = "coreboot" ] && continue - make -C "${board}/" crossgcc-clean || \ - err "clean_crossgcc: ${board}: !make crossgcc-clean" - done -} - -main $@ diff --git a/script/build/clean/seabios b/script/build/clean/seabios deleted file mode 100755 index 0178a729..00000000 --- a/script/build/clean/seabios +++ /dev/null @@ -1,48 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the dependencies that were built in seabios -# -# Copyright (C) 2015,2020,2021,2023 Leah Rowe -# -# 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 . -# - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -. "include/err.sh" - -# clean bucts -# -------------------------------------------------------- - -main() -{ - [ ! -d "elf/seabios" ] || rm -Rf elf/seabios || \ - err "cannot remove elf/seabios" - [ ! -d "seabios/" ] && exit 0 - - clean_seabios -} - -clean_seabios() -{ - for x in seabios/*; do - [ ! -d "${x}" ] && continue - [ "${x}" = "seabios/seabios" ] && continue - make -C "${x}" distclean || \ - err "clean_seabios: cannot distclean tree, ${x}" - done -} - -main $@ diff --git a/script/build/clean/u-boot b/script/build/clean/u-boot deleted file mode 100755 index 5deff216..00000000 --- a/script/build/clean/u-boot +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the u-boot builds -# -# Copyright (C) 2014-2016, 2020, 2023 Leah Rowe -# Copyright (C) 2015 Klemens Nanni -# Copyright (C) 2022 Alper Nebi Yasak -# -# 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 . -# - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -. "include/err.sh" - -main() -{ - printf "Cleaning u-boot builds for all boards\n" - clean_uboot -} - -clean_uboot() -{ - for board in u-boot/*; do - if [ "${board##*/}" = "u-boot" ] || [ ! -d "${board}" ]; then - continue - fi - - make -C "${board}/" distclean || \ - err "clean_uboot: cannot distclean ${board}" - - if [ -e "${board}/.git" ]; then - git -C "${board}" clean -fdx || \ - err "clean_uboot: ${board}: cannot clean git files" - fi - done -} - -main $@ diff --git a/script/build/release/src b/script/build/release/src index 4d5c3efe..9e2192ec 100755 --- a/script/build/release/src +++ b/script/build/release/src @@ -152,16 +152,14 @@ purge_files() cd "${srcdir}/" || \ err "purge_files 3: !cd ${srcdir}/" - for p in coreboot/*; do - [ -d "${p}" ] || continue - ./handle make file -c "${p}" || \ - err "purge_files 1: ${p}: !make distclean" - done - ./handle make file -c coreboot/default/util/kbc1126 || \ err "purge_files 1: default/util/kbc1126: ! make clean" - ./build clean all || \ - err "purge_files 1: ! ./build clean all" + ./handle make config -x coreboot || \ + err "purge_files: coreboot: cannot clean crossgcc files" + for p in u-boot seabios coreboot; do + ./handle make config -c "${p}" || \ + err "purge_files: ${p}: cannot clean the source trees" + done for p in bios_extract flashrom grub ich9utils uefitool; do ./handle make file -c "${p}" || \ -- cgit v1.2.1