summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2 daysinit.sh: tidy up the git name/email checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysmk: make main() more readableLeah Rowe
now that main is so small, some of the condensed lines can be loosened up. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysmk: move git check to init.sh xbmk_set_versionLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh: tidy up xbmk_init()Leah Rowe
more version-related code moved to xbmk_set_version Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysmk: move git_init to init.shLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh: minor cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh: clean up setvarsLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh setvars: make err a printf for evalLeah Rowe
setvars is always invoked with eval, so make the error condition a message for eval, to ensure that it is reliably handled, in case of error condition. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh: merge xbmk_child_init with xbmk_initLeah Rowe
the for loop at the end of xbmk_init does essentially the same thing. adapt accordingly, and merge. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh: split xbmk_child_init into functionsLeah Rowe
one function, for one task. skeleton functions for performing multiple tasks. that is the basic coding style guideline for lbmk. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh: move parent fork to new functionLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysinit.sh: Provide more complete error infoLeah Rowe
On initialisation of the child instance, ./mk is executed, but an error from it won't reveal what command was actually executed. This change makes that the case, since x_ does print the command that caused an error. This is useful for debugging. However, we don't want x_ to cause a real exit, because we still need to handle the lock file from the parent instance. Therefore, the first child instance is executed inside a subshell, and xbmk_rval is set if that subshell returns non-zero. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysupdate uefitool to rev a072527, 26 Apr 2025Leah Rowe
This fixes a problem, in that CMake 4.0 dropped compatibility with CMake version 3.5; UEFIExtract/CMakeLists.txt had the line: CMAKE_MINIMUM_REQUIRED(VERSION 3.1.0 FATAL_ERROR) This is lower than 3.5. The new version has this: CMAKE_MINIMUM_REQUIRED(VERSION 3.22) Which is higher than 3.5, in terms of version number. This brings in the following upstream changes: * a072527 Convert other uses of 0xABCD back to ABCDh * a19aead Revert "Update hexadecimal numbers output format from ABCDh to 0xABCD" due to breaking downstream tools * 7752279 Improve region access settings info for Intel v2 descriptor * 6f6debb Add volume header info on NumBlocks and Length used to calcualte alternative size of it * f64ba09 Minor fix for embedded QHexView on Windows * 2b23bbd Implement Apple developer signing for macOS builds * 9cc9518 Update hexadecimal numbers output format from ABCDh to 0xABCD * 73d07cd Add Kaitai-based parser for Dell DVAR store * c8b7151 Fix minor bug while presenting the EOF elemement of AppleSysF store * 892111a Add new fields into Intel Microcode header * 7cea8ee Remove outdated definition of FLASH_PARAMETERS * c38ed92 Add missing header comments to goto*dialog.h * 22bb757 Remove PATH_MAX from realpath * d61d759 Make sure to wrap all uses of kaitai::kstream into try-catch blocks * 7ef3719 Add initial support for Insyde H2O FlashDeviceMap rev4 * 97a85f9 Add Microsoft LZMA section GUID * a077743 Bump version numbers * 07742a5 Update GUID database * a12be6b Address review comments * 9719b0c Update copyright and authors in About UEFITool window * fbf6afd Expand Type column of the report to fit new FlashDeviceMap store and entry types * 3cb5dc0 Add SLIC pubkey and marker parsers * fd0faea Add Phoenix CMDB parser * 01e2e08 Add FFS volume parser for non-AMI NVRAM areas * 4e2a8f6 Add Intel uCode parser * 58366f4 Add Insyde Flash Device Map parser * b98edf6 Add Phoenix EVSA parser * f989fdf Add Phoenix FlashMap parser * 4e600eb Add Apple SysF/Diag parser * 2d6eaa9 Add EDK2 FTW parser * ca7d4ca Add Insyde FDC parser * 34904bd Add KaitaiStruct parsing of Phoenix VSS2 * 489b85f Rewrite VSS and VSS2 NVRAM variable parsers in KaitaiStruct * 2661b8f Remove manual NVRAM parsing, add EDK2 VSS parser written in KaitaiStruct * d91115f Also sign UEFIFind and UEFIExtract for macOS * 0fae05c Add adhoc signature to UEFITool on macOS * 5e6a1c7 Fix CFBundleIdentifier in UEFITool Info.plist * 8d7e01c Make sure to initialize counterUncData * b1ad055 Bump version numbers * 7dd9014 Update GUID database * 4e3fa58 Update QHexView, build it as a library for Qt6 builds * 369f101 Enable building ffsparser_fuzzer during CI/CD, improve readUnaligned to silence Clang UBSAN * ff42cec UEFIExtract: add support for extracting uncompressedData for tree items that have it * c94f78a Add missing common/LZMA/SDK/C/7zWindows.h * b5756f9 Revert old patch from common/LZMA/SDK/C/CpuArch.c * 65fb4a8 Update LZMA SDK to 24.09 * e66bc7d Apply a small patch to common/zlib/gzguts.h to fix a build issue in macOS * dcf21fa Update built-in zlib to 1.3.1 * 0af36bd Fix an issue with kaitai_regenerate.sh creating backup files on modern macOS * fd76e89 Update README.md * 427d8ec Update README.md * a824260 Add MX77L12850F * a777f1f Update main.yml * 5f23377 Update main.yml * 932120c Use x64 macos-13 runner for FreeBSD in main.yml * a8c008c Update macos-12 to macos-latest in main.yml * 6b853f8 Fix SonarCube Scan action version * 66565a5 Try using new SonarCube scan action * 371448d Enable long file paths for UEFIFind * b0cd7fe Update upload-artifacts action to v4 * 4b868bb Remove CodeQL and PVS-Studio from main.yml * 214b356 Add AMIC A25LQ64 to internal JEDEC ID database * 0030ea9 Fix findPattern logic when pattern is at the end of the data * 3441255 fix: add qt version limit to setDesktopFileName * 941ee6c Set desktop file name to fix the missing icon when running under Wayland * c550853 Defined ACCESSPERMS for musl * bf93a5e Bump version numbers * d03a8f2 Fixing FreeBSD action * 0a88da1 Update guids.csv * 6f9a4c0 Fix off-by-one error in parsing IFWI partition table * e0b1e02 Update main.yml * 161c697 Update main.yml * 573452e Update main.yml * 166c797 add Micron XM25RH128C * 0e11189 fix a few misspellings * daf5851 Update README.md * 1cba371 Update guids.csv * 4992474 Fix CPD Extension offset (reverts 29915ca) * 29915ca Fix CPD Manifest's partition offset The ACCESSPERMS patch has been removed, because upstream already dealt with this. Libreboot had made the same fix independently, without realising that upstream also did. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysrename include/vendor.sh to inject.shLeah Rowe
this matches cbmk, where inject.sh is the file name this will make future cherry-picks of lbmk->cbmk easier Signed-off-by: Leah Rowe <leah@libreboot.org>
2 dayslib.sh: move _ua to the xbmkget functionLeah Rowe
don't declare it globally, because it's only used here Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysmove variables out of init.sh to othersLeah Rowe
move them where they are used, or if they are used in many places, move them to lib.sh Signed-off-by: Leah Rowe <leah@libreboot.org>
2 dayslib.sh: rename vendor_checksumLeah Rowe
rename it to bad_checksum, so that its use makes more sense Signed-off-by: Leah Rowe <leah@libreboot.org>
2 dayslib.sh: move singletree() to git.shLeah Rowe
it is primarily used there, and then in mk, but only after git.sh is sourced. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 dayslib.sh: move cbfs() to rom.shLeah Rowe
it is only ever used there, so move it there Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysre-split include/init.sh to lib.shLeah Rowe
move non-init functions to lib.sh Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysrename include/lib.sh to init.shLeah Rowe
this is in prep for the next change, where non-init functions will be moved to another file, again named include/lib.sh Signed-off-by: Leah Rowe <leah@libreboot.org>
2 dayslib.sh: introduce more top-down function orderLeah Rowe
a lot of init code was handled outside of any function. the coding style used in the rest of the build system has now been introduced, with xbmk_init being the main function. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysmk/git.sh: remove tree_depend variableLeah Rowe
this was used alongside the xgcc linking, so that coreboot trees could specify that another tree was to be downloaded. since this variable will no longer be used, it should be removed, to avoid dead code bloat. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysgit.sh: remove unused xgcc linking featureLeah Rowe
the "xtree" variable is used by projects such as u-boot, to export a CROSS_COMPILE variable specifying prefix for gnu compilers, and for building the named coreboot tree. for example, xtree can be "default", which is then the coreboot tree downloaded, for use of crossgcc. however, it is also used to symlink identical versions of crossgcc between coreboot trees. this latter feature was only needed for fam15h boards which were previously split between two mostly identical coreboot trees, that were later merged into a single tree, and this feature is therefore no longer used. remove this dead code, to reduce bloat in the build system. Signed-off-by: Leah Rowe <leah@libreboot.org>
2 daysmk: remove unused variables (ser/xp)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
3 daysmk: simplify main()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
3 dayslib.sh: use realpath to get sys python on venvLeah Rowe
In the previous revision, I make hardcoded use of /usr/local/bin and /usr/bin as search locations, instead of relying on PATH, when the user has a python venv, because in those cases, we cannot rely on PATH so we use a python command to detect the venv and then force use of the normal system path for python. However, there's no guarantee that the real Python will indeed live at these locations. For example, some distros like Nix or Guix will use many locations for different versions of a given package, and it's for the birds as to what given package version the user might be running. Therefore, this patch retains that current hardcoded assumption of /usr/local/bin and /usr/bin but *only* as a fallback solution, instead checking realpath first. The "realpath" command isn't technically POSIX standard, but in practise it is available on GNU coreutils, Busybox, and the various BSD userlands. I could perhaps *import* a realpath utility, and use that, but this should be fine. Signed-off-by: Leah Rowe <leah@libreboot.org>
3 dayslib.sh: Force use of System Python to prevent hangLeah Rowe
If the user has a virtual environment, the current logic will cause lbmk to hang. A useful workaround is to force use of the direct path to the system binary of python. This works by detecting a virtual environment first, and deferring to the old behaviour if no venv is found. If one is found, then it will not rely on PATH, but instead only search the standard locations /usr/local/bin and /usr/bin. Signed-off-by: Leah Rowe <leah@libreboot.org>
6 dayslib.sh: further condense the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
6 dayslib.sh: further simplify the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
6 dayslib.sh: condense the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
6 dayslib.sh: simplify mk()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
6 dayslib.sh: simplify cbfs()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
6 dayslib.sh: simplify the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
6 daysmk: remove mkhelp() and use x_() insteadLeah Rowe
x_ and mkhelp pretty much do the same thing in fact, there is no functional difference Signed-off-by: Leah Rowe <leah@libreboot.org>
6 daysmk: simplify handling of trees()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
7 dayscoreboot/hp8300cmt: purge xhci_overcurrent_mappingLeah Rowe
This prevents a build error, as the variable is no longer used at all by coreboot (EHCI mapping is used as reference instead). Signed-off-by: Leah Rowe <leah@libreboot.org>
7 daysFix VBT path on HP Elite desktopsLeah Rowe
Also: hp8300cmt_16mb did not specify a data.vbt path, even though it is indeed available in the coreboot tree. This has been corrected. The previous lack of VBT on hp8300cmt_16mb wasn't really a big problem, since coreboot handles initialisation anyway, and it's basically optional on Linux. Coreboot doesn't parse VBT at all. This patch should fix build errors, that were caused on the recent revision update, where several of the HP desktops have now been turned into variants. Signed-off-by: Leah Rowe <leah@libreboot.org>
7 dayslib.sh: add missing copyright yearLeah Rowe
alper made a fix to this file a few hours ago, but forgot to update the copyright header i'm doing it for alper, as a courtesy Signed-off-by: Leah Rowe <leah@libreboot.org>
7 daysifd/q45t_am: unlock regions by defaultLeah Rowe
i used ifdtool --unlock to do this Signed-off-by: Leah Rowe <leah@libreboot.org>
7 dayscoreboot/g43t_am3: use ifd-based setupLeah Rowe
no-ME setup. with a gbe file. we previously made this a descriptorless setup. Signed-off-by: Leah Rowe <leah@libreboot.org>
7 dayscoreboot/q45t_am3: use ifd-based setupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
7 dayscoreboot/default: add missing submodulesLeah Rowe
due to a rule in .gitignore, these were ignored, because it ignores .tar.xz entries in git status Signed-off-by: Leah Rowe <leah@libreboot.org>
7 daysNEW MAINBOARD: Acer Q45T-AM (G43T-AM3 variant)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
7 daysmk: don't print confirmation of git pkg.cfgLeah Rowe
otherwise, the "list" commands include such text, where they should not. Signed-off-by: Leah Rowe <leah@libreboot.org>
7 dayscoreboot/g43t_am3: fix data.vbt pathLeah Rowe
this board became a variant, in the new coreboot revision that lbmk recently updated to. fix the data.vbt path to prevent error. Signed-off-by: Leah Rowe <leah@libreboot.org>
7 daysadd missing config/data/coreboot/0Leah Rowe
this is a file containing one byte, of value zero i meant to add it in previous commits, for the resizing and shrinking of tarballs when inserting or deleting vendor files used by include/vendor.sh Signed-off-by: Leah Rowe <leah@libreboot.org>
7 daysMerge pull request 'lib.sh: Fix python3 detection when 'python' is python2' ↵Leah Rowe
(#290) from alpernebbi/lbmk:python3-detection-fix into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/290
7 dayslib.sh: Fix python3 detection when 'python' is python2Alper Nebi Yasak
Properly set $pyver to "3" when we detect we can use python3. In the following version checks, use the $python we detected instead of a 'python' from PATH because the latter might be a python2 while still co-existing with a python3. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
8 dayscoreboot/next: merge with coreboot/defaultLeah Rowe
I also cherry-picked a patch from Heads, that fixes build issues caused by the hacks in the T480 port; several changes made by Mate are now ifdef'd based on whether a KabyLake ThinkPad is specified in defconfig. Signed-off-by: Leah Rowe <leah@libreboot.org>