Gentoo Archives: gentoo-commits

From: Matthias Maier <tamiko@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-firmware/ipxe/
Date: Mon, 12 Feb 2018 00:01:56
Message-Id: 1518393695.b8549c4d268c60ef3e74368a00a92062562942f7.tamiko@gentoo
1 commit: b8549c4d268c60ef3e74368a00a92062562942f7
2 Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
3 AuthorDate: Sun Feb 11 23:28:07 2018 +0000
4 Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
5 CommitDate: Mon Feb 12 00:01:35 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b8549c4d
7
8 sys-firmware/ipxe: create new snapshot
9
10 Closes: https://bugs.gentoo.org/628354
11 Closes: https://bugs.gentoo.org/638532
12 Package-Manager: Portage-2.3.24, Repoman-2.3.6
13
14 sys-firmware/ipxe/Manifest | 1 +
15 sys-firmware/ipxe/ipxe-1.0.0_p20180211.ebuild | 108 ++++++++++++++++++++++++++
16 2 files changed, 109 insertions(+)
17
18 diff --git a/sys-firmware/ipxe/Manifest b/sys-firmware/ipxe/Manifest
19 index 2e1d274b828..301afef0a72 100644
20 --- a/sys-firmware/ipxe/Manifest
21 +++ b/sys-firmware/ipxe/Manifest
22 @@ -1,2 +1,3 @@
23 DIST ipxe-1.0.0_p20130925-cba22d3.tar.bz2 2240189 BLAKE2B 58717ca43ece4ffbe8f68cae2f409c4cd8f1d3c2149521c28db017d4fcd31b6122fa35b9a476d3dc865baba0d2768744f4977420fb6410f1b09dad9170c32497 SHA512 a098d3fc0f68067be281b9c3654bb1b0be1b9d397327b55b36b17e69faf03ce6117d0278552c06990a5020e4ece7acac168d975b3c7bfce3b6865dea1fd1d8dd
24 DIST ipxe-1.0.0_p20160620-694c18a.tar.bz2 2839663 BLAKE2B ec6999f3bcaf198f4b73464ee34456b923d0be26f11980e3020dd66012ddbf1b721aebb1c74c4289a0012e2ffae96a54a25821a4c7c621f727e090d13de58213 SHA512 67657dabe09f497c270cca16391669c89032112c1496b54009e2f1e8a477904d758476d4e465973aa0b6fc764be48ed6421607189aaea76e23fa0da6e9c8add5
25 +DIST ipxe-1.0.0_p20180211-546dd51.tar.bz2 2954305 BLAKE2B 8232b1afe017ff5d0389534e4efea3209ea0330d66e4d3d429abf81da66639b19488911d85bf2da200ff8cb0d49c5dda438074c4538303335419ea080ef80a16 SHA512 45d7f80f15a1c5ff1daa31b132065d38013a51127795ad81308b468940a455edcb40cde7601475039a7c977d732817203bbc627c642d3d10146a480da603f1dd
26
27 diff --git a/sys-firmware/ipxe/ipxe-1.0.0_p20180211.ebuild b/sys-firmware/ipxe/ipxe-1.0.0_p20180211.ebuild
28 new file mode 100644
29 index 00000000000..3af1d37ca63
30 --- /dev/null
31 +++ b/sys-firmware/ipxe/ipxe-1.0.0_p20180211.ebuild
32 @@ -0,0 +1,108 @@
33 +# Copyright 1999-2018 Gentoo Foundation
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI="6"
37 +
38 +inherit toolchain-funcs eutils savedconfig
39 +
40 +GIT_REV="546dd51de8459d4d09958891f426fa2c73ff090d"
41 +GIT_SHORT=${GIT_REV:0:7}
42 +
43 +DESCRIPTION="Open source network boot (PXE) firmware"
44 +HOMEPAGE="http://ipxe.org/"
45 +SRC_URI="https://git.ipxe.org/ipxe.git/snapshot/${GIT_REV}.tar.bz2 -> ${P}-${GIT_SHORT}.tar.bz2"
46 +
47 +LICENSE="GPL-2"
48 +SLOT="0"
49 +# TODO: Add arm/arm64 once figure out how to build w/out including
50 +# all the x86-specific drivers (that use I/O insns).
51 +KEYWORDS="-* ~amd64 ~x86"
52 +IUSE="efi ipv6 iso lkrn +qemu undi usb vmware"
53 +
54 +DEPEND="app-arch/xz-utils
55 + dev-lang/perl
56 + sys-libs/zlib
57 + iso? (
58 + sys-boot/syslinux
59 + virtual/cdrtools
60 + )"
61 +RDEPEND=""
62 +
63 +S="${WORKDIR}/ipxe-${GIT_SHORT}/src"
64 +
65 +src_configure() {
66 + cat <<-EOF > "${S}"/config/local/general.h
67 +#undef BANNER_TIMEOUT
68 +#define BANNER_TIMEOUT 0
69 +EOF
70 +
71 + use ipv6 && echo "#define NET_PROTO_IPV6" >> "${S}"/config/local/general.h
72 +
73 + if use vmware; then
74 + cat <<-EOF >> "${S}"/config/local/general.h
75 +#define VMWARE_SETTINGS
76 +#define CONSOLE_VMWARE
77 +EOF
78 + fi
79 +
80 + restore_config config/local/general.h
81 +
82 + tc-ld-disable-gold
83 +}
84 +
85 +ipxemake() {
86 + # Q='' makes the build verbose since that's what everyone loves now
87 + emake Q='' \
88 + CC="$(tc-getCC)" \
89 + LD="$(tc-getLD)" \
90 + AS="$(tc-getAS)" \
91 + AR="$(tc-getAR)" \
92 + NM="$(tc-getNM)" \
93 + OBJCOPY="$(tc-getOBJCOPY)" \
94 + RANLIB="$(tc-getRANLIB)" \
95 + OBJDUMP="$(tc-getOBJDUMP)" \
96 + HOST_CC="$(tc-getBUILD_CC)" \
97 + "$@"
98 +}
99 +
100 +src_compile() {
101 + export NO_WERROR=1
102 + if use qemu; then
103 + ipxemake bin/808610de.rom # pxe-e1000.rom (old)
104 + ipxemake bin/8086100e.rom # pxe-e1000.rom
105 + ipxemake bin/80861209.rom # pxe-eepro100.rom
106 + ipxemake bin/10500940.rom # pxe-ne2k_pci.rom
107 + ipxemake bin/10222000.rom # pxe-pcnet.rom
108 + ipxemake bin/10ec8139.rom # pxe-rtl8139.rom
109 + ipxemake bin/1af41000.rom # pxe-virtio.rom
110 + fi
111 +
112 + if use vmware; then
113 + ipxemake bin/8086100f.mrom # e1000
114 + ipxemake bin/808610d3.mrom # e1000e
115 + ipxemake bin/10222000.mrom # vlance
116 + ipxemake bin/15ad07b0.rom # vmxnet3
117 + fi
118 +
119 + use efi && ipxemake PLATFORM=efi BIN=bin-efi bin-efi/ipxe.efi
120 + use iso && ipxemake bin/ipxe.iso
121 + use undi && ipxemake bin/undionly.kpxe
122 + use usb && ipxemake bin/ipxe.usb
123 + use lkrn && ipxemake bin/ipxe.lkrn
124 +}
125 +
126 +src_install() {
127 + insinto /usr/share/ipxe/
128 +
129 + if use qemu || use vmware; then
130 + doins bin/*.rom
131 + fi
132 + use vmware && doins bin/*.mrom
133 + use efi && doins bin-efi/*.efi
134 + use iso && doins bin/*.iso
135 + use undi && doins bin/*.kpxe
136 + use usb && doins bin/*.usb
137 + use lkrn && doins bin/*.lkrn
138 +
139 + save_config config/local/general.h
140 +}