OvmfPkg/build.sh: Make GCC5 the default toolchain, catch GCC43 and earlier]
PATCH v3 1/1 OvmfPkg/build.sh: Make GCC5 the default toolchain, catch GCC43 and earlier]
Hey Wei, Anthony,
Are you guys OK pushing this commit: 2667ad40919a in thegit://xenbits.xen.org/ovmf.git
tree? Without this I cannot build Xen 4.8 with TianoCore (--enable-ovmf).
Thanks.
----- Forwarded message from Laszlo Ersek <[email protected]> -----
Date: Thu, 24 Nov 2016 09:51:29 +0100
From: Laszlo Ersek <[email protected]>
To: Konrad Rzeszutek Wilk <[email protected]>, [email protected]
Cc: [email protected]
Subject: Re: [Xen-devel] [PATCH v3] OvmfPkg/build.sh: Make GCC5 the default toolchain, catch GCC43 and earlier
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.0
Quoted 45 lines · Konrad Rzeszutek Wilk
v2:
* Changes suggested by Laszlo:
- change the catch-all (*) to GCC5, from GCC44
- remove the (5.*.*) pattern from GCC49
- generate error for GCC < 4.4In v3, also generate error for really GCC < 4.4, like GCC 1.
Reviewed-by Laszlo Ersek <[email protected]>Reviewed-by Jordan Justen <[email protected]>Bugzilla: https://bugzilla.tianocore.org/show_bug.cgi?id=62
Contributed-under: TianoCore Contribution Agreement 1.0Signed-off-by Konrad Rzeszutek Wilk <[email protected]>---
v1: Initial
v2: Redo it per Laszlo suggestions
v3: Fix up commit message per Jordan
Also generate error for prehistoric versions of GCC, like 1.--- OvmfPkg/build.sh | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)OvmfPkg/build.sh +7
-0@@ -83,6 +83,13 @@ case `uname` in Linux*) gcc_version=$(gcc -v 2>&1 | tail -1 | awk '{print $3}') case $gcc_version in + [1-3].*|4.[0-3].*) + echo OvmfPkg requires GCC4.4 or later + exit 1 + ;; + 4.4.*) + TARGET_TOOLS=GCC44 + ;; 4.5.*) TARGET_TOOLS=GCC45 ;;@@ -95,11 +102,11 @@ case `uname` in 4.8.*) TARGET_TOOLS=GCC48 ;;
OvmfPkg/build.sh case `uname` in · line 112
Quoted 10 lines
OvmfPkg/build.sh +2
-2- 4.9.*|4.1[0-9].*|5.*.*) + 4.9.*) TARGET_TOOLS=GCC49 ;; *) - TARGET_TOOLS=GCC44 + TARGET_TOOLS=GCC5 ;; esac esac
(With gcc-4.8.)
Pushed as commit 2667ad40919a.
Thank you!
Laszlo
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel
----- End forwarded message -----
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel
Quoted 8 lines · Konrad Rzeszutek Wilk
Hey Wei, Anthony,
Are you guys OK pushing this commit:
2667ad40919ain thegit://xenbits.xen.org/ovmf.gittree? Without this I cannot build Xen 4.8 with TianoCore (--enable-ovmf).
We normally don't deviate from upstream. We would need to wait for this to pass osstest pushgate, and then update Config.mk.
Wei.
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel
Quoted 6 lines · Wei Liu
Quoted 5 lines · Konrad Rzeszutek Wilk
Hey Wei, Anthony,
Are you guys OK pushing this commit:
2667ad40919ain thegit://xenbits.xen.org/ovmf.git
Quoted 6 lines
Quoted 3 lines
tree? Without this I cannot build Xen 4.8 with TianoCore (--enable-ovmf).
We normally don't deviate from upstream. We would need to wait for this to pass osstest pushgate, and then update Config.mk.
I see. We seem to be 791 commits behind upstream? Oh, and 770 to catch up with 2667ad40919a. Yikes.
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel
Quoted 11 lines · Konrad Rzeszutek Wilk
Quoted 10 lines · Wei Liu
Quoted 8 lines · Konrad Rzeszutek Wilk
Hey Wei, Anthony,
Are you guys OK pushing this commit:
2667ad40919ain thegit://xenbits.xen.org/ovmf.gittree? Without this I cannot build Xen 4.8 with TianoCore (--enable-ovmf).
Quoted 6 lines
Quoted 2 lines
We normally don't deviate from upstream. We would need to wait for this to pass osstest pushgate, and then update Config.mk.
I see. We seem to be 791 commits behind upstream? Oh, and 770 to catch up with
2667ad40919a. Yikes.
I see that commit has passed our pushgate. I will see what I can do.
In any case, because OVMF is still experimental and disabled by default, we used to update the commit id in stable branches as well. So they will get the latest commit at the end.
Or you can provide a custom tree when building Xen. There isn't really anything that would tie OVMF to a specific version of Xen -- at least not for now.
What is even better is that you can provide a OVMF binary direct via toolstack in this release.
Wei.
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel
Quoted 7 lines · Konrad Rzeszutek Wilk
Hey Wei, Anthony,
Are you guys OK pushing this commit:
2667ad40919ain thegit://xenbits.xen.org/ovmf.gittree? Without this I cannot build Xen 4.8 with TianoCore (--enable-ovmf).
Can you actually start a guest this OVMF (when it's build on Fedora Core 25, and built using the GCC5 toolchain)?
On Arch Linux (gcc (GCC) 6.2.1 20160830), if I build OVMF with the GCC5 toolchain, the firmware fail to boot.
For reference, I have this error:
!!!! X64 Exception Type - 06(#UD - Invalid Opcode) CPU Apic ID - 00000000 !!!!
RIP - 000000001F26AF6B, CS - 0000000000000038, RFLAGS - 0000000000010202 RAX - 0000000000000001, RCX - 000000001F26AF51, RDX - 0000000000000004 RBX - 0000000000000000, RSP - 000000001F43C510, RBP - 000000001E583D18 RSI - 0000000000000003, RDI - 0000000000000001 R8 - 0000000000000000, R9 - 0000000000000000, R10 - 000000001E58DB98 R11 - 0000000000000002, R12 - 000000001E58D898, R13 - 0000000000000000 R14 - 000000001E58D8A0, R15 - 000000001F26D001 DS - 0000000000000030, ES - 0000000000000030, FS - 0000000000000030 GS - 0000000000000030, SS - 0000000000000030 CR0 - 0000000080000033, CR2 - 0000000000000000, CR3 - 000000001F3DB000 CR4 - 0000000000000668, CR8 - 0000000000000000 DR0 - 0000000000000000, DR1 - 0000000000000000, DR2 - 0000000000000000 DR3 - 0000000000000000, DR6 - 00000000FFFF0FF0, DR7 - 0000000000000400
GDTR - 000000001F3C9A98 0000000000000047, LDTR - 0000000000000000
IDTR - 000000001EB0A018 0000000000000FFF, TR - 0000000000000000FXSAVE_STATE - 000000001F43C170
!!!! Find PE image ./Build/OvmfX64/DEBUG_GCC5/X64/OvmfPkg/XenBusDxe/XenBusDxe/DEBUG/XenBusDxe.dll (ImageBase=000000001F266000, EntryPoint=000000001F2669D5) !!!!
I'll try to investigate, and report upstream.
Signature · 6 lines
Anthony PERARD _______________________________________________ Xen-devel mailing list [email protected] https://lists.xen.org/xen-devel
Quoted 11 lines · Anthony PERARD
Quoted 7 lines · Konrad Rzeszutek Wilk
Hey Wei, Anthony,
Are you guys OK pushing this commit:
2667ad40919ain thegit://xenbits.xen.org/ovmf.gittree? Without this I cannot build Xen 4.8 with TianoCore (--enable-ovmf).
Can you actually start a guest this OVMF (when it's build on Fedora Core 25, and built using the GCC5 toolchain)?
Hadn't gotten to that part yet.
Quoted 3 lines
On Arch Linux (gcc (GCC) 6.2.1 20160830), if I build OVMF with the GCC5 toolchain, the firmware fail to boot.
Yikes!
Quoted 16 lines
For reference, I have this error:
!!!! X64 Exception Type - 06(#UD - Invalid Opcode) CPU Apic ID - 00000000 !!!!RIP - 000000001F26AF6B, CS - 0000000000000038, RFLAGS - 0000000000010202 RAX - 0000000000000001, RCX - 000000001F26AF51, RDX - 0000000000000004 RBX - 0000000000000000, RSP - 000000001F43C510, RBP - 000000001E583D18 RSI - 0000000000000003, RDI - 0000000000000001 R8 - 0000000000000000, R9 - 0000000000000000, R10 - 000000001E58DB98 R11 - 0000000000000002, R12 - 000000001E58D898, R13 - 0000000000000000 R14 - 000000001E58D8A0, R15 - 000000001F26D001 DS - 0000000000000030, ES - 0000000000000030, FS - 0000000000000030 GS - 0000000000000030, SS - 0000000000000030 CR0 - 0000000080000033, CR2 - 0000000000000000, CR3 - 000000001F3DB000 CR4 - 0000000000000668, CR8 - 0000000000000000 DR0 - 0000000000000000, DR1 - 0000000000000000, DR2 - 0000000000000000 DR3 - 0000000000000000, DR6 - 00000000FFFF0FF0, DR7 - 0000000000000400
Quoted 9 lines
GDTR - 000000001F3C9A98 0000000000000047, LDTR - 0000000000000000
IDTR - 000000001EB0A018 0000000000000FFF, TR - 0000000000000000FXSAVE_STATE- 000000001F43C170
!!!! Find PE image ./Build/OvmfX64/DEBUG_GCC5/X64/OvmfPkg/XenBusDxe/XenBusDxe/DEBUG/XenBusDxe.dll (ImageBase=000000001F266000, EntryPoint=000000001F2669D5) !!!!I'll try to investigate, and report upstream.
Signature · 1 line
Anthony PERARD
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel