* 64b76b4e3a Canoeboot 25.06 release 
* 126dff455b tree.sh: add sha512 error for check_project_hashes 
* 08a9837216 tree.sh: add error check in check_project_hashes() 
* e1664be01e tree.sh: more reliable clean in run_make_command 
* 1843f71577 inject.sh: add missing semicolons 
* 3567d95860 put coreboot utils in elf/coreboot/TREE 
* 885016c0c2 release.sh: use printf to create version files 
* eeb9954179 lib.sh: simplify setvars() 
* bc0a2a9b75 lib.sh: simplify chkvars() 
* 3657ed8677 mk: simplify main() 
* ee92a228c3 get.sh: simplify fetch_project() 
* bbc35fe6e6 get.sh: simplify try_copy() 
* b9f78f2aff get.sh: tidy up bad_checksum() 
* ff77de4a9d get.sh: simplify fetch_targets() 
* 405215bc34 general cleanup in get.sh 
* 21352b990e xbmk: rename xbmklocal/xbmktmp variables 
* fcfc43aced get.sh: consolidate printf statements 
* 46c0eb5ff4 get.sh: remove redundant printf in fetch_project 
* 77b79d3581 get.sh: remove superfluous command in try_git() 
* 7b8185f460 init.sh: error out if .git/ is a symlink 
* 2b8ccfbe5b get.sh: Properly error out if tmpclone fails 
* ff06b30ca5 tree.sh: Don't auto-run make-oldconfig 
* 173f304fd7 rom.sh: simplify mkcoreboottar() 
* 0854e99cfe rom.sh: rename mkvendorfiles 
* 00ab60e762 rom.sh: simplify ccache handling for coreboot 
* 82bb342a63 rom.sh: simplify u-boot payload handling 
* 463cdd8128 coreboot: Remove unused vboot tests 
* a70d8afc30 get.sh: Always update git remotes 
* 77ad7a0ca3 get.sh: re-generate remotes every time 
* e209646018 release.sh: copy version files to rsrc 
* ada8a6dd7b xbmk: add fake config makefile args to flashprog 
* 069aa21567 rom.sh: skip copyps1bios on dry builds 
* bcdcfa045a tree.sh: Don't run make-clean on dry runs 
* 4c0ecf17e6 GRUB: Update to revision 73d1c959e (14 March 2025) 
* be598c497b get.sh: add missing check in fetch_project() 
* 378a73ce42 get.sh: stricter URL check in xbmkget() 
* b9886740ba get.sh: make xbmkget() easier to understand 
* c130682fdf get.sh: Make xbmkget err on exiting the loop check 
* 1342d74cc6 tree.sh: fix up copy_elf(), bad for loop 
* b4a547caac lib.sh: Use while, not for, to process arguments 
* 41ffbb640d xbmk: stricter handling of files on while loops 
* b516a29482 init.sh: looser XBMK_THREADS validation 
* fa59f9da76 init.sh: Hardcode XBMK_CACHE for integrity 
* d92dee6781 dependencies/debian: add libx86 
* 6577abc60a FSDG-compliant Sandy/Ivybridge/Haswell support 
* addbd95a24 init.sh: merge xbmk_lock() with xbmk_set_env() 
* 1c34d4567b init.sh: move xbmk_set_version 
* a4103517ea init.sh: set pyver from set_env 
* 6a3c771feb init.sh: merge xbmk_mkdirs with set_env 
* de62243cd2 init.sh: check version/versiondate once read 
* 6b8ee3d3b3 init.sh: error if version not read 
* 08610f4145 init.sh: only update version files on parent 
* 412b0a81d7 init.sh: simplify unknown version creation 
* 2a6a4d765d init.sh: only set xbmk version on parent instance 
* 416b1f66be init.sh: initialise variables AFTER path 
* 46f09075c2 init.sh: merge create_pathdirs with set_pyver 
* abf52b0394 init.sh: Set python version only on parent 
* 1e4e3f36f4 init.sh: remove useless command 
* ed83718cf2 init.sh: remove useless comment 
* 8617375799 init.sh: xbmk_create_tmpdir to xbmk_mkdirs 
* 83064459d9 init.sh: move gnupath creation to create_tmpdir 
* 0389d1eadb init.sh: move PATH init to set_env 
* 4aba9ef29e init.sh: check the lock file BEFORE git init 
* fa2c288939 init.sh: return from child in set_env instead 
* 9b1d4dfe82 inject.sh: shorten the nukemode variable name 
* e34651a98a release.sh: rename relsrc to rsrc 
* 1523a67729 release.sh: tidy up nuke() 
* c068efec88 get.sh: remove useless message 
* c660ecde62 get.sh: simplify bad_checksum() 
* 2d13b4c2e2 release.sh: simplify nuke() EVEN MORE, yet again 
* c20e29005f release.sh: use x_ on find command for nuke() 
* 97603a43cf release.sh: simplify nuke() EVEN MORE 
* 534a4d4870 get.sh: move nuke() to release.sh 
* 8b646abe9a release.sh: simplify prep_release_bin() 
* aeb1187a8a release.sh: don't move src/docs/ 
* 8cb0c224a5 get.sh: FURTHER simplify nuke() 
* 8cb23315d9 get.sh: simplify tmpclone() 
* 8d6244bb7f get.sh: fix bad mkdir command 
* 4582a21abf inject.sh: Stronger hash verification 
* fd98310f5b properly exit 1 when calling fx_ 
* e96dfae0b3 get.sh: simplify nuke() 
* 3bfb82cb82 get.sh: fix broken printf statement 
* 9c24b170c2 get.sh: use subshells on try_ functions 
* 4f926ee708 get.sh: simplify try_copy() 
* 36cf7892df get.sh submodules: Don't delete files recursively 
* 398f265359 get.sh: simplify fetch_submodules() config check 
* a3f48f3115 get.sh: simplify fetch_submodules() 
* 142b79b206 get.sh: fix caching of crossgcc tarballs 
* a658265a86 release.sh: Don't run prep_release with fx_ 
* aaa0a1ff93 git.sh: rename to get.sh 
* 2d691c7377 git.sh: Only create destination repo on success 
* 6199bc5b95 git.sh: cleanup 
* 1dd18a9a55 git.sh: Re-implement redundant git downloads 
* 176c0fa1c4 rom.sh: reduce indendation in check_coreboot_utils 
* 584de778f8 release.sh: simplify release() 
* ed8644177b release.sh: clean up the vdir after release 
* 2ca6337b0a release.sh: remove src_dirname variable 
* abfa2d1ec7 release.sh: build in tmp directory first 
* d3ec7e8635 release.sh: remove unnecessary mkdir command 
* b68447e75c release.sh: split up build_release() 
* 4b36ba9765 release.sh: delete tmp/cache from the tarball 
* 5861c25a7c lib.sh: remove rmgit() 
* 1f2c8e47d4 lib.sh: remove mk() 
* 19888e2cb8 lib.sh: move xbmkget() to git.sh 
* 9c5f59cc42 lib.sh: remove mksha512sum() 
* 279b7f20be lib.sh: split up try_file() 
* 3347e3d314 lib.sh: move _ua to try_file() 
* 57f68535a2 inject.sh: remove the hashfiles variable 
* d07bd53b07 inject.sh: define xchanged here instead 
* 47b9a261d7 lib.sh: use fx_ in rmgit() 
* ed9f6338af lib.sh: split up xbmkget() 
* 753af0a7a2 inject.sh: only compile nvmutil if needed 
* 387f4b785b inject.sh: simplified serprog check 
* 31bab5c10c remove another confusing message 
* 6c3ea129a4 inject.sh: Remove confusing path on tar creation 
* 3062f04c45 inject.sh: re-add mac address confirmation 
* cf8ca4cdd6 inject.sh: further cleanup 
* a82ca2da5f tree.sh: only create elfdir in copy_elf() 
* 33debfcf1c tree.sh: simplified srcdir check on make-clean 
* 2acdfefdf9 inject.sh: bring in sync with lbmk 0f931b508a8 
* a170ab4118 cbmk: use x_ instead of err, where appropriate 
* 5cdd377547 mk: use zero exit instead, to run trees 
* c022a14c9e remove useless comment 
* c9325f234e mk: remove unnecessary line break 
* e22593f037 mk: re-split tree logic to include/tree.sh 
* c463e8a52d mk: move release functions to idnclude/release.sh 
* 966a6377a0 mk: add missing error handli for mk -f 
* 718697c0e6 git.sh: re-write tmpclone without caching 
* a5c5089eda git.sh: use setvars for fail variables 
* 7b2671ea26 git.sh: hard fail if git am fails 
* 45b6d3b3ba git.sh: Hard fail if reset fails 
* e320ce60a7 init.sh: Only check XBMK_CACHE if it exists 
* d99bc55f4a also fix the other grub trees 
* c15ee8fc32 fix trying to boot all logical volumes after unlocking an encrypted volume 
* 63cef86bdb init.sh: remove useless export 
* 0a3793ad4e init.sh: also allow XBMK_RELEASE=Y or N 
* 433b5de916 init.sh: Resolve XBMK_CACHE via readlink 
* 5d2c94a8bd init.sh: check XBMK_CACHE is a directory instead 
* f0a0f678bf init.sh: export LOCALVERSION in set_env 
* 542d72192d init.sh: run set_version before set_env 
* 9ccfee43e7 init.sh: Use readlink in pybin() 
* 2f17c5be3b inject.sh: simplified MAC address handling 
* 3900122957 lib.sh: Remove useless command in err() 
* afcd0cfde6 lib.sh: Simplified fx_() and removed fe_() 
* 386f3c3346 mk: Create serprog tarballs here instead 
* 326f0459d9 build serprog using fe_ *defined inside mkhelper* 
* 418fcce9ba rom.sh: build serprog images with fe_ 
* add92cd405 lib.sh: support any command on find_exec() 
* bd5d85569f lib.sh: re-add missing break in fe/fx_ 
* eac3b96ddd git.sh: Simplify git am handling 
* 6e4172b1ba inject: remove unused function 
* 92374e6071 init.sh: New function dx_ to execute path files 
* 1bc8055e28 inject.sh: simplify kconfig scanning 
* ea8f9b59c6 lib.sh find_ex: Write sort errors to /dev/null 
* 0ba013a61d lib.sh x_(): Remove warning of empty args 
* e47324619d lbmk: Replace err with much simpler implementation 
* 2279a1f6f6 singletree/elfcheck: use fx_, not fe_ 
* 1e1e65cb43 rom.sh: Print the rom image path being generated 
* ffdf93bf90 rom.sh: Safer cprom() 
* 1c0c88c7cb rom.sh: specifically check keymaps in cprom() 
* 9342e5bb61 rom.sh: simplify mkseagrub() 
* 4a9376adc4 mk: simplify elfcheck() 
* e2f6e7a410 lib.sh: simplify singletree() 
* 9d91c3da60 git.sh: move singletree() to lib.sh 
* 877f00df1f mk: Fix bad error handling for gnu_setver 
* 0156cd91c8 lib.sh: set -u -e in err() 
* 7f150c3e4f GRUB: Mark E820 reserved on coreboot memory 
* 22d3266a53 lib.sh: Provide error message where none is given 
* 5b2d537123 init.sh: Silence the output of git config --global 
* edfa4a0ddd init.sh: Run git name/email check before init 
* 23755c1748 lib.sh: stricter xbmk_err check in err() 
* 5150bf64a4 lib.sh: simplify err-not-set handling 
* 90bd3e67c4 lib.sh: Add warning if x_ is called without args 
* 78aa78c82e lib.sh: simplify err() 
* 15afad4a2b init.sh: single-quote xbmklock in xbmk_lock() 
* 41bc473276 init.sh: define lock file in a variable instead 
* 4415865ccc init.sh: tidy up xbmk_child_exec() 
* ee686cc86b lib.sh err: add missing redirect to stderr 
* cd979e3b09 lbmk: MUCH safer err function 
* fda09e8923 lib.sh: rename errx to xmsg 
* 8eea01eceb lib.sh: Make x_ err if first arg is empty 
* af309d888b lib.sh: Make err_ always exit no matter what 
* 6e14ab7c09 init.sh: tidy up the python version check 
* 7944fd6297 init.sh: move non-init functions to lib.sh 
* 159ded1c4e init.sh: simplify dependencies handling 
* 7ab7bf19f2 rom.sh: tidy up copyps1bios() 
* a5519f13e1 mk: tidy up xgccargs handling 
* ed441a4ba0 mk: remove useless code 
* e05787d82f init.sh: tidy up pathdir creation 
* 2c3f9e4e7e mk: re-make gnupath/ after handling crossgcc 
* e6d3b5763d mk: tidy up check_cross_compiler 
* 45513d56be mk: re-make gnupath/ for each cross compiler 
* 7314903331 mk: reduce indentation in check_cross_compiler() 
* f6005f17b6 mk: Allow use of x_ on prefix functions 
* 4a32890198 mk: tidy up check_project_hashes() sha512sum check 
* 1d988606ca mk: simplify check_gnu_path() 
* f64b2affb1 inject.sh: minor code cleanup 
* bb5228dc32 init.sh: *Re-create* tmpdirs on parent instance 
* 0c05289152 init.sh: Always create xbmklocal 
* b2c14b6759 lbmk: Unified local ./tmp handling 
* 6a653729a3 lib.sh: redirect find errors to /dev/null 
* 67e06ce368 lib.sh: Fix bad touch command 
* 2c9f3065ee inject.sh: Only build nvmutil once 
* 4ca73f9434 inject.sh: always re-build nvmutil 
* e6c2fd9734 util/nvmutil:  use x, not ?, for random characters 
* 09f6a6b11d lib.sh find_ex: explicitly create the tmp file 
* 2d05cd260d init.sh: Explicitly create the xbmktmp directory 
* e32a6c96d5 init.sh: unified handling of ./tmp 
* 6c7da73782 lib.sh: add fe_ which is fx_ but err on find 
* afb5e7d3d5 lbmk: unified execution on find commands 
* 0b9c797f32 mk: include rom.sh directly 
* a13e53ba16 lib.sh: Simplify rmgit() 
* 61407551ca lib.sh: support multiple arguments in remkdir() 
* 4c2786daba lib.sh: simplify remkdir() 
* 6348e8a93e move x_() to lib.sh 
* a30fd38ae4 init.sh: move setvars/err_ to lib.sh 
* d51b995528 Restore SeaBIOS 9029a010 update, but with AHCI fix 
* 62f9c277f3 Revert "seabios: bump to rev 9029a010, 4 March 2025" 
* 7333d71808 Canoeboot 25.04 Corny Calamity 
* 2da5712128 bring coreboot revs in sync with libreboot 25.04 
* 96c8dfa883 remove unused coreboot tree 
* d66cfa5644 add pico-sdk backport patch fixing gcc 14.x 
* b262db3b87 serprog: Remove pico2 support for the time being 
* 15efc268a1 seabios: bump to rev 9029a010, 4 March 2025 
* 973053479b update untitled 
* 2c97b272b8 coreboot413: add alper's fix to cbfstool for gcc15 
* bbe401f5f9 flashprog: bump to rev e060018 (1 March 2025) 
* 64385b0dd1 lib.sh: Provide printf for mktarball 
* 8a5603f98c seabios: Fix malloc_fn function pointer in romfile patch 
* 892b02a215 dependencies/debian: Fix libusb package name 
* db162c3662 init.sh: fix yet another double quote for dotfiles 
* 41dad0d2c2 u-boot: gru: Disable INIT_SP_RELATIVE 
* db79c0171e u-boot: arm64: Expand our modified defconfigs to full configs 
* f34dd5cf38 u-boot: arm64: Merge our modifications into new defconfigs 
* 99ade886e0 u-boot: arm64: Add new upstream defconfigs 
* a710f63df3 u-boot: arm64: Rebase to v2025.04 
* c3ae4a917d u-boot: arm64: Save our modifications to the upstream defconfigs 
* a576fa4570 u-boot: arm64: Turn configs into defconfigs 
* 34d134f2f2 init.sh: don't use eval to read version files 
* b63612871d init.sh: use backslash for dotfiles in eval 
* 7722e2f0d0 mk: Don't run mkhelpers if mode is set 
* d85ec327c3 mk: condense main() again 
* 4ff7cd3d77 init.sh: make git name/email error more useful 
* ec287ca69e init.sh: move git name/mail check to xbmk_git_init 
* f89e5ad87a init.sh: tidy up the git name/email check 
* 76d99b8cae mk: make main() more readable 
* f3caaf394e mk: move git check to init.sh xbmk_set_version 
* f30892e92f init.sh: tidy up xbmk_init() 
* cbf486789d mk: move git_init to init.sh 
* 2c39a2bc7b init.sh: minor cleanup 
* d6d8ee1d4b init.sh: clean up setvars 
* ef78f88117 init.sh setvars: make err a printf for eval 
* 3221ca7742 init.sh: merge xbmk_child_init with xbmk_init 
* 723e979c8c init.sh: split xbmk_child_init into functions 
* 0d86ef50ac init.sh: move parent fork to new function 
* 68d5660cca init.sh: Provide more complete error info 
* 6ebb11cf9c lib.sh: move _ua to the xbmkget function 
* 2c8570c07a move variables out of init.sh to others 
* 75f6b1cc1e lib.sh: rename vendor_checksum 
* 5a294b183e lib.sh: move singletree() to git.sh 
* 7943fab580 lib.sh: move cbfs() to rom.sh 
* a16d9f35a2 re-split include/init.sh to lib.sh 
* 6d54f46148 rename include/lib.sh to init.sh 
* cf961e00b7 lib.sh: introduce more top-down function order 
* 7dbd02fcd0 mk/git.sh: remove tree_depend variable 
* 7c6039a086 git.sh: remove unused xgcc linking feature 
* 2c419396d3 mk: remove unused variables (ser/xp) 
* f6d81c4751 mk: simplify main() 
* cc1b025df2 lib.sh: use realpath to get sys python on venv 
* e281ad8659 lib.sh: Force use of System Python to prevent hang 
* 88799b8db6 lib.sh: further condense the python check 
* 03ff6f38b9 lib.sh: further simplify the python check 
* 4d4ab8ce59 lib.sh: condense the python check 
* 87edc96778 lib.sh: simplify mk() 
* 63e07a44df lib.sh: simplify cbfs() 
* e18af2022a lib.sh: simplify the python check 
* f899a3225d mk: remove mkhelp() and use x_() instead 
* 6bd6f14a19 mk: simplify handling of trees() 
* 46e6169495 lib.sh: add missing copyright year 
* 7786ea4250 mk: don't print confirmation of git pkg.cfg 
* d9908ca648 lib.sh: Fix python3 detection when 'python' is python2 
* 8affdc0bcb Update the GRUB revisions 
* b665d09442 Revert "git.sh: minor cleanup" 
* ec25425e55 lib.sh: perform root check even earlier 
* dbf40653b2 lib.sh: tidy up opening logic (put it together) 
* 46fb5786e0 lib.sh: do root check before python check 
* 0fa1265106 git.sh: minor cleanup 
* c8c5a0e017 lib.sh: simplify mktarball() 
* 76e7c35ae2 mk: tidy up check_gnu_path() 
* 2fccddb9d0 mk: simplify check_project_hashes() 
* b399252309 lib.sh: fix missing s/TMPDIR/xbmktmp 
* 72c83cdaeb cbmk: don't handle TMPDIR directly 
* 86a96b22a5 rom.sh: minor cleanup 
* 374baddbcb inject.sh: yet even more code cleanup 
* e644717077 inject.sh: even more cleanup 
* ec24bc4915 inject.sh: minor cleanup 
* 5469f483fc git.sh: remove unnecessary comment 
* 991a98caec git.sh: remove link_crossgcc() 
* 1915c84376 git.sh: remove move_repo() 
* 515c1782ad git.sh: remove prep_submodule() 
* 519d93691f git.sh: make git_prep command clearer 
* ca0aab3bfe simplify a few file checks 
* 85b1996afa rom.sh: remove unnecessary check 
* c3910fbc5f cbmk: minor cleanup 
* 6fc23805cb lib.sh mktarball: stricter tar error handling 
* 58a17c8d15 mk check_project_hashes: handle error on sha512sum 
* d65d93b300 Revert "lib.sh: use eval for the command in x_" 
* 0aace67a54 lib.sh: fix bad eval writing version/versiondate 
* 7c98661271 lib.sh: use eval for the command in x_ 
* e63c14677f mk: use eval to run mkhelp commands 
* f4e5879534 mk: tidy up the switch/case block in main() 
* 85373b9b91 mk: tidier error handling 
* d0b95ffe6e lib.sh: tidy up the error handling 
* caaaf46540 rom.sh: tidy up error handling 
* 7bd9fb9a7b git.sh: clean up fetch_project() 
* 4d15c476b6 mk: Remove unnecessary argument checks on trees() 
* 94a8fa816f inject.sh: properly call err_ in fail_inject 
* ca6a3c8958 remove xbmk_parent, handle forking in lib.sh 
* f3c757c2d2 lib.sh: define x_ right after err_ 
* 2b9881639f mk: minor cleanup 
* 3b2718bd9d lib.sh: minor cleanup 
* 8999d30b96 rom.sh: minor cleanup 
* 32242cc03b inject.sh: tidy up check_release() 
* f439230604 inject.sh: tidy up xbmk_inject() 
* bbc28e73f8 inject.sh: tidy up readcfg() 
* cdcdadf097 inject.sh: tidy up patch_release_roms() 
* ff35a6a300 inject.sh: tidy up modify_mac_addresses() 
* 67c8338acf script/trees: merge with mk and delete script/ 
* d4dba9140c mk: remove the legacy "roms" command 
* 4cb9db2ba2 lib.sh: write version/versiondate to dotfiles 
* f0dcaca4ee lib.sh: hardcode projectname/projectsite 
* ba5487aa34 remove update symlink 
* 062e057e87 move build to mk 
* 02785da1af trees: unify the execution of mkhelper commands 
* 6405f92bd4 trees: tidy up configure_project() 
* 019b885cd8 build: make coreboot building an else in "roms" 
* f2f4aaefb7 trees: don't build dependencies if dry=":" 
* e5fefd8074 trees: unified handling of flags 
* 6696e69f01 trees: simplified handling of badhash/do_make 
* 28ef540e74 trees: don't set mode on ./mk -b 
* dd60b2ee84 trees: don't set mod on ./mk -d 
* c429fc8e3f trees: don't initialise mode to "all" 
* c5dacebe44 trees: clean up some comments 
* 8d27e6c786 inject.sh: simplified readkconfig() 
* ca5618628b inject.sh: replace xbmkpath with xbmkpwd 
* 9130750ebb lib.sh: double-quote pwd to prevent globbing 
* 12e600bf5c cbmk: unified PWD handling (work directory) 
* 891a7d8e63 lib.sh: initialise PATH if it's unset 
* 18689092d3 move XBMKPATH to include/lib.sh 
* dcc7f10ec7 cbmk: use pwd util, not PWD environmental variable 
* 6e6b54cc24 clean up a few semicolons in the build system 
* 7b7642dc90 trees: err if first argument is not a flag 
* c2ddb7cc1f trees: err if no argument given 
* aa306663c3 trees: set dry=":" on ./mk -f 
* e246c22953 trees: clean up initialisation of the dry variable 
* 0ee7f48c8c trees: initialise mode to "all", not "" 
* 1211636df2 trees: don't abuse the mode variable on -f 
* ec14ff58da trees: Add missing flag to error output 
* d7063fc20d cbmk: minor code formatting cleanup 
* 2c05e7e6ba grub/xhci: Remove unused patch 
* 112c756a70 util/nvmutil: remove excessive comments 
* b74a7f0cc6 Bump GRUB revision to add 73 security patches 
* bce7fceb56 Update pico-serprog revision 
* dca11e70ed util/nvmutil: Fix bad error messages on R/W 
* 1b9073b39b util/nvmutil: hardened pledge on help output 
* b52fc1fe66 deps/arch: genisoimage belongs to cdrtools 
* 3a3b935b8b util/nvmutil: only set mac_updated at the end 
* 438ebb1647 util/nvmutil: Fix bad comparison 
* a70ab825b9 util/nvmutil: allow ./nvm gbe MAC 
* 471ce4fbdc util/nvmutil: move "e" to swap() 
* db9f7cf588 util/nvmutil: Only read up to 4KB on larger gbe 
* 71f6b631e3 inject.sh: Don't show gbe filename on inject 
* d96d370754 util/nvmutil: fix minor mistake (line break) 
* 698b9ff63b util/nvmutil: do setmac if only filename given 
* a0d7c564fb util/nvmutil: don't say write not needed if errno 
* a5549b43f8 util/nvmutil: print dump *after* modification 
* 5540713d16 util/nvmutil: verbosely print the written MAC 
* bbdd985bea util/nvmutil: minor cleanup in cmd_dump 
* 7849f23f81 util/nvmutil: show nvm words written on writeGbe 
* 38bb650f12 util/nvmutil: clean up readonly check on writeGbe 
* ae5772e8f7 util/nvmutil: Remove useless gbeFileChanged var 
* 43e583d0b9 util/nvmutil: reset errno if any MAC updated 
* 4ea5484e02 util/nvmutil: reset errno when writing a MAC 
* 67ac52df84 util/nvmutil: show total number of bytes read 
* 97beb4305b util/nvmutil: rename tbw/bw to tnw/nw 
* 3c6198a780 util/nvmutil: err if bytes read lower than nf 
* 508509e4e5 util/nvmutil: err if fewer bytes written 
* 5c9edb8ffe util/nvmutil: Show bytes written in writeGbe 
* b44c311db7 util/nvmutil swap(): ensure that no overflow occurs 
* dcfde2e318 util/nvmutil: make swap() a bit clearer 
* 06f30b9543 util/nvmutil: make 0x3f checksum position a define 
* cac598f79e util/nvmutil: make 128 (nvm area) a define 
* d176b56c58 util/nvmutil swap(): Only handle the nvm area 
* 47d7283462 util/nvmutil: move write checks to writeGbe 
* b01995d167 util/nvmutil: make cmd_swap its own function again 
* 3dc1fedbe8 util/nvmutil: minor cleanup 
* e2be86695a util/nvmutil: allocate less memory for setchecksum 
* 741ef57efc util/nvmutil: Further reduce memory usage 
* af6d6d6d59 util/nvmutil: Remove unnecessary buf16 variable 
* 16d760d738 util/nvmutil: Only allocate needed memory for file 
* 6c2a8010e2 util/nvmutil: Remove unnecessary buffer 
* 252e2bdb71 util/nvmutil: Show specific error for bad cmd argc 
* 59942196a5 util/nvmutil: cleaner argument handling 
* 21400784de util/nvmutil: extreme pledge/unveil hardening 
* 8f99e386a4 util/nvmutil: more minor cleanup 
* 11eb4df755 util/nvmutil: more granular MAC parsing errors 
* dc376cca14 util/nvmutil: more cleanup 
* e6f4d11c5e remove errant comment in nvmutil 
* 90f2c22826 util/nvmutil: support 16kb and 128kb gbe files 
* fef744d68e util/nvmutil: Prevent unveil allowing dir access 
* d68d0a8d75 typo: nvme should say nvm in nvmutil.c 
* fe55e33254 util/nvmutil: General code cleanup 
* 232f6b8610 grub/xhci: Add xHCI non-root-hub fixes from Nitrokey 
* a6c9ebd11f add gnults-devel to fedora 41 dependencies 
* 1a3c74a974 grub.cfg: scan luks *inside lvm* 
* d74e906652 grub.cfg: Scan *every* LVM device 
* 302d116c28 snip 
* 3730a63edd Canoeboot 20250107 release 
* a223a0db89 update u-boot/grub/seabios version displays 
* 23db77a030 inject.sh: MAC address changer (not vendorfiles) 
* 514f61d6ba pico-sdk: Remove old, unnecessary patch 
* 465b18eff3 remove errant symlink 
* ec7e8d3a8f Bump coreboot/next to 2f1e4e5e85, 31 December 2024 
* 8829539531 rom.sh: don't run mkpicotool on dry builds 
* 62d655b8dd pico-sdk: Import picotool as a dependency 
* adf1a2e1a4 lib.sh: Much safer python version check 
* 1b1dae36d2 set up python in PATH, ensuring that it is python3 
* ac6b7c9e3a add libx86 to arch dependencies 
* 24aa70869e add less to arch dependencies 
* d731b07aa7 lib.sh: Set python after dependencies 
* d57303e080 update my copyright years on modified scripts 
* bf5979f0b2 lib.sh: Fix unescaped quotes in chkvars() 
* 9baf6a72a7 Revert "fix more unescaped quotes in eval" 
* c1dd3da298 fix more unescaped quotes in eval 
* caa18bdcb3 fix ./mk dependencies build issue 
* 43ab374ec7 rom.sh: Remove errant GRUB modules check 
* 2916aee7ab submodule/grub: use codeberg for 1st gnulib mirror 
* 8e30ea27ef util/nvmutil: Update AUTHORS and COPYING files 
* 376b1301f5 util/nvmutil: Describe nvmutil in help output 
* da32fe1928 util/nvmutil: Remove the correct binary on uninstall 
* 54809f06bf util/spkmodem-recv: More correct Makefile 
* ac6f3884ad util/nvmutil: Honour the INSTALL variable 
* e993212146 util/nvmutil: Don't clean when doing uninstall 
* 21c87a6fbf util/nvmutil: Proper DESTDIR/PREFIX handling 
* 5ed1114443 util/nvmutil: Set CC and CFLAGS only if unset 
* 1e494f4530 util/nvmutil: Capitalise BABA 
* ba71891687 util/nvmutil: Add uninstall to Makefile 
* 1310c9a58c util/nvmutil: Add distclean to Makefile 
* faa78f53c2 util/nvmutil: Make the GbE checksum a define 
* 227c396ca2 util/nvmutil: nicer hexdump display 
* 07e8b9f35e util/nvmutil: show the correct hexdump order 
* 76d87782a8 lib.sh mktarball: cleaner if statement 
* 3d1fea0977 fix lbmk shellcheck errors 
* 4862f6a348 lib.sh and rom.sh: update my header 
* 8bdfd31498 rom.sh: handle tarballs in mkcoreboottar 
* 13194ec94a util/nvmutil: Obey the 79-character per line limit 
* ce0fdf183d util/nvmutil: Tidy up copyright header 
* f3feac0728 util/nvmutil: Fix another straggler 
* 145ff612c1 util/nvmutil: Tidy up pledge calls 
* 4a83659885 compile rmodtool alongside cbfstool 
* a22f272dfe fedora41/dependencies: add libuuid-devel 
* de26e984df add uuid-devel to fedora41 dependencies 
* 4ce13dab7a support ./mk dependencies fedora reinstall 
* 9d60470a97 fix missing semicolon in grub nvme patch 
* 2d860d6f66 bump seabios to rev 1602647f1 (7 November 2024) 
* 5d82a911b9 Bump GRUB revision to 6811f6f09 (26 November 2024) 
* b75d32be72 flashprog: Disable -Werror 
* 22206cadeb bump flashprog to revision eb2c041 (14 Nov 2024) 
* 1ebdb20d97 replace liblz4-tool with lz4 and liblz4-dev 
* 012f530656 lib.sh dependencies: support --reinstall argument 
* 33206cae60 move xbmkpath to XBMK_CACHE/ 
* 4a4f7abf0e Revert "Remove legacy update/vendor commands" 
* 71bccad345 Fix U-Boot build issue with Swig 4.3.0 
* 2608bea771 use command -v instead of which 
* 3dc3a557db trees: remove unnecessary subshell 
* dbf8bef5ff trees: only symlink host gcc/gnat to build xgcc 
* cd93e1b615 trees: correction on check_gnu_path 
* 57fafb0b73 trees: match gcc/gnat versions both ways 
* f167d4aeb9 Merge path.sh into script/trees 
* 444154c002 path.sh: Further cleanup 
* c25ea91783 path.sh: More thorough gcc/gnat version check 
* 12221b2828 path.sh: minor cleanup 
* 02b1a45c6b path.sh: remove unnecessary shebang 
* 5a5a7c37f5 Fix globbing issue in cbmk 
* 69c5f8911d remove auto-confirm on distro dependencies 
* 7ee6ec0ce9 Mitigate Debian Trixie/Sid GCC/GNAT version mismatch 
* f1d9ecc468 rom.sh: Name pico directory serprog_pico 
* bb6c31aa16 add 2024 to Riku's copyright header on rom.sh 
* 3d738af507 pico-sdk: update to 2.1.0 
* fa6ed8816e pico-serprog: enable building for multiple pico chips 
* 31a0ea3537 add spdx headers to various config files 
* dd6f914186 git.sh: don't initialise livepull globally 
* 417accd9e0 lib.sh: Support copying files locally 
* 7b8bda9977 lib.sh: Safer exit from ./mk dependencies 
* 63eb43ec39 dependencies/void: add missing escape character 
* daefe4f895 rom.sh: support grub-first setups 
* 73920cb0a1 rom.sh: insert grub background in cbfs not memdisk 
* 5ebeb65cbf add tarballs and signatures to gitignore 
* 5053354644 fix another very stupid mistake 
* df509aac63 fix the stupidest bug ever 
* fa16f7e36d Canoeboot 20241207 release 
* 4088cc12eb remove the purple patch on arm64 u-boot 
* 4a50e5a3e9 u-boot: Use bootflow menu by default for ARM64 boards 
* 81a29cef73 i made u-boot turquoise 
* 421e73c04c Add bootflow/branding patches to arm64 U-Boot too 
* 773cd8b384 Add canoeboot branding/version to U-Boot bootflow 
* ce27bb0ea0 Add auto-boot timeout for U-Boot's bootflow menu 
* 2ccc9215d8 8-sec auto-boot timeout for U-Boot's bootflow menu 
* ea9e4765f4 add /dump/ to .gitignore 
* 2d40305a35 u-boot: Enable USB with a preboot command 
* 0cea72c1cc u-boot: Update ARM64 boards to v2024.10 
* 6069668153 trees: reset PATH per-target 
* f6a2af67d5 Disable including Microcode in U-Boot builds 
* 106904ed81 rom.sh: Add U-Boot before SeaBIOS and GRUB (x86) 
* 19bc40962a rom.sh: Remove unnecessary shebang 
* 9a22d10e47 config/deps/fedora41: Add openssl-devel-engine to dependency list 
* 38dd860431 rom.sh: unset displaymode on normal initmode 
* b179ef63ed rom.sh: Don't build U-Boot on normal initmode 
* c885a63dd5 rom.sh: Don't build txtmode U-Boot images 
* dea09b8bf5 rom.sh: Support SeaUBoot for 64-bit x86 U-Boot 
* eea06c9659 U-Boot x86: Avoid clearing the VESA display 
* 5dd6a4e978 enable the serial console on thinkpad x60 
* 112b761926 enable the serial console on thinkpad t60 
* 8ba8cf3e60 Only boot 32-bit u-boot from grub, 64 from seabios 
* 6ff2a65a7c make the u-boot grub menuentry more useful 
* 0a90386ddb Re-enable U-Boot x86 on real mainboards 
* f3d68fade3 u-boot x86 serial/ns16550: disable UART as needed 
* 8333930599 Disable U-Boot x86 except on Qemu 
* d6cf658624 fix U-Boot hotkey mention in grub.cfg 
* 5e27c14b05 Update x86 U-Boot to v2024.10 (was v2024.07) 
* 186e3c0a23 grub.cfg: mark U-Boot as experimental in the menu 
* 414ff6095c trees: unset CROSS_COMPILE per target 
* 739207021d Enable x86 U-Boot payload on every x86 board 
* ac5c87681f Add U-Boot x86_64 payload 
* a70a9813d7 add arm-none-eabi-gcc-cs-c++ to fedora dependency 
* 5a641b071d Bump coreboot/next in line with lbmk 
* 2d2cdd2368 data/coreboot: add missing variable 
* 966fc8c23f Experimental U-Boot payload (32-bit dtb, U-Boot) 
* 9706835dd5 Canoeboot 20241102 release! 
* a7a1534fb1 rebase coreboot/next 
* b1319f5dbb Link e6400 vbt from variant dir. 
* 6f39c7683a coreboot/default: Re-base patches 
* 44f5909e43 Canoeboot 20241031 release! 
* 54585c2e75 more irony prevention ready for halloween release 
* 2daddfd118 NEW MAINBOARDS: Dell OptiPlex 780 MT and USFF 
* 19b4bf16e4 re-update seabios to latest revision 
* 121f3e304e re-affirm SeaGRUB as the primary payload 
* cee363c6d5 config/coreboot/default: Update MEC5035 patches 
* 4f08fe2a6e Use SeaBIOS 1.16.3 and enable debugging 
* 3f02e259ca rom.sh: remove unnecessary logic from copyps1bios 
* 2db674f85e use redundant mirrors for recent utils imports 
* 41e0bc7db9 remove end slashes on repos in config/git/ 
* eb6ec319ed import Riku's int tool 
* c995f2cce9 import Riku's gpio-scripts 
* 67f986e8cf import Riku's mxmdump utility 
* a1aef7108f bump seabios 
* 2a4d0ce810 bump flashprog revision to d128a0a 
* f4be26e249 dependencies/fedora40: add python3-devel 
* 6d2efbcbc3 build: actually build pcsx-redux bios on release 
* f1ebdb50aa rom.sh: support making pcsx-redux bios release 
* b2e41735f3 further irony prevention 
* 2478b53f09 coreboot/default: delete HDCP binary from rk3399 
* 6e1ab7b624 irony prevention 
* 03f7a7b53a rom.sh: disable seabios-as-primary if grub is main 
* b6036e81d2 coreboot target.cfg: permit GRUB as primary payload 
* 4c08c390dd git.sh: fix error with cache re-download 
* 018486d912 add swig to fedora dependencies 
* 9a91abd9ef config/coreboot: Add Dell Latitude E4300 
* 8cb66ef10e Add Sony PlayStation support to Canoeboot 
* 1b6d56e4bf config/git: Import pcsx-redux 
* c424795611 remove unused coreboot tree 
* 1d9f56bdf7 update config/submodule/coreboot 
* 01331db17f lib.sh: more verbose error in x_ 
* c0ce9121a6 flashprog: bump to 639d563 (2024-08-02) 
* 4d53d491c2 seabios/default: bump to ec0bc256 (2024-06-24) 
* 8d6376e61e grub/*: Bump to rev b53ec06a1 (2024-06-17) 
* 4564c44ebe coreboot/default: bump to 97bc693ab (2024-07-29) 
* e4d2c38903 uefitool: Only define ACCESSPERMS on *nix 
* 1274291628 uefitool: Add patch working around musl libc issue 
* 8b74fe2c14 lib.sh: new function mk() to handle trees in bulk 
* 7942aff43d general code cleanup in the build system 
* bd517a3d27 rom.sh: don't dry-run mkcoreboottar 
* 64e990212a rom.sh: don't run mkcorebootbin on trees -d 
* acac32f065 support ./mk in place of ./update trees 
* 3fd2769bf6 trees: initialise badhash no n, not empty string 
* c5364e6d4e rom.sh: fix buggy deletion of cbutils 
* 792efc659f rom.sh: also add grub to seabios images 
* 6ddc02a7b7 rom.sh: copy tmprom to TMPDIR for modification 
* d08b175a0d rom.sh: re-add seabios-only roms and grub keymaps 
* f0c25c7258 include/rom.sh: use ccache when building coreboot 
* 16f9ad55ca put cachedir in environmental variable 
* 6b2653f8cd git.sh: warn when a cached clone fails 
* 1458e1108e git.sh: fix typo in git command 
* 20b076714c git.sh: fix lack of error exits on fault 
* a7f9a7bb6f build: remove tmp/ on release archives 
* 71091e03a7 trees: hardcode makeargs for xgcc 
* 1bc484dbf6 allow using coreboot's build system to add payload 
* 93a476b4fc trees: remove unnecessary command 
* ae3966a02f build: remove cache/ on making releases 
* 0cf0fdcfc3 unify caching of files into cache/ 
* 8bb3730e7b cache downloaded files(module) to cache/file/HASH 
* 0d55d7b23a git.sh: remove previous tmprepo if args>5 
* 3e2e5ecf5a git.sh: try direct clone if cached git fails 
* 03c9670fef git.sh: re-try git pull three times 
* 055c9be15b trees: auto-delete+auto-rebuild if project changes 
* 2d794a8385 trees: also remove single-tree repo/p/ 
* b564f5b848 trees: remove repo/p, not src/p/p 
* c44ff5ac47 git.sh: don't download to src/project/project/ 
* 3590a53ed1 git.sh: cache git downloads to repo/ 
* 2823ccc438 remove util/autoport 
* a29453023c trees: move dependency building to new function 
* a9997082d7 u-boot: Fix display initialization on gru boards 
* 5b170de055 u-boot: Avoid breaking build for U-Boot-only binman images 
* d442d61f84 u-boot: Update to v2024.07 
* 215764cfbd trees: fix bad comparison in configure_project() 
* 60d491e2bd trees: don't continue if no argument given 
* 3365fca06a trees: general code cleanup 
* a721e927b0 trees: merge build_targets() with handle_targets() 
* 1a95c0cf30 trees: use wrapper for dry-running make commands 
* a258eb231a trees: remove project-specific hacks 
* 3681c29e77 remove executable permission on include/ 
* 378c09a25c rom.sh: actually say if a cbutil exists 
* 87681db12c rom.sh: avoid re-building cbutils if built 
* fdf7864905 rom.sh: only before cbutils before coreboot 
* 21306dd5b8 trees: fix bad comparison 
* 9a3beea79c minor cleanup 
* 4dbce8aef0 trees: support -d (dry run) for custom build logic 
* 2dad7b0b6f rom.sh: only make rom tarball if release=y 
* e01995d491 rom.sh: new file, to replace script/roms 
* a50c789b1d roms: remove unnecessary trees checks 
* e5262da7ca coreboot: set build_depend on target.cfg files 
* a8a42ebb0b trees: rename load_target_config() 
* 07769f3341 trees: support build dependencies, not just fetch 
* 1b75d738bf GRUB: only load xhci from grub.cfg 
* bfeab80a8d trees: just do makeargs on coreboot, not cbmakearg 
* 05b59f39d6 trees: fix bad rm -Rf command (-Rf, not Rf) 
* 5d179fe3e0 roms: fix bad comparison in configure_target() 
* 1fe126501a GRUB: use mkhelper.cfg for common variables 
* c76e6b0527 trees: allow global config on multi-tree projects 
* bdf43e07cf trees: handle all projects if project undefined 
* ff00073666 git.sh: simpler for loop in git_am_patches() 
* de26bb9997 git.sh: merge for loops in git_am_patches() 
* cc090de51e trees and git.sh: tidy up global variables 
* 5b24c812a0 git.sh: simplified initialisation of "loc" 
* a62ad20730 trees: simplified distclean directory check 
* 63ae4ad746 git.sh: condense fetch_targets() a bit 
* 7aad37199c git.sh: short git_prep command in fetch_targets() 
* 4a152d53c3 trees: only do bare multi-tree clone on git 
* be4c655008 trees: simplified multi-tree bare repo clone 
* 51fe371931 git.sh: merge prepare_new_tree with fetch_targets 
* ca77d3a3d7 trees run_make_command: simpler distclean handling 
* aad9c8d0de trees: condense copy_elf() a bit 
* fdd67e5935 trees: add return to handle_defconfig() 
* be01e56609 trees: rename check_config to check_defconfig 
* 2740db84b7 trees: remove variable "config_name" 
* c77c09bac2 trees: rename variable "config" to defconfig 
* 675b24e83d git.sh: remove duplicate "xtree" variable 
* e332937241 trees: remove unnecessary commonts 
* 516b399eb1 trees: condense run_make_command() a bit 
* 0ab9afc7af trees: condense handle_makefile() a bit 
* 605b099e04 trees: mv load_project_config load_target_config 
* ef3ff3dfe4 trees, multi: download bare project *before* trees 
* e377404406 trees: unified multi-tree configuration handling 
* 211f4f0b82 trees: unified handling of source downloads 
* 0f7a5c27dc git.sh: rename Fetch_project_trees fetch_targets 
* 626fd9f245 git.sh: rename fetch_project_repo to fetch_project 
* 6a91dc02dc trees: better skip-clean string in handle_src_tree 
* de8dc508f9 trees: add return to check_coreboot_utils() 
* cc61bd1239 trees: simplify "utilmode" variable initialisation 
* cbe40044b4 trees mkpayload_grub: remove unnecessary check 
* 7322a2b53d lib.sh: stricter check in chkvars() 
* 203fdb8007 tidy up some setvars lists 
* d3ccb4d8a7 roms: explicitly shift by 1 on the "all" target 
* bd8f0e0bbb roms: add return value for the list command 
* 5907022703 roms: build u-boot *before* checking ubootelf 
* 57b68302c7 remove more unnecessary checks on trees commands 
* 0dcd8852dd lib.sh: keep versiondate check to 80 characters 
* 2ebdd184b7 lib.sh: condense for loop 
* 5dc30167de lib.sh: condense err_() a bit 
* a9882cfa00 lib.sh: add a return to the end of chkvars() 
* 511423a85a lib.sh: remove unused variable "boarddir" 
* 1fbfc7303d remove use of _xm variable in the build system 
* 7451fa629c trees: don't hardcode use of mkpayload_grub 
* 623ad90ef0 trees: simplify single/multi handling in main() 
* 7b178f5fad trees: rename build_projects to build_project 
* 7ee147ed49 trees: err if target.cfg not given if multi-tree 
* f8d1abf18d trees: set btype if target.cfg doesn't exist 
* 2827917b0a lib.sh: remove unused cbdir variable 
* dd28339f38 roms: remove unnecessary assignment to cbdir 
* cf4f828dbe trees: avoid kconfig make commands generically 
* ce9b2f0a1c git.sh: remove unnecessary check 
* f3baebe7e1 lib.sh: move git_err() to build 
* 43238fa0c5 lib.sh: condense singletree() a bit 
* de331e5da0 lib.sh: add a return to the end of check_defconfig 
* 94d9d313cc trees: condense elfcheck() a bit 
* 35c516c2f4 lib.sh: condense e() a bit 
* 2ac6db2b91 trees: shorten the final confirmation message 
* 9ba28a0b86 lib.sh: make elf/coreboot* a dot directory 
* 32e1b13416 build: don't rm TMPDIR if it's /tmp 
* 6daea94df8 lib.sh: simplified TMPDIR handling 
* 0c0b8124c1 lib.sh: condense setcfg() if/else logic 
* 0a2ed1a7bd trees: remove redundant space in printf 
* e3179f435e trees: explicitly err if OPTARG is not set 
* 8dcfb8a585 trees: only permit one single-tree project 
* c56531af40 trees: call err if multiple flags are provided 
* ebebb5a57e trees: explicitly set mode for -b 
* 0662b22297 roms: re-add compression of coreboot images 
* e8b7e74db5 roms: build coreboot *after* checking variables 
* aac8720382 lib.sh: introduce mandatory check of projectname 
* ae28debf21 lib.sh: condense setvars() a bit 
* 8c06c62e06 simplified lock message 
* 2965d526fd lib.sh: simplify reading of version files 
* 3319147306 lib.sh: simplify use of environment variables 
* aa89f69b34 roms main(): confirm what serprog images are built 
* ba228ac228 roms: remove unused variable name 
* e48183a52e roms: remove redundant printf 
* e73f1b1c9b roms: optimise u-boot elf check 
* 14c3a328f1 roms: simplify build_roms() 
* 0355a80408 roms: make the bin/elf message more polite 
* 537efc148d roms: re-add final confirmation of targets 
* 01986beda3 roms: rename functions for extra clarity 
* d0a949d00b roms: build coreboot early to avoid duplicate work 
* df66dbd72d trees: try xgcc build twice if first attempt fails 
* bd59d01ea2 trees: don't check if xgcc is already built 
* fc408f5554 lib.sh: fix error running ./build dependencies 
* 8a02aef1d8 remove unused git modules 
* b72dfe11f9 roms: general code cleanup 
* 852eb1db4f roms: only support SeaBIOS/SeaGRUB on x86 
* 107072b189 roms: remove support for "grubonly" seabios 
* ad1d0cb58c use backticks on eval commands, not subshells 
* e7fcfac14e lib.sh: remove badcmd() 
* dec9ae9b43 lib.sh: more unified config handling 
* c72904b6d1 trees: more robust check to avoid "make fetch" 
* a59ebb1b7c roms: fix lack of backslash on multi-line command 
* 253015f6a9 Revert "roms: remove build_payloads() and split it up" 
* 448d02babb git.sh: revert modification to for loop 
* 381ed442d9 minor code cleanup in the build system 
* 295471644a git.sh: general code cleanup in fetch_submodule() 
* 3ba876932d git.sh: reduced indentation on repo/file check 
* 109db65932 git.sh: simplified repo/backup check 
* acbefc558e roms: merge mkserprog() into main() 
* c2ca92a169 roms: don't insert timeout.cfg 
* 98fc84b0ed correction 
* 3ef9925b56 roms: reduce indentation in build_grub_roms() 
* faddd02ef5 roms: re-introduce accidentally disabled check 
* 14a05f72fb roms: remove build_payloads() and split it up 
* da3d7c7101 roms: group some commands that are similar 
* 99a13a32d9 roms: remove mt86bin variable 
* 3097a9e97a roms: merge build_uboot_payload to build_payloads 
* ccb330ec09 roms: simplify payload_uboot y/n check 
* 49c41411bd roms: simplify the check for serprog srcdir 
* 8136b640b9 roms: simplify the loop for building serprog roms 
* 6976a4edb2 roms: shorten variable serprog_boards_dir 
* 4a3ab3ad1c roms: simplified serprog image copy 
* 64ce81d2b6 roms: rename picosrc variable to rp2040src 
* e3471b22e7 roms: remove useless confirmation in mkserprogfw 
* a8fb99a750 roms: merge serprog build into one function 
* b1ec5ad719 roms: remind the user about gkb files 
* a93f519799 roms: rename x variable to it in for loop 
* faff6f0348 roms: don't use x_ to call cproms() 
* f43525d14f roms build_uboot_roms(): move rom, don't copy 
* dd2854b3e8 roms cproms(): allow other commands besides cp 
* a8f44ab80a unify coreboot elfdir (DO_NOT_FLASH) 
* be04f59602 roms: merge mkUbootRom() into build_uboot_roms() 
* a9819d7385 roms: simplify mkSeabiosRom() 
* 19baf8d1a7 roms: simplify mkUbootRom() 
* 935958e6a4 roms: simplify build_roms() 
* acd5d16961 roms: remove unnecessary check 
* 6094542663 build: remove unused variables 
* 94b9bd44e4 roms: further clean up build_grub_roms() 
* 167f81a993 roms: simplify timeout/scandisk insertion 
* d958b16369 roms: simplify seagrub check in build_grub_roms 
* 726b56b2f1 roms: simplify mkserprog() 
* dd59f2daba roms: simplify the serprog build functions 
* 9897bc748d script/roms: fix serprog build commands 
* 3269e0c097 roms: simplified ubootelf check 
* 7265b9f112 roms: simplify grubonly check in configure_target 
* c29b3ec3fc roms: simplify seagrub check in configure_target 
* f07aa84d49 roms: don't use x_ to call build_grub_roms 
* ed921d7890 trees: simplify copy_elf() 
* 293777fb99 trees: remove unnecessary check in copy_elf 
* b50a588cba grub: insert background in memdisk instead 
* 7f5adffc02 roms: unify all add-payload commands 
* 82c6a352df roms: don't add grub keymaps at all 
* f1aea87141 roms: merge handle_coreboot_target into main() 
* ae9dce889b roms: simplify target check (whether roms built) 
* bb4f0995d1 roms: simplify main() again 
* 59392ea0bb roms: remove redundant check on grub_scan_disk 
* e96d85dc76 roms: remove dangerous runtime p/s/d options 
* bb7b04cb59 unified checks for variable initialisation 
* 1399f2137f lib.sh: remove the items() function 
* 4ed6e41221 roms: simplify main() 
* 250f59bfb1 Canoeboot 20240612 release 
* a2de05cf8e coreboot nasm: use coreboot mirror as backup 
* 581d4a66ac grub: only enable nvme if needed on a board 
* dc9f5a6e48 fix nasm download path for coreboot/fam15h 
* 4f6fbfde81 minor code cleanup in the build system 
* 070aee6728 re-add ability to use cbfs grub.cfg as default 
* b4acd0f73c trees: exit with error if project undefined 
* fd9664c567 build: also make a lock file during release build 
* 686bad6d4e lib.sh: more useful lock message 
* f1caf89a28 create a lock file during builds 
* b6dc23bc67 git.sh: hide e() output on for loop 
* e51eae0d25 lib.sh: fix regression 
* 8b1a54d19e git.sh: download xtree *before*, not after 
* 14bba2d789 git.sh: fix deletion path in nuke() 
* ab4c4d406f lib.sh: less confusing error in download() 
* 2eaaa63f58 lib.sh: hide stderr on download() 
* 9e2584fbd9 lib.sh: simplify download() 
* 79fb79d239 lib.sh: fix redundancy in download() 
* e8b1d45631 lib.sh: simplify singletree() 
* 90a8ef90b0 git.sh: further simplify nuke() 
* c6b692208b git.sh: simplify link_crossgcc() 
* c043e5810d git.sh: simplify nuke() 
* 323a17d0c8 Add dependency scripts for Fedora 40 and Ubuntu 24.04 
* 62b2310a28 add crossgcc tarballs to config/submodules/ 
* 8a34a0d338 git.sh: support downloading *files* as submodules 
* 0730513709 git.sh: remove unnecessary line break 
* ad05266f8d import file download function from lbmk c202dc61 
* b8e9eab0ba lib.sh: shorten a string in e() 
* a29cf274bc git.sh: fix submodule path 
* 7ac2264f53 git.sh: simplify prep_submodules() 
* 7c8173ebd4 git.sh: unified handling of git clone/reset/am 
* 573199c07d trees: simplified copy_elf() handling 
* d0d9b1204f git.sh: simplify submodule handling 
* df5d7c18bf git.sh: provide feedback for repository downloads 
* 591c7d28e0 git.sh: download "depend" projects *before* 
* 548d1e20c1 git.sh: reduced indentation in fetch_submodule 
* 12a04e8de2 git.sh: reduced indentation in prep_submodules 
* 9825e97a83 git.sh: *never* run git submodule update 
* 860deb3e7e lib.sh: rename variable for clarity 
* 8d5edd4f06 trees: don't check empty path in copy_elf() 
* c1176bbd28 trees: fix build issue caused by bad elf check 
* c88fb8c129 trees: fix listfile check in copy_elf() 
* 9168d33741 trees: don't say check elf/ if build.list missing 
* db09530905 trees: don't do elfcheck if build.list missing 
* 99418a7e82 define mdfiles/images in config/submodules/docs/ 
* 83d84797d8 libopencm3 to config/submodules/ on stm32-vserprog 
* c3cabcddf9 add tinyusb to config/submodule/ for pico-sdk 
* e4eb82e089 trees: unified coreboot makeargs 
* f7170092c8 trees: use multiple threads to build cbutils 
* 1d7a6f04c9 move handle_coreboot_utils to script/trees 
* ff16d27991 put coreboot utils in elf/, not cbutils/ 
* 3748f710c9 fix build issue building coreboot utils 
* a30bfd334f trees: skip single-tree build if a build exists 
* b682b4ddca use correct memtest86plus path in script/roms 
* 4749a5a29f put memtest86plus builds in elf/memtest86plus/ 
* 0e9d9b33b2 put flashprog builds in elf/flashprog/ 
* 7fe0106fa0 trees: also print "DONE! check elf/dir" on single 
* 74759d876a trees: handle build-test on multi-tree projects 
* 98e9cf6864 git.sh: use singletree() to decide submodules 
* b3b887567a remove cbcfgsdir variable (unused) 
* cb446e7d24 move cfgsdir/datadir variables to lib.sh 
* 7d99786a1a handle build.list from config/data/, not config/ 
* a61794dfca don't use build.list to detect multi-tree projects 
* 878056f37b move id check to lib.sh too 
* 3900642471 move root check to lib.sh (bugfix) 
* 740b1803fa bugfix: move dependencies handling to lib.sh 
* 4e25e335ed bump untitled revision again 
* 44ef38b335 bump untitled revision in git config 
* 7b9431e336 lib.sh bugfix: check environmental variables right 
* 2478252f67 lib.sh: more friendly output from e() 
* d21fd016ac badcmd: don't print "no context given" 
* 663de3bab4 badcmd: link directly to the maintenance manual 
* 1d866d17d8 better help text on invalid commands 
* 1204bc3c96 build: print the project website address on help 
* ca0e9354f6 add projectsite file: point to canoeboot.org 
* eb4ac3c334 make GRUB multi-tree and re-add xhci patches 
* 347a104ae6 u-boot on qemu: remove currently unused x86 target 
* 23e66c113d grub.cfg: scan /boot/grub.cfg last 
* 6151316b91 grub.cfg: scan grub2/ last 
* 36b3be95cf grub.cfg: search a reduced list of devs/partitions 
* 71a17efc06 grub.cfg: scan grub.cfg from ESP 
* 8bc7e3a539 grub.cfg: split up try_user_config 
* cb4bacc9d9 grub.cfg: don't search for *_grub.cfg 
* ea7e6e1659 grub.cfg: remove unnecessary path for isolinux 
* 1beca3b781 grub.cfg: don't scan EFI on btrfs subvols 
* 0662519cca Fix building vboot on i686 
* 224dce632b git.sh: do not remove .submodules 
* a36504aa31 delete u-boot test/lib/strlcat.c using nuke() 
* cdce8ba70b make nuke function more generic 
* 2c1f6f5e7a do not allow dashes in coreboot target names 
* 7dc5d35929 roms: allow user override of grub_scan_disk 
* bcb65846d3 grub.cfg: actually support setting boot order 
* 2887b77ae4 trees: use CPUS=x on regular coreboot make 
* a056583762 update gitignore 
* 1ac4f7409e roms: fix bad eval when comparing options 
* 724dbfe0ce grub.cfg: add spdx header 
* 66f5faac73 re-configure grub_scan_disk on various targets 
* bb92776943 remove grub_scan_disk in all target.cfg files 
* 935447b035 grub.cfg: use grub_scan_disk to set boot order 
* 75b6fbf302 GRUB: remove XHCI patches for now (will re-add) 
* 07340d9711 minor correction 
* 9f489b43d5 roms: make grubfirst if seabios_withgrub=y 
* fca9b19e18 coreboot: only run GRUB as a secondary payload 
* b75490f8fc flashprog: bump to 5b4fdd1 from 2 May 2024 
* d147c5d915 rename include/option.sh to include/lib.sh 
* f534b0e973 merge nuke() back into git.sh 
* a02b152f44 rename nukeblobs to a more generic name 
* cb1918c5d7 roms: remove errant reference 
* 4cff3c7d33 roms: rename bstr variable 
* dc487df12f git.sh: remove errant whitespace 
* cbb2f4f8a9 general code cleanup in the build system 
* 583135e548 build: simplify git_init() 
* aaff90f5a5 build: do root check before git check 
* 687fdacc78 build: simplify git checks 
* 84ee6a1ed8 option.sh: fix bad check for version/versiondate 
* 3554593fd8 trees: reset makeargs per target/project 
* b09261a901 trees: also use UPDATED_SUBMODULES=1 on crossgcc 
* 698548ac59 trees: add UPDATED_SUBMODULES to coreboot make 
* c8c516703f trees: write -C on the make command first not last 
* aa15eef32f config: add backup coreboot submodule repositories 
* 9e88ef2449 coreboot/default: remove chromeec from module.list 
* 27f21c32d3 git.sh: break if a submodule clone succeeds 
* 38fca598fb coreboot: only download the necessary submodules 
* b5aa8b2d35 git.sh: allow finer control of git submodules 
* 9339c6f3fd build: hide git-init output 
* 31e089aff3 option.sh: generate version file if .git not found 
* 7ec023907b update/trees: remove unused variable 
* 2b0e71412e git.sh: move repo copying to a new function 
* d71c4d326e git.sh: move link_crossgcc to end of file 
* 0d7c249c9b move deblob function to new file "deblob.sh" 
* 1300f09e67 git.sh: move xgcc linking to a new function 
* 24934e6569 git.sh: don't include --checkout in submodules 
* 5e0129eb0f git.sh: skip submodules if .gitmodules missing 
* 7f82622caf git.sh: merge patch_submodules in prep_submodules 
* 9c0a7f14fc git.sh: split submodule handling to new function 
* b593127795 git.sh: remove errant line break 
* 19f694bf2a git.sh: remove another meaningless check 
* 71a9fcced8 git.sh: shorter variable names 
* 6693588857 git.sh: remove meaningless check 
* 5c459ad4ac git.sh: remove variable not meaningfully used 
* 7be7bb8edb add CHANGELOG to .gitignore 
* 3b2ebda890 Fix E6400 display reference clock patches 
* 995f052bb0 fix building coreboot images on i686 hosts 
* 31d2c818eb Also try unlocking encrypted volume on NVMe 
* 58f6741fb4 git.sh: fix invalid command in git_prep() 
* f58b01c300 Add NVMe support to GRUB2 payload 
* b892036edf Fix E6400 display issue with 1440 x 900 panel 
* f81c7ed8e9 Add pt qwerty keymap to lbmk 
* 849466c0ac git.sh: allow patching submodules 
* 8d4d063ace git.sh: don't delete .git if src/project/project 
* 0ecb062df0 build/roms: skip target if config/ dir missing 
* 4783c5b90e more minor cleanup in the build system 
* 10ecf41ee0 git.sh: remove fetch_from_upstream() 
* ddcb793bd2 option.sh: don't return 1 in mkrom_tarball 
* ae8637b620 option.sh: mktar_release to mkrom_tarball 
* 309c3b1f33 build/roms: rename moverom to copyrom 
* a39c95cfac minor code cleanup in the build system 
* f102e21ab6 build/roms: simplify serprog list command 
* 7a565c9f43 build/roms: simplified config payload checks 
* a243dc2308 option.sh: err if config directory is missing 
* c28166ff9e option.sh: print the config filename being checked 
* 9fd504e24a git.sh: Remove .git if XBMK_RELEASE=y 
* e4956478db build: remove initcmd() and simplify main() 
* f2b3bb142d build: initialise git first (before commands) 
* 571932d33e build: remove excmd() and simplify main() 
* 525f5525d3 build: don't make script_path a global variable 
* fbac2d8fe6 Implemented failsafe options at boot and inside menus for enabling/disabling serial, spkmodem and gfxterm 
* 3e5db248dd cbmk: allow easier sync with lbmk 
* e71189420f remove help commands (user should read docs) 
* 23854de888 option.sh: delete check_git() 
* 2c5f52ce29 build: define "xp" in the global variables 
* 48c5c57cff build: simplify for loop in fetch_trees() 
* c2baebc79a build: simplified downloads in fetch_trees() 
* 18d0e53480 ./build release: don't do u-boot-only archives 
* d8a923f766 build: use utc+0 when initialising git repo dates 
* 0794127986 remove check_project() (always set variables) 
* c8bc797f31 build: simplify deletions in fetch_trees() 
* 363ec7512c build: delete mkversion() (just print relname) 
* ae44676727 build/roms: clean up tarball handling 
* 3469836f18 rm src/u-boot/*/test/lib/strlcat.c in u-boot 
* c57dfefe91 build: remove mkrom_images 
* 6ab8c2c446 build: use same tarball name on uboot-only release 
* 21436c6a8f build/roms: create full release tarball name 
* 90c528032b option.sh: don't bother checking for GNU tar 
* 422d36a07c option.sh: remove insert_version_files() 
* ca1806f20e cleanup: remove mkvdir 
* a0ea7f7a92 unified sha512sum creation for tarballs 
* 09fcc343a3 move rom tarball creation to script/roms 
* 5c888669c6 disable x301 for next release (for now) 
* 91c90d763f print two line breaks before confirming release 
* d423421995 remove all status checks. only handle release. 
* 4826364afb git.sh: remove errant comment 
* 541430016f move script/*/* to script/ 
* 9084ab15ab build: print usage for special commands 
* f12c2f284f merge script/update/release into build 
* 41f4ee3c2d Canoeboot 20240510 release 
* 0580373ff9 bump seabios to e5f2e4c69643bc3cd385306a9e5d29e11578148c 
* 17b5cb2749 further modify the README (stragglers) 
* 628e91a3b9 build: further prevent non-cbmk-work-directory 
* e761a494c8 build: exit if not running from cbmk directory 
* eb8a02e808 build/roms: print serprog help 
* a398011180 merge script/build/serprog with script/build/roms 
* cd5c2573ac build/roms: remove unnecessary command 
* da748de455 merge include/err.sh with include/option.sh 
* 3acac46536 err.sh: correct copyright info 
* 6bdbb70dbc build/roms: don't rely on x in handle_target 
* 1c84d0fc9d build/roms: don't use exit status from skip_board 
* 0ada63b629 build/roms: split up main() 
* 5cecd9e394 build/roms: allow searching status by mismatch 
* 97d502ccc8 tone the README way, way down 
* 29d6d294ab Canoeboot 20240504 release 
* 79b00fbfaf coreboot: update latitude release status 
* ed8969d93f d510mo and d945gclf: disable for release 
* 8a1255634e build/roms: more useful status warnings 
* 5405584b5a mark lenovo x301 as stable for release 
* 9d5e03268b coreboot/default: Add patches to fix S3 on SNB/IVB Latitudes 
* dc41f55a09 coreboot/x301: set release=n (will re-test) 
* fc0972fe6d update/release: purge test/lib/strlcat.c in u-boot 
* c4fe290da8 mark x4x boards ready for release 
* 029e30bfbc err.sh: update copyright info 
* 2074d33712 update/release: say when an archive is being made 
* a8aa1dc0f8 update config/git/docs (cbwww rev) 
* 8ddb1c7885 git.sh fix: only download submodules for coreboot 
* b64cab53eb coreboot: fix fam15h board configs for build 
* 7d652ac991 coreboot: never download blobs even if USE_BLOBS=y 
* 57a63343fb Update coreboot to LB 20240504 (sync lbmk cd9685d1) 
* 9c1a7e0f79 dell-flash-unlock: Remove dependency on GNU Make 
* ec7209aed3 dell-flash-unlock: Update README for BSD 
* 731884c9e6 dell_flash_unlock: Add support for FreeBSD 
* dcbd13425e dell_flash_unlock: Set iopl level back to 0 when done 
* 3a5054c7f7 dell_flash_unlock: Fix ec_set_fdo() signature 
* f288eb4b42 Fixed boot selection menu 
* f44f2450a2 correct dell latitude status for release 
* 322cd0f9f6 set gru bob/kevin stable for release 
* 3b34c79934 set dell latitudes stable for release 
* a297fced80 mark i945 machines as stable for release 
* 2672393bf5 build/roms: simplified list handling 
* fce056587e dell-flash-unlock: Remove unnecessary includes for NetBSD 
* ef77493c2c dell-flash-unlock: Remove memory clobber from inline assembly 
* 4876f32159 build/roms: if release, allow all non-broken roms 
* 3ec6607807 build/roms: always display warnings 
* 3eb59000a5 build/roms: reduce indentation in skip_board() 
* 3aa148aa2e build/roms: simplified status handling 
* 96eb7913a5 build/roms: simplified seagrub handling 
* cbf673fc46 build/roms: support SeaGRUB *with menu enabled* 
* 79b1a1fee2 update/trees: simplified defconfig copying 
* 45ac5f1741 option.sh: don't use nproc (not portable) 
* ee853c20e0 update/release: disable status checking 
* 8cf0d56f66 build/roms: tell the user how to ignore status 
* 3eab399e7a update macbook21/x60/t60 status 
* c7513ce31c allow disabling status checks during builds 
* bd9404c237 update more board statuses before release 
* a52db7899c add warning for coreboot/e6400_4mb 
* 9bff198adc declare gm45 thinkpads stable for release 
* d8bd88bff2 kcma-d8/kgpe-d16: mark as tested(unstable) 
* b707b7a8cc build/roms: update help, pertaining to status 
* eda035eb23 build/roms: let "list" specify status types 
* b56f79578a build/roms: report status when building images 
* b8db9ed698 exports variables from err.sh, not build 
* cca3294194 GRUB: bump to today's latest revision 
* 3ae05b347c cbmk: export TMPDIR from err.sh, not build 
* c8bb465d1a build/roms: add missing deletion of tmp file 
* a1ac872240 permit excluding certain coreboot roms on releases 
* 428ebea0d9 grub xhci support 
* 187a3ea484 allow users to specify number of build threads 
* 226b2301db safer, simpler error handling in cbmk 
* 5f73ebe9da dell-flash-unlock: add NetBSD support 
* 983fc788db simplified README, without affecting substance 
* ccfbfffb10 enable serial console on fam15h boards 
* f340a10fbb update pico-serprog to new revision 
* ef0cf81948 Patch SeaBIOS: Add MXM support 
* b5236f00a9 update revision: pico-serprog 
* 5cf9880a9f update pico-serprog to Riku's new revision 
* 73cfc61d65 flashprog: apply the good old MX25 workaround 
* 52f3bb2e64 remove remaining flashrom remnants (use flashprog) 
* 8ec0c79d71 update parabola dependencies for flashprog 
* 789f897688 update arch dependencies for flashprog 
* efdcdd6e4e update trisquel dependencies for flashprog 
* e91acb99a9 update debian dependencies for flashprog 
* 1040b3f623 config/git: use flashprog instead of flashrom 
* 5447f8be00 support making u-boot-only tarballs in releases 
* 8d83340da4 git.sh: also reset xtree/tree_depend here 
* f1549872b8 update/trees: reset xtree/tree_depend before build 
* 72db1389d9 fam15h boards: define xtree 
* fd67f338e9 coreboot/fam15h_udimm: define xtree 
* 5f9ed1e130 don't download projects on release archives 
* aa11288a09 update/release: generate changelogs 
* e9fcc47c08 fix amd mainboard configs 
* 47a39b9ec1 git.sh: fix bad call to ./update 
* 3056a38eaf git.sh: support downloading dependency trees 
* 4621a784e6 re-use crossgcc builds on the coreboot trees 
* 2e6dec0c27 allow multitree projects to define xgcc tree 
* a5b0df897f u-boot: don't define xarch in default 
* 3ac5f337c2 coreboot/*/target.cfg: don't define xarch 
* 14a2d08c03 grub/target.cfg: move --disable-werror 
* e61e376c45 sync to lbmk b71d4fd0 
* 48f6b2fec7 grub: use --disable-werror on ./configure 
* 155a41187c sync to lbmk 33e25a33 
* 849eb62d9c GRUB: insert only 1 keymap per board, in cbfs 
* 1d4e757253 build/roms: err if -k layout doesn't exist 
* acf3d81ccf build/roms: regression fix: uninitialised variable 
* f3905dcbcd config/dependencies/trisquel: replaced package from ttf-unifont to fonts-unifont 
* d2806978dd README.md: Add Latitude E7270 as supported 
* 93b1bb7606 README.md: Add notes about iopl and AC adapter requirement 
* c0e6cac2ad README.md: List E6520, E5530, and M4800 as supported 
* 102ce12cea rebase cbmk 9429287 per lbmk c4d90087..f5b04fa5 
* 9429287d6f disable CONFIG_USE_BLOBS 
* 70d0dbec73 coreboot/fam15h: delete overlooked blob in tree 
* 3854d60a05 don't build u-boot on x86 qemu images 
* 6adbc8680f Canoeboot 20231107 release 
* 75636d4338 Canoeboot 20231103 
* 3b080be907 coreboot/default: delete overlooked blob 
* 93eab03b45 coreboot/fam15h: delete overlooked blobs 
* 8db1b6da37 delete overlooked blobs in src/pico-sdk 
* b78ac6bf83 Canoeboot 20231101 
* 58ec3ca34f Canoeboot 20231026 release 
* a2d4766d41 nonGeNUine Boot 20230717 release 
* 3f7b427581 fsdg20230625 tag from lbmk 
* 472aa3589b censored libreboot c20230710 