Message ID | 20240327102448.61877-2-kraxel@redhat.com |
---|---|
State | New |
Headers | show |
Series | edk2: get version + date from git submodule | expand |
On Wed, 27 Mar 2024 at 10:26, Gerd Hoffmann <kraxel@redhat.com> wrote: > > Turned out hard-coding version and date in the Makefile wasn't a bright > idea. Updating it on edk2 updates is easily forgotten. Fetch the info > from git instead. Store in edk2-version, so this can be committed to > the repo and is present in tarballs too. > > Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> > --- > roms/Makefile | 17 ++++++++++++++--- > 1 file changed, 14 insertions(+), 3 deletions(-) > > diff --git a/roms/Makefile b/roms/Makefile > index edc234a0e886..783a5cab4f4c 100644 > --- a/roms/Makefile > +++ b/roms/Makefile > @@ -52,6 +52,8 @@ SEABIOS_EXTRAVERSION="-prebuilt.qemu.org" > # > EDK2_EFIROM = edk2/BaseTools/Source/C/bin/EfiRom > > +-include edk2-version > + > default help: > @echo "nothing is build by default" > @echo "available build targets:" > @@ -147,10 +149,19 @@ skiboot: > $(MAKE) -C skiboot CROSS=$(powerpc64_cross_prefix) > cp skiboot/skiboot.lid ../pc-bios/skiboot.lid > > -efi: > +edk2-version: edk2 > + if test -e edk2/.git; then \ > + echo "EDK2_STABLE = $$(cd edk2; git describe --tags --match 'edk2-stable*')" > $@; \ > + echo "EDK2_DATE = $$(cd edk2; git log -1 --pretty='format:%cd' --date='format:%m/%d/%Y')" >> $@; \ > + else \ > + touch $@; \ > + fi > + > +efi: edk2-version Do we actually need this dependency, by the way? I think Make will rebuild edk2-version regardless because it's included (and it would be too late to rebuild it as merely a dependency of 'efi' here). > $(PYTHON) edk2-build.py --config edk2-build.config \ > - --version-override "edk2-stable202302-for-qemu" \ > - --release-date "03/01/2023" > + --version-override "$(EDK2_STABLE)-for-qemu" \ > + --release-date "$(EDK2_DATE)" \ > + --silent --no-logs > rm -f ../pc-bios/edk2-*.fd.bz2 > bzip2 --verbose ../pc-bios/edk2-*.fd > > -- > 2.44.0 -- PMM
diff --git a/roms/Makefile b/roms/Makefile index edc234a0e886..783a5cab4f4c 100644 --- a/roms/Makefile +++ b/roms/Makefile @@ -52,6 +52,8 @@ SEABIOS_EXTRAVERSION="-prebuilt.qemu.org" # EDK2_EFIROM = edk2/BaseTools/Source/C/bin/EfiRom +-include edk2-version + default help: @echo "nothing is build by default" @echo "available build targets:" @@ -147,10 +149,19 @@ skiboot: $(MAKE) -C skiboot CROSS=$(powerpc64_cross_prefix) cp skiboot/skiboot.lid ../pc-bios/skiboot.lid -efi: +edk2-version: edk2 + if test -e edk2/.git; then \ + echo "EDK2_STABLE = $$(cd edk2; git describe --tags --match 'edk2-stable*')" > $@; \ + echo "EDK2_DATE = $$(cd edk2; git log -1 --pretty='format:%cd' --date='format:%m/%d/%Y')" >> $@; \ + else \ + touch $@; \ + fi + +efi: edk2-version $(PYTHON) edk2-build.py --config edk2-build.config \ - --version-override "edk2-stable202302-for-qemu" \ - --release-date "03/01/2023" + --version-override "$(EDK2_STABLE)-for-qemu" \ + --release-date "$(EDK2_DATE)" \ + --silent --no-logs rm -f ../pc-bios/edk2-*.fd.bz2 bzip2 --verbose ../pc-bios/edk2-*.fd
Turned out hard-coding version and date in the Makefile wasn't a bright idea. Updating it on edk2 updates is easily forgotten. Fetch the info from git instead. Store in edk2-version, so this can be committed to the repo and is present in tarballs too. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- roms/Makefile | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-)