From 023d6b69968b44e296caee308c173cb617b89497 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 20 Aug 2023 18:54:40 +0100 Subject: unify build/clean into ./build release src handle it all in the 1 script quite a few clean scripts are still present, so resources/scripts/build/clean/ still exists. 23 sloc reduction. Signed-off-by: Leah Rowe --- resources/scripts/build/boot/roms_helper | 2 +- resources/scripts/build/clean/bios_extract | 28 --------------------- resources/scripts/build/clean/flashrom | 35 -------------------------- resources/scripts/build/clean/grub | 39 ----------------------------- resources/scripts/build/clean/ich9utils | 33 ------------------------ resources/scripts/build/clean/memtest86plus | 35 -------------------------- resources/scripts/build/clean/rom_images | 31 ----------------------- resources/scripts/build/clean/uefitool | 28 --------------------- resources/scripts/build/descriptors/ich9m | 2 +- resources/scripts/build/release/src | 3 +++ resources/scripts/build/src/for | 25 +++++++++++++++--- 11 files changed, 26 insertions(+), 235 deletions(-) delete mode 100755 resources/scripts/build/clean/bios_extract delete mode 100755 resources/scripts/build/clean/flashrom delete mode 100755 resources/scripts/build/clean/grub delete mode 100755 resources/scripts/build/clean/ich9utils delete mode 100755 resources/scripts/build/clean/memtest86plus delete mode 100755 resources/scripts/build/clean/rom_images delete mode 100755 resources/scripts/build/clean/uefitool (limited to 'resources/scripts/build') diff --git a/resources/scripts/build/boot/roms_helper b/resources/scripts/build/boot/roms_helper index f5ea80af..8fcc81b6 100755 --- a/resources/scripts/build/boot/roms_helper +++ b/resources/scripts/build/boot/roms_helper @@ -170,7 +170,7 @@ if [ ! -f "${seavgabiosrom}" ] \ fi [ "${payload_memtest}" = "y" ] && [ ! -f "memtest86plus/memtest" ] && \ - ./build src for memtest86plus + ./build src for -b memtest86plus [ -d "${romdir}/" ] || mkdir -p "${romdir}/" rm -f "${romdir}"/* diff --git a/resources/scripts/build/clean/bios_extract b/resources/scripts/build/clean/bios_extract deleted file mode 100755 index 65493f78..00000000 --- a/resources/scripts/build/clean/bios_extract +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env sh - -# helper script: run make clean on bios_extract -# -# Copyright (C) 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 - -printf "Cleaning the previous build of bios_extract\n" - -[ ! -d "bios_extract/" ] && exit 0 - -make clean -BC bios_extract || exit 1 diff --git a/resources/scripts/build/clean/flashrom b/resources/scripts/build/clean/flashrom deleted file mode 100755 index 744052fc..00000000 --- a/resources/scripts/build/clean/flashrom +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the dependencies that were built in flashrom -# -# Copyright (C) 2014, 2015 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 -# of git or release archive - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -printf "Cleaning the previous build of flashrom\n" - -[ ! -d "flashrom/" ] && exit 0 - -# clean flashrom -make -C flashrom clean - -printf "\n\n" diff --git a/resources/scripts/build/clean/grub b/resources/scripts/build/clean/grub deleted file mode 100755 index dea2c2dd..00000000 --- a/resources/scripts/build/clean/grub +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the dependencies that were built in GRUB -# -# Copyright (C) 2014, 2015, 2016 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 -# of git or release archive - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -printf "Cleaning the previous build of GRUB\n" - -[ ! -d "grub/" ] && exit 0 - -( - cd grub/ - if [ -f Makefile ]; then - make distclean - fi -) - -printf "\n\n" diff --git a/resources/scripts/build/clean/ich9utils b/resources/scripts/build/clean/ich9utils deleted file mode 100755 index 38ad439f..00000000 --- a/resources/scripts/build/clean/ich9utils +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the previous build of ich9utils -# -# Copyright (C) 2014, 2015, 2020 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 . -# - -# This script assumes that the current working directory is the root -# of libreboot_src or libreboot git - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -# clean ich9deblob utility -# -------------------------------------------------------------------- - -printf "Cleaning the previous build of ich9utils\n" -make clean -C util/ich9utils -rm -Rf descriptors/ -printf "\n\n" diff --git a/resources/scripts/build/clean/memtest86plus b/resources/scripts/build/clean/memtest86plus deleted file mode 100755 index 807b20a7..00000000 --- a/resources/scripts/build/clean/memtest86plus +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env sh - -# helper script: clean the dependencies that were built in memtest86+ -# -# Copyright (C) 2014, 2015 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 -# of git or release archive - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -printf "Cleaning the previous build of MemTest86+\n" - -[ ! -d "memtest86plus" ] && exit 0 - -# clean MemTest86+ -make -C memtest86plus clean - -printf "\n\n" diff --git a/resources/scripts/build/clean/rom_images b/resources/scripts/build/clean/rom_images deleted file mode 100755 index cd41d499..00000000 --- a/resources/scripts/build/clean/rom_images +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env sh - -# helper script: delete the ROM images -# -# Copyright (C) 2014, 2015 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 -# of git or release archive - -[ "x${DEBUG+set}" = 'xset' ] && set -v -set -u -e - -# Delete the ROM images -rm -Rf "bin/" - -printf "Deleted the bin/ directory containing the ROM images.\n\n" diff --git a/resources/scripts/build/clean/uefitool b/resources/scripts/build/clean/uefitool deleted file mode 100755 index ad8aa56e..00000000 --- a/resources/scripts/build/clean/uefitool +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env sh - -# helper script: run make clean on bios_extract -# -# Copyright (C) 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 - -printf "Cleaning the previous build of uefitool (UEFIExtract)\n" - -[ ! -d "uefitool" ] && exit 0 - -make clean -BC uefitool || exit 1 diff --git a/resources/scripts/build/descriptors/ich9m b/resources/scripts/build/descriptors/ich9m index d7db1b07..1623b94b 100755 --- a/resources/scripts/build/descriptors/ich9m +++ b/resources/scripts/build/descriptors/ich9m @@ -23,7 +23,7 @@ ich9gen="util/ich9utils/ich9gen" main() { - [ -f "${ich9gen}" ] || ./build src for ich9utils || err "ich9utils make" + [ -f "${ich9gen}" ] || ./build src for -b ich9utils || err "ich9utils make" [ ! -f "${ich9gen}" ] && \ err "ich9gen doesn't exist" diff --git a/resources/scripts/build/release/src b/resources/scripts/build/release/src index a518b83f..9e5e51d7 100755 --- a/resources/scripts/build/release/src +++ b/resources/scripts/build/release/src @@ -138,6 +138,9 @@ purge_files() ( cd "${srcdir}/" || err "cd3" ./build clean all || err "build-clean1" + for p in bios_extract flashrom grub ich9utils memtest86plus uefitool; do + ./build src for -c "${p}" + done make clean -BC util/nvmutil || err "make-clean2" make clean -BC util/ich9utils || err "make-clean3" make clean -BC util/spkmodem_recv || err "make-clean4" diff --git a/resources/scripts/build/src/for b/resources/scripts/build/src/for index b3e9ff8e..1b7c7483 100755 --- a/resources/scripts/build/src/for +++ b/resources/scripts/build/src/for @@ -21,14 +21,27 @@ [ "x${DEBUG+set}" = 'xset' ] && set -v set -u -e +mode="" project="" main() { - [ $# -lt 1 ] && err "project name not specified" - project="${1}" - shift 1 + while getopts b:c: option + do + case "${1}" in + -b) + shift ;; + -c) + mode="distclean" + shift ;; + *) + err "Invalid option" ;; + esac + project="${OPTARG}" + shift + done + [ -z "${project}" ] && err "project name not specified" [ "${project}" = "ich9utils" ] && project="util/ich9utils" [ -d "${project}" ] || ./fetch "${project}" \ @@ -41,7 +54,11 @@ main() cmake UEFIExtract/ || err "cannot cmake UEFIExtract" ) fi - make -C "${project}" || err "Cannot build project, ${project}" + [ ! -z "${mode}" ] || \ + make -C "${project}" || err "'make' failed (${project})" + [ -z "${mode}" ] || \ + make -C "${project}" distclean || make -C "${project}" clean \ + || err "cannot clean project src, ${project}" } err() -- cgit v1.2.1