qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 1/5] roms: add the edk2 project as a git submodu


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-devel] [PATCH 1/5] roms: add the edk2 project as a git submodule
Date: Mon, 21 Jan 2019 12:25:04 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0

Cc'ing Daniel & Alex.

On 1/18/19 11:33 PM, Laszlo Ersek wrote:
> The roms/edk2 submodule can help with three goals:
> - build the OVMF and ArmVirtQemu virtual UEFI firmware platforms (to be
>   implemented later),
> - build the EfiRom tool on the fly, which is used in roms/Makefile, for
>   building the "efirom" target,
> - build UEFI test applications (to be run in guests), for qtest support.
> 
> Edk2 commit 85588389222a3636baf0f9ed8227f2434af4c3f9 stands for the latest
> "stable tag", namely "edk2-stable201811".
> 
> The edk2 repository tracks some binary files that should not be removed by
> QEMU's top-level "make clean"; exempt the full pathnames from the "find"
> command.
> 
> Cc: "Michael S. Tsirkin" <address@hidden>
> Cc: Ard Biesheuvel <address@hidden>
> Cc: Gerd Hoffmann <address@hidden>
> Cc: Igor Mammedov <address@hidden>
> Cc: Philippe Mathieu-Daudé <address@hidden>
> Cc: Shannon Zhao <address@hidden>
> Signed-off-by: Laszlo Ersek <address@hidden>
> ---
>  Makefile    | 6 +++++-
>  .gitmodules | 3 +++
>  roms/edk2   | 1 +
>  3 files changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/Makefile b/Makefile
> index dccba1dca27f..1f768e2bcf8f 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -602,7 +602,11 @@ clean:
>       rm -f config.mak op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h 
> gen-op-arm.h
>       rm -f qemu-options.def
>       rm -f *.msi
> -     find . \( -name '*.so' -o -name '*.dll' -o -name '*.mo' -o -name 
> '*.[oda]' \) -type f -exec rm {} +
> +     find . \( -name '*.so' -o -name '*.dll' -o -name '*.mo' -o -name 
> '*.[oda]' \) -type f \
> +             ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-aarch64.a \
> +             ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-arm.a \
> +             ! -path ./roms/edk2/BaseTools/Source/Python/UPT/Dll/sqlite3.dll 
> \

Hmm I never try in-tree builds and thought this rule was for the
archived release out of git, so this wouldn't matter.

> +             -exec rm {} +
>       rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) qemu-ga TAGS cscope.* 
> *.pod *~ */*~
>       rm -f fsdev/*.pod scsi/*.pod
>       rm -f qemu-img-cmds.h
> diff --git a/.gitmodules b/.gitmodules
> index 6b91176098c8..ceafb0ee29a0 100644
> --- a/.gitmodules
> +++ b/.gitmodules
> @@ -49,3 +49,6 @@
>  [submodule "tests/fp/berkeley-softfloat-3"]
>       path = tests/fp/berkeley-softfloat-3
>       url = https://github.com/cota/berkeley-softfloat-3
> +[submodule "roms/edk2"]
> +     path = roms/edk2
> +     url = https://github.com/tianocore/edk2.git

Indeed this is enough to build EfiRom.
However if you want to build firmwares (your patch 4/5), the submodule
is incomplete, until you manually run "submodule update --init --recursive".

I suggest the following change, Daniel/Alex what do you think?

-- >8 --
diff --git a/scripts/git-submodule.sh b/scripts/git-submodule.sh
index 98ca0f2737..5441fe3385 100755
--- a/scripts/git-submodule.sh
+++ b/scripts/git-submodule.sh
@@ -71,7 +71,7 @@ update)
         exit 0
     fi

-    $GIT submodule update --init $modules 1>/dev/null
+    $GIT submodule update --init --recursive $modules 1>/dev/null
     test $? -ne 0 && error "failed to update modules"

     $GIT submodule status $modules > "${substat}"
---

> diff --git a/roms/edk2 b/roms/edk2
> new file mode 160000
> index 000000000000..85588389222a
> --- /dev/null
> +++ b/roms/edk2
> @@ -0,0 +1 @@
> +Subproject commit 85588389222a3636baf0f9ed8227f2434af4c3f9
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]