move build/command/options to include/option.sh

Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
Leah Rowe 2023-09-27 21:46:20 +01:00
parent a00b43375a
commit 74c48a881d
6 changed files with 20 additions and 27 deletions

View file

@ -1,30 +1,18 @@
#!/usr/bin/env sh
# SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org>
. "include/err.sh"
items=1
main()
{
[ $# -gt 0 ] || \
err "No argument given"
listitems "${1}" || err "No items present under: ${1}"
}
listitems()
{
[ -d "${1}" ] || \
err "Directory not does exist: ${1}"
rval=1
[ ! -d "${1}" ] && \
printf "listitems: directory '%s' doesn't exist" "${1}" && \
return 1
for x in "${1}/"*; do
# -e used because this is for files *or* directories
[ -e "${x}" ] || continue
[ "${x##*/}" = "build.list" ] && continue
printf "%s\n" "${x##*/}" 2>/dev/null
items=0
rval=0
done
return ${items}
return ${rval}
}
main $@

7
lbmk
View file

@ -10,6 +10,7 @@ set -u -e
. "include/err.sh"
. "include/export.sh"
. "include/option.sh"
read projectname < projectname
linkpath="${0}"
@ -45,7 +46,7 @@ initialise_command()
fail "running this command as root is not permitted"
[ "${mode}" = "help" ] && usage ${0} && lbmk_exit 0
[ "${mode}" = "list" ] && ./build command options "${buildpath}" && \
[ "${mode}" = "list" ] && listitems "${buildpath}" && \
lbmk_exit 0
[ $# -lt 2 ] && usage ${0} && lbmk_exit 1
@ -78,7 +79,7 @@ install_packages()
execute_command()
{
if [ "${option}" = "list" ]; then
./build command options "${buildpath}/${mode}" || \
listitems "${buildpath}/${mode}" || \
fail "execute_command: cannot list command options"
lbmk_exit 0
fi
@ -95,7 +96,7 @@ usage()
USAGE: ${progname} <MODE> <OPTION>
possible values for 'mode':
$(./build command options "${buildpath}")
$(listitems "${buildpath}")
For each of the above modes, you may also do:
${progname} <MODE> list

View file

@ -9,6 +9,7 @@
set -u -e
. "include/err.sh"
. "include/option.sh"
read projectname < projectname
opts=""
@ -23,7 +24,7 @@ main()
firstoption="${1}"
[ "${firstoption}" = "help" ] && usage && exit 0
[ "${firstoption}" = "list" ] && \
./build command options config/coreboot && exit 0
listitems config/coreboot && exit 0
while [ $# -gt 0 ]; do
case ${1} in
@ -46,7 +47,7 @@ main()
printf "Building %s ROM images\n" "${projectname}"
if [ "${firstoption}" = "all" ]; then
for target in $(./build command options config/coreboot); do
for target in $(listitems config/coreboot); do
buildrom "${target}" || err "build/roms (1): error"
[ -d "bin/${target}" ] && targets="${target} ${targets}"
done
@ -81,7 +82,7 @@ usage()
./build boot roms x60 -p grub -d corebootfb -k usqwerty
possible values for 'target':
$(./build command options "config/coreboot")
$(listitems "config/coreboot")
Refer to the ${projectname} documentation for more information.
EOF

View file

@ -8,6 +8,7 @@
set -u -e
. "include/err.sh"
. "include/option.sh"
read projectname < projectname
read our_version < version
@ -66,7 +67,7 @@ handle_dependencies()
[ -f "${listfile}" ] || fail "list file, ${listfile}, does not exist"
# Build for all targets if no argument is given
targets=$(./build command options "${cfgsdir}") || \
targets=$(listitems "${cfgsdir}") || \
fail "Cannot get options for ${cfgsdir}"
[ $# -gt 0 ] && targets=$@

View file

@ -7,6 +7,7 @@
. "include/err.sh"
. "include/defconfig.sh"
. "include/blobutil.sh"
. "include/option.sh"
release_archive="n"
@ -16,7 +17,7 @@ main()
[ $# -lt 1 ] && err "No options specified."
[ "${1}" = "listboards" ] && \
./build command options config/coreboot && exit 0
listitems config/coreboot && exit 0
archive="${1}"

View file

@ -9,6 +9,7 @@ set -u -e
. "include/err.sh"
. "include/git.sh"
. "include/option.sh"
_target=""
tree=""
@ -29,7 +30,7 @@ main()
[ -d "${cfgsdir}" ] || err "unsupported project name"
shift 1
targets=$(./build command options "${cfgsdir}")
targets=$(listitems "${cfgsdir}")
[ $# -gt 0 ] && targets=$@
[ -z "${targets}" ] && \
err "No targets available for project: ${project}"