summaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2023-05-27 10:52:37 +0100
committerLeah Rowe <leah@libreboot.org>2023-05-27 10:54:50 +0100
commit092600d163e771d31da07d88a03fe669aa4708f1 (patch)
tree6c74e4fbec6892701bb55f89560b36dbd125580d /build
parent6344b196007a2bf955766f47da5f1fd36fbc19db (diff)
unify these scripts: build, modify and update
unify them, by turning them into symlinks pointing to a generic script named lbmk the script named lbmk is a fork of the script named "build", which just checks argument 0 and adapts accordingly all of these core scripts had the exact same overall logic, and they are thus compatible Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'build')
l---------[-rwxr-xr-x]build119
1 files changed, 1 insertions, 118 deletions
diff --git a/build b/build
index 8c65cb3a..012b4ec0 100755..120000
--- a/build
+++ b/build
@@ -1,118 +1 @@
-#!/usr/bin/env bash
-
-# generic build script, for building components (all of them)
-#
-# Copyright (C) 2014,2015,2020,2021,2023 Leah Rowe <info@minifree.org>
-# Copyright (C) 2015 Patrick "P. J." McDermott <pj@pehjota.net>
-# Copyright (C) 2015, 2016 Klemens Nanni <contact@autoboot.org>
-# Copyright (C) 2022, Caleb La Grange <thonkpeasant@protonmail.com>
-#
-# 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 <http://www.gnu.org/licenses/>.
-#
-
-[ "x${DEBUG+set}" = 'xset' ] && set -v
-set -u -e
-
-projectname="$(cat projectname)"
-build=./resources/scripts/build
-mode=""
-option=""
-
-main()
-{
- if [ $# -lt 1 ]; then
- die "Wrong argument count. Run: ./build help"
- fi
- mode="${1}"
-
- ./.gitcheck
-
- if [ "${mode}" != "dependencies" ]; then
- ./resources/scripts/misc/versioncheck
- fi
- if [ "${mode}" = help ]; then
- usage
- exit 0
- elif [ $# -lt 2 ]; then
- usage
- exit 0
- fi
-
- option="${2}"
- shift 2
-
- case "${option}" in
- list)
- printf "Options for mode '%s':\n\n" ${mode}
- listoptions "${mode}"
- ;;
- all)
- for option in $(listoptions "${mode}"); do
- "${build}/${mode}/${option}" $@
- done
- ;;
- *)
- if [ ! -d "${build}/${mode}" ]; then
- usage
- die "Invalid mode '${mode}'. Run: ./build help"
- elif [ ! -f "${build}/${mode}/${option}" ]; then
- usage
- printf "Invalid option for '%s'." ${mode}
- die "Run: ./build ${mode} list'."
- fi
- "${build}/${mode}/${option}" $@
- esac
-
- ./.gitcheck clean
-}
-
-# Takes exactly one mode as parameter
-listoptions()
-{
- for option in "${build}/${1}/"*; do
- printf '%s\n' ${option##*/}
- done
-}
-
-usage()
-{
- cat <<- EOF
- USAGE: ./build <MODE> <OPTION>
-
- possible values for 'mode':
- $(listmodes)
-
- Example: ./build module all
- Example: ./build module flashrom [static]
- Example: ./build roms withgrub
- Example: ./build clean all
-
- Refer to ${projectname} documentation for more info.
- EOF
-}
-
-listmodes()
-{
- for mode in "${build}"/*; do
- printf '%s\n' ${mode##*/}
- done
-}
-
-die()
-{
- printf 'Error: %s\n' ${@} 1>&2
- exit 1
-}
-
-main $@
+lbmk \ No newline at end of file