summaryrefslogtreecommitdiff
path: root/script
AgeCommit message (Collapse)Author
2023-10-07build/fw/coreboot: reset grub background each timeLeah Rowe
the script used to be called once per target, now it handles every target. the grub background image wasn't being set, so if it changed at build time, it would stay changed. keep the default in place for each run, while still allowing target.cfg files to change it per target. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07update/release/roms: copy license files to archiveLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07update/project/*: merge to update/project/treesLeah Rowe
Just one script. Just one! Well, two, but the 2nd one already existed: logic in update/project/trees and update/project/repo was merged into include/git.sh and update/project/build was renamed to update/project/trees; an -f option was added, which calls the functions under git.sh so git clones are now handled by the main build script (for handling makefiles and defconfigs) but the logic there is a stub, where git.sh does all the actual heavy lifting this cuts the file count down by two, and reduces sloccount a reasonable amount because much of the logic already exists in the build script, when it comes to handling targets. git.sh was adjusted to integrate with this, rather than act standalone Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07update/project/trees: handle seen in fetch_configLeah Rowe
I'm planning to re-use this function later, in other files, to unify handling of target.cfg files. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07build/fw/grub: re-add end confirmation messageLeah Rowe
otherwise, if src/grub/ was already compiled, this would not print anything on the screen. however, the files will have been created under elf/grub this message just makes lbmk a bit more user friendly Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07build/coreboot/grub: move to build/fw/grubLeah Rowe
This eliminates an additional subdirectory. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07use quotes when checking empty strings in scriptsLeah Rowe
this is far less error-prone Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07build/fw/coreboot: fix error "unexpected operator"Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07update/project/build: move helpers to option.shLeah Rowe
certain functions are better placed there, rather than in the main script Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07build/coreboot/util: merge to update/project/buildLeah Rowe
The benefit now is that it can be cleaned. E.g. ./update project build -b coreboot utils ./update project build -b coreboot utils default ./update project build -c coreboot utils ./update project build -c coreboot utils default the update/project/build script checks when arguments are provided after the project name. if the first one is "utils", then it acts in the same way as the old build/coreboot/util script Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07build/fw/coreboot: don't support no-all all argLeah Rowe
it's buggy. "./build fw coreboot" was made to work, but it caused lots of unknown issues when mixing other args the old way wasn't broken. now, once again, you must pass the "all" argument. e.g.: ./build fw coreboot all Also, the confirmation messages at the end are a bit clearer, when listing which ROM images were compiled. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07build/fw/coreboot: correctly check built targetsLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07unified projectname/version/versiondate handlingLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07rename blob/ to vendor/Leah Rowe
in the future, we may start downloading files that aren't blobs, such as mxm port configs (on mainboards that use MXM graphics) this directory will contain all of those files generally change the language used, across lbmk, to make use of "vendorfile" instead of "blob" Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07update/blobs: correct utils paths checkLeah Rowe
some utils were being needlessly re-downloaded. fix that! Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07update/blobs: don't hardcode kbc1126 util checkLeah Rowe
use the variable that is set up in blobutil.sh Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07update/blobs: don't needlessly re-build uefitoolLeah Rowe
during the switch to src/ for all downloads, i overlooked that the path check was hardcoded. now the check for this binary is corrected. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-07put all src downloads under src/Leah Rowe
build/release/src was partly re-written to accomodate this memtest86plus was patched to have a central Makefile, and lbmk modified to use that, rather than mess with build32 and build64. the central Makefile just builds both targets or cleans both targets Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06rename build/firmware/ to build/fw/Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06build/firmware/coreboot: confirm compiled romsLeah Rowe
return with error status if no images were compiled if a rom image fails to compile, then it will also exit with error status, but sometimes you can pass argument "cros" or "default", and it would not give you rom images due to no target.cfg files, but these are also ignored because of that. this restores the same behaviour that existed before, for this final error check. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06build/firmware/coreboot: support "all" without allLeah Rowe
with no argument specified, it is now possible to build every rom image. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06move build/release/* to update/releaseLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06mv build/fw/serprog,build/boot/roms build/firmwareLeah Rowe
./build boot roms is now: ./build firmware coreboot ./build fw serprog is now: ./build firmware serprog Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06rename build/project/trees to update/project/buildLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06unify build/grub/* to build/coreboot/grubLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-06unify handle/make/* into build/project/treesLeah Rowe
Just one script. Just one. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-05handle/make/*: unified main() functionLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-05general code cleanup in shell scriptsLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-05build/boot/*: merge all logic into one scriptLeah Rowe
for the first time ever, this is a single script. with recent simplifications in how variables are handled, and techniques i've developed during auditing, it's now feasible design-wise for this to be a single script, without a helper script. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-04include/err.sh: checkgit,checkversionLeah Rowe
call these as functions, instead of executing scripts Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-03update/project/trees: remove errant assignmentsLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-03update/project/trees: split up main()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-03general code cleanup in shell scriptsLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-03handle/make/config: fix formatting on variablesLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02handle/make/file: check for all default makefilesLeah Rowe
Previously, this script only checked for "Makefile", but "makefile" is another valid name; additionally, if GNU Make is used, "GNUmakefile" is an accepted default. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/blobs/download: remove errant commentLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02handle/make/file: exit 0 if no makefileLeah Rowe
There is no reason to err if no Makefile exists. Just exit with zero status. This makes the following command work: ./handle make file -c util/* Within util/, there is me7 update parser which does not have a makefile (it's a python script). Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02handle/make/file: run extra arg before, not afterLeah Rowe
The previous patch to the file was correct, except for off by one at the end, resulting in no argument being passed for project names. Now the extra commands are run *before* handle_dependencies, instead of running at the end of main. This prevents error. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02handle/make/file: do multiple project argumentsLeah Rowe
At the end of the function, this script will now run itself again if there are more arguments. This enables the following: ./handle make file -c project1 project2 project3 Whereas previously, it could only do this: ./handle make file -c project1 Substitude -b and it's the same. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: fix error handling on mkdirLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: optimise error handlingLeah Rowe
some x_ calls are made that aren't needed. this is now corrected. additionally, some x_ calls were being made that are quite error-prone, like ones that use $PWD. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: simplified error handlingLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: general code cleanupLeah Rowe
reduced sloccount, without reducing functionality Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: rm yet another rm lineLeah Rowe
good lord, redundancy is indeed redundant. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: remove one more rm lineLeah Rowe
the one at the end of main is unnecessary, because it's handled inside the for loop. this file isn't used anywhere else, so it's OK. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: remove redundant rm commandLeah Rowe
as it turns out, i delete "seen" inside the for loop, which is a more thorough way to do it. thus, the first rm command is unnecessary. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: remove unnecessary linebreakLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02update/project/trees: rm "seen" in the right placeLeah Rowe
it must be done *after* setting cfgsdir Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02build/grub/payload: remove unnecessary linebreaksLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-02build/coreboot/utils: remove unnecessary checkLeah Rowe
the file check is sufficient (target.cfg) Signed-off-by: Leah Rowe <leah@libreboot.org>