mirror of
https://codeberg.org/libreboot/lbmk.git
synced 2026-07-11 14:02:52 +02:00
lbmk: use 2-level directory structure in script/
as opposed to the current 3-level structure. recent build system simplifications have enabled this change, thus: ./build fw coreboot -> ./build roms ./build fw grub -> ./build grub ./build fw serprog -> ./build serprog ./update project release -> ./update release ./update project trees -> ./update trees ./update vendor download -> ./vendor download ./update vendor inject -> ./vendor inject alper criticised that the commands were too long, so i made them shorter! Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
@@ -23,7 +23,7 @@ main()
|
||||
|
||||
handle_dependencies()
|
||||
{
|
||||
[ -d "src/grub" ] || x_ ./update project trees -f grub
|
||||
[ -d "src/grub" ] || x_ ./update trees -f grub
|
||||
[ -f "src/grub/grub-mkstandalone" ] || build_grub_utils
|
||||
x_ mkdir -p "${elfdir}"
|
||||
x_ rm -f "${elfdir}/"*
|
||||
@@ -128,13 +128,13 @@ prepare_target()
|
||||
cbrom="${cbdir}/build/coreboot.rom"
|
||||
|
||||
[ -f "${cbfstool}" ] || \
|
||||
x_ ./update project trees -b coreboot utils ${tree}
|
||||
x_ ./update trees -b coreboot utils ${tree}
|
||||
|
||||
build_dependency_seabios
|
||||
|
||||
memtest_bin="memtest86plus/build64/memtest.bin"
|
||||
[ "${payload_memtest}" != "y" ] || [ -f "src/${memtest_bin}" ] || \
|
||||
x_ ./update project trees -b memtest86plus
|
||||
x_ ./update trees -b memtest86plus
|
||||
|
||||
x_ rm -f "${romdir}/"*
|
||||
|
||||
@@ -151,7 +151,7 @@ build_dependency_seabios()
|
||||
[ -f elf/seabios/default/vgarom/bios.bin.elf ] && \
|
||||
[ -f elf/seabios/default/normal/bios.bin.elf ] && return 0
|
||||
|
||||
x_ ./update project trees -b seabios
|
||||
x_ ./update trees -b seabios
|
||||
}
|
||||
|
||||
build_dependency_grub()
|
||||
@@ -171,14 +171,14 @@ build_dependency_grub()
|
||||
rebuild_grub="y" && break
|
||||
done
|
||||
[ "${rebuild_grub}" = "y" ] || return 0
|
||||
x_ ./build fw grub
|
||||
x_ ./build grub
|
||||
}
|
||||
|
||||
build_dependency_uboot()
|
||||
{
|
||||
[ "${payload_uboot}" = "y" ] || return 0
|
||||
|
||||
x_ ./update project trees -b u-boot ${board}
|
||||
x_ ./update trees -b u-boot ${board}
|
||||
ubdir="elf/u-boot/${board}/${uboot_config}"
|
||||
ubootelf="${ubdir}/u-boot.elf"
|
||||
[ ! -f "${ubootelf}" ] && [ -f "${ubdir}/u-boot" ] && \
|
||||
@@ -215,7 +215,7 @@ build_roms()
|
||||
"${cbcfg}" "${board}" "${displaymode}" "${initmode}" \
|
||||
1>&2 && return 0
|
||||
|
||||
x_ ./update project trees -b coreboot ${board}
|
||||
x_ ./update trees -b coreboot ${board}
|
||||
|
||||
_cbrom="elf/coreboot_nopayload_DO_NOT_FLASH/${board}/${initmode}_${displaymode}"
|
||||
[ "${initmode}" = "normal" ] && \
|
||||
@@ -391,9 +391,9 @@ moverom() {
|
||||
usage()
|
||||
{
|
||||
cat <<- EOF
|
||||
USAGE: ./build fw coreboot targetname
|
||||
To build *all* boards, do this: ./build fw coreboot all
|
||||
To list *all* boards, do this: ./build fw coreboot list
|
||||
USAGE: ./build roms targetname
|
||||
To build *all* boards, do this: ./build roms all
|
||||
To list *all* boards, do this: ./build roms list
|
||||
|
||||
Optional Flags:
|
||||
-d: displaymode
|
||||
@@ -402,9 +402,9 @@ usage()
|
||||
|
||||
Example commands:
|
||||
|
||||
./build fw coreboot x60
|
||||
./build fw coreboot x200_8mb x60
|
||||
./build fw coreboot x60 -p grub -d corebootfb -k usqwerty
|
||||
./build roms x60
|
||||
./build roms x200_8mb x60
|
||||
./build roms x60 -p grub -d corebootfb -k usqwerty
|
||||
|
||||
possible values for 'target':
|
||||
$(items "config/coreboot")
|
||||
@@ -22,12 +22,12 @@ main()
|
||||
platform="rp2040"
|
||||
boards_dir=${pico_sdk_dir}/src/boards/include/boards
|
||||
[ -d "${pico_src_dir}/" ] || \
|
||||
x_ ./update project trees -f "rpi-pico-serprog"
|
||||
x_ ./update trees -f "rpi-pico-serprog"
|
||||
elif [ "${1}" = "stm32" ]; then
|
||||
platform="stm32"
|
||||
boards_dir=${stm32_src_dir}/boards
|
||||
[ -d "${stm32_src_dir}/" ] || \
|
||||
x_ ./update project trees -f "stm32-vserprog"
|
||||
x_ ./update trees -f "stm32-vserprog"
|
||||
else
|
||||
err "${usage}"
|
||||
fi
|
||||
@@ -87,7 +87,7 @@ build_release()
|
||||
fetch_trees()
|
||||
{
|
||||
for x in ${_f}; do
|
||||
./update project trees -f "${x}" || err "${_xm}: fetch ${x}"
|
||||
./update trees -f "${x}" || err "${_xm}: fetch ${x}"
|
||||
done
|
||||
for x in config/*/build.list; do
|
||||
[ -f "${x}" ] || continue
|
||||
@@ -101,9 +101,9 @@ fetch_trees()
|
||||
|
||||
mkrom_images()
|
||||
{
|
||||
./build fw coreboot all || err "${_xm}: roms-all"
|
||||
./build fw serprog rp2040 || err "${_xm}: rp2040"
|
||||
./build fw serprog stm32 || err "${_xm}: stm32"
|
||||
./build roms all || err "${_xm}: roms-all"
|
||||
./build serprog rp2040 || err "${_xm}: rp2040"
|
||||
./build serprog stm32 || err "${_xm}: stm32"
|
||||
|
||||
for rombuild in bin/*; do
|
||||
[ -d "${rombuild}" ] || continue
|
||||
@@ -161,7 +161,7 @@ nukerom()
|
||||
fi
|
||||
|
||||
# Hash the images before removing vendor files
|
||||
# which ./update vendor inject uses for verification
|
||||
# which "./vendor inject" uses for verification
|
||||
x_ rm -f "${romdir}/vendorhashes"
|
||||
x_ touch "${romdir}/vendorhashes"
|
||||
(
|
||||
@@ -171,7 +171,7 @@ nukerom()
|
||||
|
||||
for romfile in "${romdir}"/*.rom; do
|
||||
[ -f "${romfile}" ] || continue
|
||||
x_ ./update vendor inject -r "${romfile}" -b ${target} -n nuke
|
||||
x_ ./vendor inject -r "${romfile}" -b ${target} -n nuke
|
||||
done
|
||||
}
|
||||
|
||||
@@ -49,7 +49,7 @@ main()
|
||||
|
||||
build_projects()
|
||||
{
|
||||
[ $# -gt 0 ] && x_ ./update project trees ${_f} ${@}
|
||||
[ $# -gt 0 ] && x_ ./update trees ${_f} ${@}
|
||||
|
||||
if [ "${mode}" = "fetch" ]; then
|
||||
fetch_project_repo
|
||||
@@ -57,7 +57,7 @@ build_projects()
|
||||
fi
|
||||
|
||||
codedir="src/${project}"
|
||||
[ -d "${codedir}" ] || x_ ./update project trees -f "${project}"
|
||||
[ -d "${codedir}" ] || x_ ./update trees -f "${project}"
|
||||
|
||||
if [ "${project}" = "uefitool" ]; then
|
||||
(
|
||||
@@ -103,7 +103,7 @@ handle_targets()
|
||||
printf "Running 'make %s' for project '%s, target '%s''\n" \
|
||||
"${mode}" "${project}" "${target}"
|
||||
[ "${project}" != "coreboot" ] || [ ! -z ${mode} ] || \
|
||||
x_ ./update vendor download ${target}
|
||||
x_ ./vendor download ${target}
|
||||
x_ handle_defconfig
|
||||
done
|
||||
|
||||
@@ -165,7 +165,7 @@ handle_src_tree()
|
||||
"${codedir}" 1>&2
|
||||
return 1
|
||||
fi
|
||||
x_ ./update project trees -f "${project}" "${target}"
|
||||
x_ ./update trees -f "${project}" "${target}"
|
||||
elif [ "${mode}" = "distclean" ] || \
|
||||
[ "${mode}" = "crossgcc-clean" ]; then
|
||||
[ -f "${tmpclean}/${tree}" ] && return 1
|
||||
@@ -180,7 +180,7 @@ handle_src_tree()
|
||||
err "handle_src_tree ${project}/${target}: crossgcc"
|
||||
cbfstool="cbutils/${tree}/cbfstool"
|
||||
[ -f "${cbfstool}" ] && return 0
|
||||
x_ ./update project trees -b coreboot utils "${tree}"
|
||||
x_ ./update trees -b coreboot utils "${tree}"
|
||||
}
|
||||
|
||||
# set up cross-compiler (coreboot crossgcc) for u-boot and coreboot
|
||||
@@ -199,7 +199,7 @@ check_cross_compiler()
|
||||
# only true if not building coreboot:
|
||||
ctarget="${cbdir#src/coreboot/}"
|
||||
[ -d "${cbdir}" ] || \
|
||||
x_ ./update project trees -f coreboot ${ctarget}
|
||||
x_ ./update trees -f coreboot ${ctarget}
|
||||
|
||||
if [ "${arch}" = "x86_32" ] || [ "${arch}" = "x86_64" ]; then
|
||||
[ -d "${cbdir}/util/crossgcc/xgcc/i386-elf/" ] || \
|
||||
+4
-4
@@ -54,17 +54,17 @@ detect_firmware()
|
||||
build_dependencies()
|
||||
{
|
||||
[ -d ${cbdir} ] || \
|
||||
x_ ./update project trees -f coreboot ${cbdir##*/}
|
||||
x_ ./update trees -f coreboot ${cbdir##*/}
|
||||
for d in uefitool biosutilities bios_extract; do
|
||||
[ -d "src/${d}" ] && continue
|
||||
x_ ./update project trees -f "${d}"
|
||||
x_ ./update trees -f "${d}"
|
||||
done
|
||||
[ -f "${uefiextract}" ] || \
|
||||
x_ ./update project trees -b uefitool
|
||||
x_ ./update trees -b uefitool
|
||||
[ -f "${kbc1126_ec_dump}" ] || \
|
||||
x_ make -C "${cbdir}/util/kbc1126"
|
||||
[ -f "${cbfstool}" ] && [ -f "${ifdtool}" ] && return 0
|
||||
x_ ./update project trees -b coreboot utils default
|
||||
x_ ./update trees -b coreboot utils default
|
||||
}
|
||||
|
||||
download_vendorfiles()
|
||||
+6
-6
@@ -87,13 +87,13 @@ detect_board()
|
||||
|
||||
build_dependencies()
|
||||
{
|
||||
[ -d "${cbdir}" ] || x_ ./update project trees -f coreboot default
|
||||
[ -d "${cbdir}" ] || x_ ./update trees -f coreboot default
|
||||
if [ ! -f "${cbfstool}" ] || [ ! -f "${ifdtool}" ]; then
|
||||
x_ ./update project trees -b coreboot utils default
|
||||
x_ ./update trees -b coreboot utils default
|
||||
fi
|
||||
[ -z "${new_mac}" ] || [ -f "${nvmutil}" ] || x_ make -C util/nvmutil
|
||||
[ "${nukemode}" = "nuke" ] && return 0
|
||||
x_ ./update vendor download ${board}
|
||||
x_ ./vendor download ${board}
|
||||
}
|
||||
|
||||
inject_vendorfiles()
|
||||
@@ -235,13 +235,13 @@ inject()
|
||||
usage()
|
||||
{
|
||||
cat <<- EOF
|
||||
USAGE: ./update vendor inject -r [rom path] -b [boardname] -m [macaddress]
|
||||
Example: ./update vendor inject -r x230_12mb.rom -b x230_12mb
|
||||
USAGE: ./vendor inject -r [rom path] -b [boardname] -m [macaddress]
|
||||
Example: ./vendor inject -r x230_12mb.rom -b x230_12mb
|
||||
|
||||
Adding a macadress to the gbe is optional.
|
||||
If the [-m] parameter is left blank, the gbe will not be touched.
|
||||
|
||||
Type './update vendor inject listboards' to get a list of valid boards
|
||||
Type './vendor inject listboards' to get a list of valid boards
|
||||
EOF
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user