[pve-devel] [RFC edk2-firmware] Initial commit
Fabian Grünbichler
f.gruenbichler at proxmox.com
Wed Mar 14 12:32:46 CET 2018
looks good all in all, some minor nits below
On Tue, Mar 13, 2018 at 04:29:24PM +0100, Thomas Lamprecht wrote:
> Currently builds OVMF in a simmilar fashion the Debian package does,
> we just focus on a x86_64 build for now, disable secure boot (was
> disabled in our binary images from pve-qemu, it needs a static build
> of an specific version of OpenSSL, bit of an headache) and has our
> Logo for the boot splash.
>
> Signed-off-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
> ---
> .gitignore | 4 +++
> .gitmodules | 3 +++
> Makefile | 47 ++++++++++++++++++++++++++++++++
> debian/Logo.bmp | Bin 0 -> 49078 bytes
> debian/changelog | 6 +++++
> debian/clean | 4 +++
> debian/compat | 1 +
> debian/control | 21 +++++++++++++++
> debian/copyright | 29 ++++++++++++++++++++
> debian/pve-edk2-firmware.install | 3 +++
> debian/pve-edk2-firmware.links | 1 +
> debian/rules | 56 +++++++++++++++++++++++++++++++++++++++
> edk2 | 1 +
> 13 files changed, 176 insertions(+)
> create mode 100644 .gitignore
> create mode 100644 .gitmodules
> create mode 100644 Makefile
> create mode 100644 debian/Logo.bmp
> create mode 100644 debian/changelog
> create mode 100644 debian/clean
> create mode 100644 debian/compat
> create mode 100644 debian/control
> create mode 100644 debian/copyright
> create mode 100644 debian/pve-edk2-firmware.install
> create mode 100644 debian/pve-edk2-firmware.links
> create mode 100755 debian/rules
> create mode 160000 edk2
>
> diff --git a/.gitignore b/.gitignore
> new file mode 100644
> index 0000000..a4c231b
> --- /dev/null
> +++ b/.gitignore
> @@ -0,0 +1,4 @@
> +*.deb
> +*.buildinfo
> +*.changes
> +edk2.build
> diff --git a/.gitmodules b/.gitmodules
> new file mode 100644
> index 0000000..e24b385
> --- /dev/null
> +++ b/.gitmodules
> @@ -0,0 +1,3 @@
> +[submodule "edk2"]
> + path = edk2
> + url = ../mirror_edk2
> diff --git a/Makefile b/Makefile
> new file mode 100644
> index 0000000..831dcff
> --- /dev/null
> +++ b/Makefile
> @@ -0,0 +1,47 @@
> +PACKAGE=pve-edk2-firmware
> +VER=1.$(shell date -d @$$(dpkg-parsechangelog -S timestamp) '+%Y%m%d')
why not 'dpkg-parsechangelog -S version'? ;)
> +PKGREL=1
> +
> +SRCDIR=edk2
> +BUILDDIR=${SRCDIR}.build
> +
> +GITVERSION:=$(shell git rev-parse HEAD)
> +
> +DEB=${PACKAGE}_${VER}-${PKGREL}_all.deb
> +
> +all: ${DEB}
> + @echo ${DEB}
> +
> +.PHONY: deb
> +deb: ${DEB}
> +${DEB}: | submodule
> + rm -rf ${BUILDDIR}
> + cp -rpa ${SRCDIR} ${BUILDDIR}
> + cp -a debian ${BUILDDIR}
> + echo "git clone git://git.proxmox.com/git/pve-guest-fw-edk2.git\\ngit checkout ${GITVERSION}" > ${BUILDDIR}/debian/SOURCE
name of repo and package are different - intentional or leftover from
previous iteration?
> + cd ${BUILDDIR}; dpkg-buildpackage -rfakeroot -b -uc -us
'-rfakeroot' is redundant, it's the default if you are not root, and if
you are root it will cause a warning to be printed.
> + lintian ${DEB}
> + @echo ${DEB}
> +
> +.PHONY: submodule
> +submodule:
> + test -f "${SRCDIR}/Readme.md" || git submodule update --init
> +
> +.PHONY: update_modules
> +update_modules: submodule
> + git submodule foreach 'git pull --ff-only origin master'
> +
> +.PHONY: upload
> +upload: ${DEB}
> + tar cf - ${DEB}|ssh -X repoman at repo.proxmox.com -- upload --product pmg,pve --dist stretch
do we need it in pmg? our qemu is only available in PVE
> +
> +.PHONY: distclean
> +distclean: clean
> +
> +.PHONY: clean
> +clean:
> + rm -rf *~ debian/*~ *.deb ${BUILDDIR} *.changes *.dsc *.buildinfo
> +
> +.PHONY: dinstall
> +dinstall: ${DEB}
> + dpkg -i ${DEB}
> diff --git a/debian/Logo.bmp b/debian/Logo.bmp
> new file mode 100644
> index 0000000000000000000000000000000000000000..4c46dd84772b32fa5c70e31d2483d66850495dc3
> GIT binary patch
> literal 49078
> zcmeHP33wGnwmzxmKD=<B2@*sx$i9R at 1O=5v%#%%mZ1M(-iXez=PrwH=Am|7#41(ae
> zuqh!50%1NgKAJHN5 at mF7VG#rYVH5;GHYX?$Ai2xyIn~{@^}SgJ;`jXCRPp6 at b#3R=
> z|JSL#xwCivMsVCMRREf!?+-};Q}CGtS2*F*HvrVE?*3sQjd1_q-v9_rQWXO9nG^)5
> zk_1(;oFoiLGO9r}Okz~24ul2<QlQEe0SE-EVwM^JS6l^EtD}r+HQ|a-H6Ybf!KijE
> zRJ$?+ at b9$&Lf1jfl<E*lxf0;Yx^QKUWH7F503 at X@Kyo8UsflHzGy<qmAFfKR2}xHq
> zftpui88w>%q&A1EufZ}>Tf#MUt^rcJ1sGSi0;t^vu1%{0b<(bbq-$>msM8M8>eYq1
> z^{xlF?iPIS0N2;A2lX1%2P3T$G-%WS;QBkDVdF;7s7Yf;s{bDV^?N{*W+<a!S7_S2
> z89?Li&@8<<kjA~B`LEI;y=4o4rhNdK^@CrvY6(fr`vYnAYq;S?l;7e%@$Wvk at ut?$
> z=H{CqspSJeZWs*EY6#qXOIv7nE9%htA%Hf+;nw!I0ckS|$juJ}+%yJm>)0Nk-AI78
> zk3z at WJ3-Pd6X5oY&H(Kv0^IgEWOPB at I{p@*!!$_h_#|}c-W5ov-$A##x&w5c4sgc|
> z=#hCBK*lrZp9MX8WkTlNnE-b_2jtE<kks|}0A1$7-F<rlbbAq?`%BPo0P3E(00s<1
> zy?ZSJ$jk=l{TjgCIWRD55I~<dA?yAuNb0*Bp#Ms^|G at _U2IRuvp$`Jw^C$HG4-6fS
> z^%;~0WS|MdM?4Hw2E7ZAl at B9EJpypwdi=u%_`rKGYV2r$!3AJE at DYr8bS%Jwn*fIX
> z1^+&SM<<K}7`7Q;_*O`IcpE%6>A#`M at SR|c*beZ>4w(4cNdP1Ez@*8)0T}re!07!j
> zc`CNzF at J-kvERVdC#He%Uk3ml{T2d`9t0S72%dQANr3T((SICZ!guhy8BgK+Nr1<W
> z!i;C0hG%9z3(w7(3BR8`3ueuE9%j#-124Qd7v{b6BK+Z%m*D03ufY683t-`Ei(t{~
> zufgK%*WvZ0OJGS(He|oC6qdf318=^y43 at 8a3s&T=gjIjch1GBW5&pF19e8K$8d&pZ
> z6aH+y3;F9Uu-;n->o%;1^#$+2h7Ss$VB`Dn{)ZpH#=m|DAAS5+*!1bg at bPD#z-L=G
> z!{%*UV9WNcux-cZuzlwa*s<#i*tvTb?Ar4se7Scw?Af;$_I<q{zCQR395{3kzWweH
> z96tIT965dzzCUpcj-NUKCw at 2yrwV_7!k<pV=`%mVPv_3SnWD3B_WU_Gcd-bHiZ8&0
> zl8bOLTnxpL5-5p=AsmZ9#EwGL{$C*4X#_L^8Uc-fMnEH=5zq)|1T+E~0gZr0KqH_L
> z&<JP*Gy)m{jetf#BcKt`2xtT}0vZ90fJQ(gpb^jrXaqC at 8Uc-fMnEH=5zq)|1T+E~
> z0gZr0KqH_L&<JP*Gy)od|6d3+?U71IsMI>8mmOVdJ{@r>2#nZcQ at 82%#F-}_cA`IO
> zn>bpBRxSdqzp?EIb;w8p6UjK}Mn`S?!^#z`OG|`6Q#<A~f9L0993fdq6L()FDnN%-
> zE&}s8+-L}ezA>bGNtj1RBX?G=WL;W91PWveIiMs-FXC+2#r9AoPQUzI2z)L;x9vTW
> zl+?2&Qq(vpMtgrw1a=D4BRHsgE=0bU!{-xXU=00pf4pS+Q8@^7doDXCXYs@|5+GF%
> z$)olfR=zvWbvTLI>nIDIr)TG6XHRK?d9<rk1iIu|CUurIy%qxfcVP)pdyXq<uT0V>
> z7}hG=axz)g!j_e)%)fkLDbo>I%W<Y<_9R9FiIA}U1O at 05L6L3m!hrEo9&5-YV(6Q{
> zU1BLpHp4U4fYX&KQE1Z%B9nb-N_nlQsv$XHB6*_x1j;y(T^JiKCw&R&S|nS;z!2FW
> z({UV4=y5l#$6_w;vA#HS<S`+!OrKr&QR!F={N`-Qg~Ipc0%rWZI1+Z&s`5|x!m)vJ
> zDr_msa&wnW;u^`32ATL~ZeGsBpclC5+_715d>Q`KEvJi{3am#TK35Wsa~DqUXeyUs
> z7?a-2&0RXmNYpq;U<%cAO#JveKmph4Oh}f5f5h(khAr`P0wq2o=dki>aV7SgkJ^!n
> z)e+~+_NGoer|ii(ZQJ4E5){f2n2PJ6;zX__YX6wUGY7}7^?K3q*YH5*3H*k2u at h6A
> zu&ozS#3B}5#<Mj}aw2v*(`II|9V<zo4AuBR1}`W0c)qJl{uq{%$B~pNOquZ_(DU7^
> zz-zT2WVA$xEiD7>i)ZUlI=udk=F6k$ncL?Ox0Ah=^|Yh-uee{lrewA4E`lO9n^lLl
> z+A(S8KvvF4%Vr&E3t3G}Yt_}v3_LArEEkcvHK+l7?v(kp&rDGxpHjnIg%}?@RQbvq
> zmN?IoS8ElMXIU$Vs!T8ihin$TJm|Nd2`q{}^VX&jGEZ6;%1FeT8su&{wMFfTJC_f8
> z3lAvWgKXINS2r%jd?$w1ax05_PpNa<ON`Ar2u?D%%U2;t$<5<Y)~imO%ZI&}iE*Fl
> zYkXa9hV8DrJU%wZ$yWlxwwpabmI`@!YgHK`Y{uNZ;-8`V#sh0bN`Sm25hCP8G7Zv&
> z7vy+)%91=j>~X#pCa3ZIF6zZa{-}QTMNeKKYo{~h{!%C-d>8G0PB8(Q5Hr{9m7JKM
> z8dJjw^!Tt>%Q|$$V)x7H*DmrDa`*@-U58LX_)5Yzy5$+U+ypFhxnv;$BDD>S at tX%R
> z44h+0jwV?rBrspt9!p3&A%xDc9+K-qJU*f}gHnlAUYHfUtAvJ9Pk7QIu at NlhjJz|z
> zlu at 2BI_IOVx>QqZVNeX~vgKHw<#>EVY&Wm_dz5y$ayQEN^j!N$*iIE??DbxGM!sYP
> zi#Z`dk|VJ8TaK4C at Ty3HFu#hy+ZbX(7%oN{=E at 1J30{8h!TE4z$!eVMjg`J%4d1|}
> z at x6hUcu*OhOs`4TlAFu(yzIFm*t8m{eAqEAijbitw0l0vGls}dOsd1jRHiozP4p!0
> zkQAyVV>O$XxmYM;SwT-39_xC7N&~W<MK<HcttEt{NP`p#o8s&GSbr6fcfNd*yjNbY
> zPIBikm3K`Cc{Uv1%Xe9<loq10ruDQ_NRUhuz~rrM#Y$%VRroLqA!H*J6}9;+DVcED
> z4j+4*84C|f<cZn0vhv!<<HX|*SOFsSMS1xxSyJCKAf_LV?$ZcKKA=kb3n9TAQCmzV
> zDECTZe1rv>J~{lA^U<9liBXMDd)1AF`}35WR5cR634`n=W-gXB-szkt3OX#S9q+Cg
> zACZ$xR&ugidgKrbA(>pB!^gMc%z;P5dDs+-sDmx-+YP#uX3n%aayfCHCUnDuInx?R
> zNbQrdq%BDATo&&<Uydt- at ew_}Xtm!hne~J>&^g&SAFQXLq1!!yQ8C7bLU?A$+>Xya
> zmE5L1yb!VTX^?w_k|ypQ1jxODA=4V*FyyGf`S>y2dB>kMuB6C?OcpYS$#&NthdCdS
> zZJ&N3xlKETGT3rmXP|8EOluH^4iU;&Rxg$?(X-`Ro|SqA5K>n<^7sO?%vKUCtj=2+
> zD~|EO>!5m0?-sVeweO#r>^U-nCl~e=3gIEK<HUM|iNmD|n~ZPfVMN8?LDE at h?KCr<
> zlJoIXYZm5BZEZd#6ES)@_Ho4HBUUtw<zdg6TzfGd;g*1qj%x#>mrTcS(Kc8i($nZD
> zXEpQhAXRU>z+ at c3gwrGgvT(sA<@LPf at DYu96H`pi`51e9ThHCb(Xhq7gW#hiZq|mK
> zJ6*+4C-XsYAugO`9hNmo9`NG%C}8y3cCxojEQOD-dRT`QN^b3Hg1>?f41ZRrV&*H0
> zg(+pyfm!>=<e64`x^v>rHIF3+$S6 at T`toqq80X62gYG)8#TG+SAV9}a&xMb_hj)$~
> zC-?|Q{qjPI`7j7>Mlgqaq|9qs&&hOn>vL3!*+=Rzp$#7KIIa{vB5{0#n)1dg^AS`C
> zk(HUoXTbh?@pq}Wqm`%^Ah=h6y9I^V!447CLZ5j9&m?)u<-?8@^>EV*@EHld=V&+G
> zCGdgG?ny;i at 5Njysfu2|eT0Sz6~b&$@=x%=7P6{+5b~PTBDh}WTveGwZ*=gN@|q at g
> zNi(rcUqB3fw$m+9ezqPI)k@&=8c%tAoVQ<cL|h6VnDJ#^ap74`sw-Oi_z00BLfx3X
> z(oK8$d?>pHT$_c8sVaKOFVf@~vo3RXPH3m!h8N^`@R&r-#r);l2M)mQYN<RvFkvR`
> z!Y`4Jz+zQl%gTL6OeS1?eSDA(vQAMtVxqfzK5*AST9A8cElzks<BF7i1LS$79*Yt7
> z51yz>n#guzS@%g<WN!udux+<zmg_E>rR>997j&1%hf!;pQW49_SB(RU_Ve+*y4D*;
> z#a9X+Bu(1NqH39|YB`0M{}V74DD`lcd{^hm-59R2N^zWz^LzIzZr>rk at V38pGMCSX
> z+htrL9|W6_>KexB?Bk<fSmk4<vk6xj_CZJsRTnc}nK<oOK!BeUIAu)7-Nx$brd6qQ
> z at bM%3J+^Db)#m%6(Nm5j&PUAexQ&$1v#(3$gQQ6qnC304e&Xrl<9#mJ at x<&@+QC&0
> zA4FM8<nb*Vp-id1_Hx%`TKCd~(*6%tGCNpWW at aDAhtDN9IOSD0a@vXFe1v@`ZF~W2
> zN6y at MIee%S!YMw5 at Kxa>`8t&joPB>ovs4NnhVMvqNaEo)UPTgUDD_Op485y>!>YP6
> zUm*6e)gm|_N7Zmz2;27X^D$%auN9XyugF^kM2iPr1|Rpx?Fw7b!*LTDg%7fX@$re*
> zwMHVHQ18m%!%v4<>HzGA&8RNZVc{;8K?)1-$G`pS&*;9F#m9kC?4yT&+C#Q^e8eIn
> zE}0Lbozz>o-uwMJt9<YQuJ_*<GX<EVGWd{pa6Gko`jtuiUVW9shiOeiCJsjJH%Ks`
> zPT3w$oc&VxkoObaQdfGrQkTO=OP_Vnv$H#Vy at bNY8c%5WC`tCb_8A;ODuWMYm&7Ba
> zolluWfCkAcN~?Mn6XBL?lul7=nbKjG=|70_O8dp|aYGy(Sh4(O>Y_>E<Agi8iqZ>b
> z{1P+zD}j%AQ>7 at kNW_3I%)g%=ARoH6JDM2RC{*FVqE^l+=@-I>QA?c=dYb30RWAX_
> zd`$NGs8|Wka>scu(O6~h(Zsj-aJ4aW(|q9jUkyCDl6$M16nY-uO?L*<CAu6-_v7Q-
> zFNBX2b+qFR$;?$wM+F~k$(L-*m`p2mj2X+Uf5JY}6YgIbDf0S3LeR>Nn_&3xR5x(V
> z6jGHRNW{+L0ZmVt5X-vDmmOa at AMx|ux`kei{qw8dIDJzcI}r4ZAGqJ1tgLB5sfqV@
> z<;wu((xBWtO?gjM at X;xi4H-XPN2eD{#9+d&Gq~qb?EE8wD=by()O1Fvx}PYUYIe#B
> z-Z(7Fx4o$rN63Q;+-6#UjOB9<+ooH*gQUXH+a|8dVtho7*S%GBJ>F&7`uP}pyPC4o
> zxU+126?NuU-?E&s-5K3`$gV>nUr}%7wK2%klA5_`K_VfNyPT&J>yKzrCcnP#+zr8f
> zd{*#`0w!JM!?xePv#qRnhpu~gO0nN=kcE;-tf&!4lXg1Hm&>w{K{6eA`M87}#<il7
> zP9+=UA*rS~V`(B)&haun?C4pa^X?pCInk3&QobH6I;SQ*&#M(J$-<<e-8`TSkAovE
> znD)AoYluNLEQyg9goQBsu=zPyIP4vSO=Y6Q>ePQ;Yey8l&#@f%<jMr)6K>O@*S^wZ
> zn4c5MV3gvdQ%zc(c7(K*bU`7J!&R&LE>f at Z4@sO4Nx3-hK1VL+BQBl?M9w;&Rj=m(
> zWq5}1-a|Pcb#_UN8WKU)Q{1WrAH3kNTued at q?2kE>73UdV1~m&6Fr?V$SLUs$vUhW
> zK at 1Btl#j)yyYk|H+sU+<Rv$vrMML#u?n3iY8lRQzJ3_AzA2S{472qT6T2h7X`wVvZ
> z2*}4~rq$D{s5BKZ#cpUEA5nM9ie}mnkF&$aX0I=ekLDpU+xzMuARnIRVfXGj<%5Dp
> z5_VZeb7^sb%nTt_>$3eOF2}Z=I}I}9)?!bF_oxsb6+HjIo^6{`><H(InxsYoZz1k<
> zIZo+OyKz(KxmHqpkQW at shrOK-(l^t)@2Ye7Xsq<%Y6AB511m+^K{NB)dm0j=+-c~`
> zb>#85*poU~wC#z+2z|>+m!BIkk204uXDh{3gpUtgx#io3d;Wo`ediLgLd?%bQ0elO
> zyZ7b_Gsyj-%QCGlZfHCoc<{#DE><*uI((3?`Fp9Jsa_e%k*b)D8mbL@$}qX~nIc`q
> zM!laz8`{ezfU4A$#PHo at oF*IGS8<I>&2HNl!i`<YiOW}#&+~L_%oagPtn_k`9d@^p
> zP|qLbWv7pTd<`v+-qb+H_Q|}GqUt;~uDf>l2-S_0(_>wvrv%hVLx6hEnclbH=4!?-
> z)Pu_9U5j3G+bY#ok{_do+G#6zVYK at 4M)ppALqy6id&4%aV;omLAD??E at lvf^M7%#{
> z*LFvbdUCIXM$QYM9_ikVm5-BoLfATom3T}^-#?~SChC13MK2VT;n+n8L%F;=UMX5t
> zhF$OWk{F7nmh~#m!8QniG5hcj;w?h2xJy at L={B8o#eD>yIf^X8hu_qk?aCCB?hc3)
> z%tybz`HZE+=j8J?-rY**5VapO*yM^`yut?K-V_yO1i6J^<V5H6`c|PW#eRoK?D&S^
> z2+D=VoX;km at X0u}<>9JMSjutY-c&N^Eik9y;?F~JCxV3p=}6BaC-~$lQzkP9zt&kN
> zckTyCcm7ERm5!f)NYfQ+A=2fBa^^xy8gSXI%WP%#0X+JUT*mt-IVyiS==y0Bp2x;=
> zOn-yB1DF3I&ewg;AkAK;+FEPpvYC#!3u at aZvwZ3CdZt{Pa9tkX_ydYVLKm5w%#)E8
> z3*4#g>}Dd2`&zx?M!wL*XUBaVCD~67Hnll2{ikrxxxXa4#BNPUXLUN3!ljT7TfR)}
> zc5h$TTO^~t)w^~lOuBp5CY%zpCeQPX_~P)fICt>#44!~`u#4(4YW&?w7=Ljh$KV{8
> zcVtaBxf*PFBY{AgFJt2lSIPORLIVrDaH$5nx2;a+vZx2e^c*!(mM2AHWUo;pyGY8g
> z$UeFF*&*^lf1bob9+S|Io<;Nt5uX9zy6{XLgS1%a+8fQY;Cfb4c~7bBl$W&P at oJ&&
> zH^!x0rYR#*`B0e)k82b>rWB8wAwWkdQi?LAN2ajvWf#y(hr^UlCmlKnQ9iLP#8gIK
> z&qS8p#akN{uHEG$fGoDVcg)B>_ at 6TvB;&m3*zx)^BfLN|n(%SQ%39nz{*k`8W1{)E
> zd<xVOBt#qV&$H+*8&0N}`&1rOb_*7yyez4HRvH4yVh0-yLhOs7fPIpMROpN5N>l1z
> zxFGiJ3t}I^YYd7zAP9-r8<Z&h^7A0DUxs|WPe$@dd1P7Qi`B1{k3h0y9^wl=AxHW@
> z$>{%qrQOetz)E_|MHjt^|DT?>>5)B+KJeJju8I~w5l9{P#ffuAwhUEQSsa_x$vaP;
> zJN!}nokE^Mdny$Hw%%Y*U*TSG;?=A#t$x)AXaqC at 8Uc-fMnEH=5zq)|1T+E~0gZr0
> zKqH_L&<JP*Gy)m{jetf#BcKt`2xtT}0vZ90fJQ(gpb^jrXaqC at 8Uc-fMnEH=5%@nw
> F;2(p`PZt0H
>
> literal 0
> HcmV?d00001
>
> diff --git a/debian/changelog b/debian/changelog
> new file mode 100644
> index 0000000..e038242
> --- /dev/null
> +++ b/debian/changelog
> @@ -0,0 +1,6 @@
> +pve-edk2-firmware (1.20180313-1) stable; urgency=medium
> +
> + * Initial release.
a bit more details would be nice here (e.g. split from pve-qemu into
seperate package, update to commit foo)
> +
> + -- Proxmox Support Team <support at proxmox.com> Tue, 13 Mar 2018 11:20:02 +0200
> +
> diff --git a/debian/clean b/debian/clean
> new file mode 100644
> index 0000000..8772fda
> --- /dev/null
> +++ b/debian/clean
> @@ -0,0 +1,4 @@
> +Conf/BuildEnv.sh
> +Conf/build_rule.txt
> +Conf/target.txt
> +Conf/tools_def.txt
> diff --git a/debian/compat b/debian/compat
> new file mode 100644
> index 0000000..f599e28
> --- /dev/null
> +++ b/debian/compat
> @@ -0,0 +1 @@
> +10
I think we want 9 here for once, because I guess this package will be
backported as-is along with pve-qemu?
> diff --git a/debian/control b/debian/control
> new file mode 100644
> index 0000000..aa917e6
> --- /dev/null
> +++ b/debian/control
> @@ -0,0 +1,21 @@
> +Source: pve-edk2-firmware
> +Section: misc
> +Priority: extra
> +Maintainer: Proxmox Support Team <support at proxmox.com>
> +Build-Depends: debhelper (>= 8),
should be >= 9 I guess?
> + iasl,
> + nasm,
> + python,
> + uuid-dev,
> +Homepage: http://www.tianocore.org
> +Standards-Version: 3.9.8
the current on is 4.1.3 ;) not that it matters much for us.
> +
> +Package: pve-edk2-firmware
> +Architecture: all
> +Depends: ${misc:Depends},
> +Provides: ovmf,
> +Conflicts: ovmf,
> +Description: edk2 based firmware modules for virtual machines
> + Contains OVMF. Open Virtual Machine Firmware (OVMF) is a build of EDK II for
> + virtual machines. It includes full support for UEFI, including Secure Boot,
> + allowing use of UEFI in place of a traditional BIOS in your VM.
should probably be adapted to mention PVE and the lack of Secure Boot
> diff --git a/debian/copyright b/debian/copyright
> new file mode 100644
> index 0000000..5941725
> --- /dev/null
> +++ b/debian/copyright
> @@ -0,0 +1,29 @@
> +Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved
> +Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.
> +Copyright (c) 2011 - 2015, ARM Limited. All rights reserved.
> +Copyright (c) 2014 - 2015, Linaro Limited. All rights reserved.
> +Copyright (c) 2013 - 2015, Red Hat, Inc.
> +
> +Redistribution and use in source and binary forms, with or without
> +modification, are permitted provided that the following conditions
> +are met:
> +
> +* Redistributions of source code must retain the above copyright
> + notice, this list of conditions and the following disclaimer.
> +* Redistributions in binary form must reproduce the above copyright
> + notice, this list of conditions and the following disclaimer in
> + the documentation and/or other materials provided with the
> + distribution.
> +
> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
> +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
> +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> +COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
> +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
> +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
> +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
> +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
> +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
> +POSSIBILITY OF SUCH DAMAGE.
> diff --git a/debian/pve-edk2-firmware.install b/debian/pve-edk2-firmware.install
> new file mode 100644
> index 0000000..839354c
> --- /dev/null
> +++ b/debian/pve-edk2-firmware.install
> @@ -0,0 +1,3 @@
> +Build/OvmfX64/RELEASE_*GCC*/FV/OVMF.fd /usr/share/ovmf
> +Build/OvmfX64/RELEASE_*GCC*/FV/OVMF_CODE.fd /usr/share/OVMF
> +Build/OvmfX64/RELEASE_*GCC*/FV/OVMF_VARS.fd /usr/share/OVMF
> diff --git a/debian/pve-edk2-firmware.links b/debian/pve-edk2-firmware.links
> new file mode 100644
> index 0000000..b308b69
> --- /dev/null
> +++ b/debian/pve-edk2-firmware.links
> @@ -0,0 +1 @@
> +usr/share/ovmf/OVMF.fd usr/share/qemu/OVMF.fd
> diff --git a/debian/rules b/debian/rules
> new file mode 100755
> index 0000000..0464134
> --- /dev/null
> +++ b/debian/rules
> @@ -0,0 +1,56 @@
> +#!/usr/bin/make -f
> +SHELL=/bin/bash
> +
> +# this is a simplified version from the upstream package
> +
> +DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
> +
> +EDK2_TOOLCHAIN = GCC5 # for GCC5 and newer, LTO enabled
> +export $(EDK2_TOOLCHAIN)_AARCH64_PREFIX=aarch64-linux-gnu-
> +
> +ifeq ($(DEB_BUILD_ARCH),amd64)
> + EDK2_BUILD_ARCH=X64
> + EDK2_HOST_ARCH=X64
> +endif
> +ifeq ($(DEB_BUILD_ARCH),arm64)
> + EDK2_BUILD_ARCH=AARCH64
> +endif
> +
> +# Clear variables used internally by the edk2 build system
> +undefine WORKSPACE
> +undefine ECP_SOURCE
> +undefine EDK_SOURCE
> +undefine EFI_SOURCE
> +undefine EDK_TOOLS_PATH
> +undefine CONF_PATH
> +
> +%:
> + dh $@
> +
> +override_dh_auto_build: build-ovmf
> +
> +setup-build:
> + cp -a debian/Logo.bmp MdeModulePkg/Logo/Logo.bmp
> + make -C BaseTools ARCH=$(EDK2_BUILD_ARCH)
> + # call this when building too, it modifies the shell environment
> + . ./edksetup.sh
> +
> +build-ovmf: EDK2_ARCH_DIR=X64
> +build-ovmf: EDK2_HOST_ARCH=X64
> +build-ovmf: setup-build
> + set -e; . ./edksetup.sh; \
> + OvmfPkg/build.sh -a $(EDK2_HOST_ARCH) -b RELEASE -DSECURE_BOOT_ENABLE=FALSE -DFD_SIZE_2MB \
> + -n $$(getconf _NPROCESSORS_ONLN) -t $(EDK2_TOOLCHAIN)
might make future git blaming easier if the parameters each get their
own (continued) line?
> +
> +build-qemu-efi-aarch64:
> + $(MAKE) -f debian/rules build-qemu-efi EDK2_ARCH_DIR=AArch64 EDK2_HOST_ARCH=AARCH64 FW_NAME=AAVMF
is this called anywhere?
> +
> +override_dh_auto_clean:
> + set -e; \
> + if [ -d BaseTools/Source/C/bin ]; then \
> + . ./edksetup.sh; build clean; \
> + make -C BaseTools clean; \
> + fi
> + rm -rf Conf/.cache Build .pc-post
> +
> +.PHONY: setup-build build-ovmf
> diff --git a/edk2 b/edk2
> new file mode 160000
> index 0000000..ea30f8e
> --- /dev/null
> +++ b/edk2
> @@ -0,0 +1 @@
> +Subproject commit ea30f8e81399059e2a94b597d05d3273893afe7b
> --
> 2.14.2
>
>
> _______________________________________________
> pve-devel mailing list
> pve-devel at pve.proxmox.com
> https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
More information about the pve-devel
mailing list