summaryrefslogtreecommitdiff
path: root/config/data/pico-serprog/mkhelper.cfg
AgeCommit message (Collapse)Author
2025-05-07lib.sh: Simplified fx_() and removed fe_()Leah Rowe
Instead of calling fe_, prefix x_ as indicated. Signed-off-by: Leah Rowe <leah@libreboot.org>
2025-05-07build serprog using fe_ *defined inside mkhelper*Leah Rowe
sh macros ftw Signed-off-by: Leah Rowe <leah@libreboot.org>
2025-05-02mk: include rom.sh directlyLeah Rowe
remove it from mkhelper files, because rom.sh doesn't initialise any variables globally, except one that never changes. Signed-off-by: Leah Rowe <leah@libreboot.org>
2025-04-30serprog: Remove pico2 support for the time beingLeah Rowe
Many users report bugs, so I'm reverting lbmk back to only supporting the rp2040 dongles for the time being. The documentation will be updated to reflect this. Pico2 support will be re-added at a later date, once more testing has been done, and fixes made if necessary.
2025-04-11lbmk: unified PWD handling (work directory)Leah Rowe
instead of running pwd all the time, run it once in lib.sh, and export PWD. for lbmk-specific use of PWD, use xbmkpwd, which contains the value of PWD as was set by the pwd utility in lib.sh. many parts of lbmk rely on pwd, and it *must* be correct. this change adds basic error handling, since pwd can in fact return errors in some cases. Signed-off-by: Leah Rowe <leah@libreboot.org>
2025-04-11lbmk: use pwd util, not PWD environmental variableLeah Rowe
PWD could be anything, if the user manually exported it before running lbmk. always run pwd instead, to get the real string. Signed-off-by: Leah Rowe <leah@libreboot.org>
2025-01-06pico-sdk: Import picotool as a dependencyLeah Rowe
We were previously not handling picotool at all, and pico-sdk would download picotool itself, at build time. This means that the source archive, if created, would not contain picotool. While not strictly required, for complete corresponding source, since it's a toolchain and not the actual pico-serprog firmware, it is my policy that releases must include full corresponding source code, when it is feasible to do so. I must say, I intensely dislike cmake, with such burning passion; I am thoroughly displeased by how hacky this is, but it works and now nothing is in my way for a Libreboot 20241206 rev8 release! Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-12-28rom.sh: Name pico directory serprog_picoLeah Rowe
Previously serprog_rp2040, but we now also support the RP2530 boards. Therefore, serprog_pico is a nice generic name. The directory on release archives will now be serprog_pico instead of serprog_rp2040; it will contain serprog images for both RP2040 and RP2530 devices. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-12-27add spdx headers to various config filesLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-07-10trees: remove project-specific hacksLeah Rowe
move the coreboot-specific includes into mkhelper.cfg for that project. on some projects, we need variables from mkhelper.cfg to be global, so I was including serprog and coreboot mkhelper.cfg files in this script. instead, set a new variable "mkhelpercfg" pointing to the config file. if it doesn't exist, create and then point to a temporary (empty) mkhelper.cfg file. the rom.sh include has been moved to coreboot mkhelper.cfg The only remaining project-specific logic, in this trees script, is now the coreboot crossgcc handling, but this needs to be there as it's also used to build U-Boot. The way this now works, certain includes are done twice. For example, include/rom.sh will be included once globally, outside of main(), and then again in configure_project(). This means that certain functions will be defined twice. I'm uncertain if shell has anything equivalent to an ifdef guard as in C, but we actually want this here anyway, and it shouldn't cause any problems. It's a bit of a hack, but otherwise results in much cleaner code. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-07-07rom.sh: new file, to replace script/romsLeah Rowe
stub it from the trees script. the way it works now, there is less code in the build system. ./build roms this is no longer a thing ./build roms serprog this is also no longer a thing. instead, do: ./update trees -b coreboot targetnamehere ./update trees -b pico-serprog ./update trees -b stm32-vserprog the old commands still works, which causes the new commands to run coreboot roms now appear in elf/, not bin/, as before, but those images now contain payloads. NOTE: to contradict the above: ./build roms is no longer a thing, in that it's now deprecated, but backward compatibility is present for now. it will be removed in a future release. ./build roms list also still works! it will do: ./update trees -b coreboot list also: ./update trees -b grub list this is now possible too if a target "list" is provided, for multi-tree sources, the targets are shown. there is another difference: seagrub roms are now seagrub_, instead of seabios_withgrub. seabios-only roms are no longer provided, where grub is also enabled; only seagrub is used. the user can easily remove the bootorder file, if they want seabios to not try grub first. Signed-off-by: Leah Rowe <leah@libreboot.org>