update/repos: concatenate multiple revision files

With this change, it's still possible to have a single
file at config/git/revisions, but this has been scrapped.

Instead, multiple files now exist under config/git/ with
the same modules declared, but the files are separated
logically. List of files under config/git:

* bios_extract
* biosutilities
* coreboot
* flashrom
* grub (gnulib also defined here)
* me_cleaner
* memtest86plus
* seabios
* serprog (multiple projects defined)
* u-boot
* uefitool

The rationale behind this change is simple: in the future,
we will stop relying on build systems within imported
projects for the import of git submodules. Instead, we
will handle them directly in lbmk.

Additionally, a Linux payload is planned for Libreboot, made
easier by the recent audit (script handle/make/config makes
it easy to integrate Linux, and handle cross-compilers for
userland utilities); a "linux" file under config/git/ could
also define rules for each project besides linux, such as
musl libc, busybox and other utilities.

Signed-off-by: Leah Rowe <leah@libreboot.org>
btrfsvols
Leah Rowe 2023-09-25 00:40:56 +01:00
parent 7966f9111d
commit a7b767a47b
13 changed files with 106 additions and 115 deletions

5
config/git/bios_extract Normal file
View File

@ -0,0 +1,5 @@
{bios_extract}{
rev: 0a7bc1d71735ef97b00dfec0fd54a02fcc5d1bb0
loc: bios_extract
url: https://review.coreboot.org/bios_extract
}

5
config/git/biosutilities Normal file
View File

@ -0,0 +1,5 @@
{biosutilities}{
rev: 03ae0cf0706ede5a2a15da0986c19c776d0e6b26
loc: biosutilities
url: https://github.com/platomav/BIOSUtilities
}

6
config/git/coreboot Normal file
View File

@ -0,0 +1,6 @@
{coreboot}{
rev: HEAD
loc: coreboot/coreboot
url: https://review.coreboot.org/coreboot
bkup_url: https://github.com/coreboot/coreboot.git
}

5
config/git/flashrom Normal file
View File

@ -0,0 +1,5 @@
{flashrom}{
rev: 11680db4e1251eb842bee11e53b6d1f0ae67767b
loc: flashrom
url: https://review.coreboot.org/flashrom.git
}

13
config/git/grub Normal file
View File

@ -0,0 +1,13 @@
{grub}{
rev: db1faedccdce3cf83336155a95c04a8db03744c5
loc: grub
url: git://git.savannah.gnu.org/grub.git
bkup_url: http://git.savannah.gnu.org/r/grub.git
depend: gnulib
}
{gnulib}{
rev: 9f48fb992a3d7e96610c4ce8be969cff2d61a01b
loc: grub/gnulib
url: git://git.sv.gnu.org/gnulib
}

5
config/git/me_cleaner Normal file
View File

@ -0,0 +1,5 @@
{me_cleaner}{
rev: 43612a630c79f3bc6f2653bfe90dfe0b7b137e08
loc: me_cleaner
url: https://github.com/corna/me_cleaner.git
}

5
config/git/memtest86plus Normal file
View File

@ -0,0 +1,5 @@
{memtest86plus}{
rev: 5dcd424ea7afb857c1171e747ef064d98d26afeb
loc: memtest86plus
url: https://github.com/memtest86plus/memtest86plus.git
}

View File

@ -1,113 +0,0 @@
# This file contains information needed for getting the correct versions
# for various git projects used by lbmk.
# Project name is enclosed by curly braces '{}' information about the
# project relevant to lbmk is stored between the subsequent curly
# braces. This file is used by the fetch script. Each entry must include:
# revision 'rev', 'location', 'loc', and the git url 'url'. Optional: 'bkup_url'
{coreboot}{
rev: HEAD
loc: coreboot/coreboot
url: https://review.coreboot.org/coreboot
bkup_url: https://github.com/coreboot/coreboot.git
}
{u-boot}{
rev: HEAD
loc: u-boot/u-boot
url: https://source.denx.de/u-boot/u-boot.git
bkup_url: https://github.com/u-boot/u-boot.git
}
{grub}{
rev: db1faedccdce3cf83336155a95c04a8db03744c5
loc: grub
url: git://git.savannah.gnu.org/grub.git
bkup_url: http://git.savannah.gnu.org/r/grub.git
depend: gnulib
}
{gnulib}{
rev: 9f48fb992a3d7e96610c4ce8be969cff2d61a01b
loc: grub/gnulib
url: git://git.sv.gnu.org/gnulib
}
{me_cleaner}{
rev: 43612a630c79f3bc6f2653bfe90dfe0b7b137e08
loc: me_cleaner
url: https://github.com/corna/me_cleaner.git
}
{memtest86plus}{
rev: 5dcd424ea7afb857c1171e747ef064d98d26afeb
loc: memtest86plus
url: https://github.com/memtest86plus/memtest86plus.git
}
{seabios}{
rev: HEAD
loc: seabios/seabios
url: https://review.coreboot.org/seabios
bkup_url: https://github.com/coreboot/seabios
}
{flashrom}{
rev: 11680db4e1251eb842bee11e53b6d1f0ae67767b
loc: flashrom
url: https://review.coreboot.org/flashrom.git
}
{bios_extract}{
rev: 0a7bc1d71735ef97b00dfec0fd54a02fcc5d1bb0
loc: bios_extract
url: https://review.coreboot.org/bios_extract
}
{biosutilities}{
rev: 03ae0cf0706ede5a2a15da0986c19c776d0e6b26
loc: biosutilities
url: https://github.com/platomav/BIOSUtilities
}
{uefitool}{
rev: 4a41c33596e9bc3ae812e763965d91ac57553e02
loc: uefitool
url: https://github.com/LongSoft/UEFITool
}
{rpi-pico-sdk}{
rev: 6a7db34ff63345a7badec79ebea3aaef1712f374
loc: util-fw/rp2040/pico-sdk
url: https://github.com/raspberrypi/pico-sdk
}
{rpi-pico-tinyusb}{
rev: 86c416d4c0fb38432460b3e11b08b9de76941bf5
loc: util-fw/rp2040/pico-sdk/lib/tinyusb
url: https://github.com/hathach/tinyusb.git
}
{rpi-pico-serprog}{
rev: c8c16e9c11fe9e5b7230ff358f79de3f1951e1d9
loc: util-fw/rp2040/pico-serprog
url: https://codeberg.org/libreboot/pico-serprog
bkup_url: https://notabug.org/libreboot/pico-serprog
depend: rpi-pico-sdk
depend: rpi-pico-tinyusb
}
{stm32-vserprog}{
rev: 8fcf0a4d41800631b571fa7bbd1d8b251f0a2111
loc: util-fw/stm32-vserprog
url: https://codeberg.org/libreboot/stm32-vserprog
bkup_url: https://notabug.org/libreboot/stm32-vserprog
depend: libopencm3
}
{libopencm3}{
rev: 458250dc6147dc807eec9e4d5a6caf38a699ecb1
loc: util-fw/stm32-vserprog/libopencm3
url: https://github.com/libopencm3/libopencm3
}

6
config/git/seabios Normal file
View File

@ -0,0 +1,6 @@
{seabios}{
rev: HEAD
loc: seabios/seabios
url: https://review.coreboot.org/seabios
bkup_url: https://github.com/coreboot/seabios
}

34
config/git/serprog Normal file
View File

@ -0,0 +1,34 @@
{rpi-pico-sdk}{
rev: 6a7db34ff63345a7badec79ebea3aaef1712f374
loc: util-fw/rp2040/pico-sdk
url: https://github.com/raspberrypi/pico-sdk
}
{rpi-pico-tinyusb}{
rev: 86c416d4c0fb38432460b3e11b08b9de76941bf5
loc: util-fw/rp2040/pico-sdk/lib/tinyusb
url: https://github.com/hathach/tinyusb.git
}
{rpi-pico-serprog}{
rev: c8c16e9c11fe9e5b7230ff358f79de3f1951e1d9
loc: util-fw/rp2040/pico-serprog
url: https://codeberg.org/libreboot/pico-serprog
bkup_url: https://notabug.org/libreboot/pico-serprog
depend: rpi-pico-sdk
depend: rpi-pico-tinyusb
}
{stm32-vserprog}{
rev: 8fcf0a4d41800631b571fa7bbd1d8b251f0a2111
loc: util-fw/stm32-vserprog
url: https://codeberg.org/libreboot/stm32-vserprog
bkup_url: https://notabug.org/libreboot/stm32-vserprog
depend: libopencm3
}
{libopencm3}{
rev: 458250dc6147dc807eec9e4d5a6caf38a699ecb1
loc: util-fw/stm32-vserprog/libopencm3
url: https://github.com/libopencm3/libopencm3
}

6
config/git/u-boot Normal file
View File

@ -0,0 +1,6 @@
{u-boot}{
rev: HEAD
loc: u-boot/u-boot
url: https://source.denx.de/u-boot/u-boot.git
bkup_url: https://github.com/u-boot/u-boot.git
}

5
config/git/uefitool Normal file
View File

@ -0,0 +1,5 @@
{uefitool}{
rev: 4a41c33596e9bc3ae812e763965d91ac57553e02
loc: uefitool
url: https://github.com/LongSoft/UEFITool
}

View File

@ -36,6 +36,12 @@ main()
read_config() read_config()
{ {
revfile="$(mktemp -t gitrevisions.XXXXXXXXXX)" || \
fail "read_config: Cannot initialise tmpfile"
cat config/git/* > "${revfile}" || \
fail "read_config: Cannot concatenate revision files"
awkstr=" /\{.*${name}.*}{/ {flag=1;next} /\}/{flag=0} flag { print }" awkstr=" /\{.*${name}.*}{/ {flag=1;next} /\}/{flag=0} flag { print }"
while read -r line ; do while read -r line ; do
set ${line} || fail "read_config: set line" set ${line} || fail "read_config: set line"
@ -52,8 +58,11 @@ read_config()
depend="${depend} ${2} " ;; depend="${depend} ${2} " ;;
esac esac
done << EOF done << EOF
$(eval "awk '${awkstr}' config/git/revisions") $(eval "awk \"${awkstr}\" \"${revfile}\"")
EOF EOF
rm -f "${revfile}" || \
fail "read_config: can't remove tmp revfile"
} }
verify_config() verify_config()
@ -115,7 +124,7 @@ usage()
Usage: ./update project repo [name] Usage: ./update project repo [name]
Options: Options:
name: Module name as specified in config/git/revisions name: Module name as specified in files under config/git/
EOF EOF
} }