Age | Commit message (Collapse) | Author |
|
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Imported from util/spkmodem_recv at coreboot
revision:
e70bc423f9a2e1d13827f2703efe1f9c72549f20
This is a client for spkmodem, to allow serial
console via PC speaker.
I've decided to import it in lbmk, because I
heavily modified it. The patches will be
applied next.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
i'm pretty much finished now
there might be a few more changes later,
like stricter error handling, more verbose
error messages, etc
right now, it relies on -e to kill lbmk
on error, and uses the exit command
another planned change it to support
other upstreams besides coreboot.org,
such as the dasharo codebase
the latter is *why* i refactored this
download script, for asus kgped-d16
|
|
the build_error file is obsolete
|
|
|
|
to my knowledge, this feature has never been used,
but lbmk permits resources/coreboot/boardname/extra.sh
to execute, as provided by the maintainer, with working
directory set to: coreboot/boardname
this could be used to extend lbmk in a number of ways
for example, it could be used to patch 3rdparty/
it could also be used to break coreboot in creative
and novel ways. hint hint.
|
|
the "board" variable in prepare_new_coreboot_tree()
is also declared in fetch_coreboot_trees
for the one in prepare_new_coreboot_tree, it's passed
as an argument to the function, so give it a new name
i learned that some shells have a global scope, when
using variables of the same name between functions
|
|
this should download all trees:
./download coreboot
without this patch, it doesn't
with this patch, it works
i overlooked this during earlier
refactoring. auditing revealed it.
|
|
top-down order, and *still* rfc 3676 compliant
i finished simplifying the logic, and
i split everything into smaller functions
there is still more more polishing to do
final touches will be done in new revisions
|
|
coreboot trees/patching is still handled
specifically by "./download coreboot"
command now available in lbmk:
./gitclone coreboot
this *only* creates the directory at:
coreboot/coreboot
this directory is never used in builds.
it is only used by download/coreboot to
create patched trees for each mainboard
|
|
|
|
|
|
|
|
|
|
i'm going to move the config recursion check
into a separate function, and global variables
make it easier to handle
|
|
|
|
|
|
this fixes a regression caused in previous (recent)
revisions. this script is a beast, and requires a
lot of taming, which is the purpose of my audit
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
main first
usage last
|
|
|
|
|
|
yes, i know 3676 supersedes 2646
i still say 2646
saying 2646 is still technically valid,
for my purposes
|
|
|
|
top-down logic, main() on top
moved some hardcoded strings to variables
|
|
|
|
consistent indentation, and 80-line character limit
(RFC 2646)
top-down order, a main() is introduced, split into
more functions
non-zero-status exit (with message) now, when a non-
defined target is provided, e.g. nonexistentboard_4mb
puffy!
|
|
the cbfstool command within subshell now also
exits with non-zero status, if it fails (most
likely because extraction failed, for some reason,
of the coreboot rom image for running through it)
|
|
the previous code merely exited from the subshell,
but the intended behaviour is for the entire script
to halt execution, and exit with non-zero status.
this patch fixes that bug.
|
|
top-down order for all logic, and shorter code lines,
conforming to rfc 2646 (no more than 80 characters)
the 80-character rule is violated for variables containing
long strings, such as wayback machine urls (can't be helped)
a few bugs were discovered, which will be fixed in follow-up
revisions, such as:
* exit status not handled inside subshell
* in general, exit status should be handled
more explicitly, rather than relying on -e
|
|
where the asterisk is used, it can sometimes
literally try to patch with a file named "*",
which of course does not exist
this change fixes an lbmk error when running:
./download seabios
this was caused recently, because all patches
were seabios were removed (lbmk currently uses
stock seabios, without patching it)
|
|
for our purposes, grub and gnulib are one in the same
if one fails, both have failed
exit with non-zero status if gnulib fails
the script sets -e so it will fail if grub fails to
download, which is tried before gnulib, and if that
happens, the grub directory is not created
|
|
|
|
also moved hardcoded strings into variables
|
|
|
|
|
|
removed hardcoded strings, put them in variables
use easier to read lowercase for function names
|
|
|
|
|
|
|
|
|
|
|
|
|