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: Sun, 28 Jul 2019 20:20:21
Message-Id: 1564345181.c382bb6c08797635ad8d0bf1ec3b6263524850a7.tamiko@gentoo
1 commit: c382bb6c08797635ad8d0bf1ec3b6263524850a7
2 Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jul 28 20:15:23 2019 +0000
4 Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
5 CommitDate: Sun Jul 28 20:19:41 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c382bb6c
7
8 sys-firmware/ipxe: version bump to 1.0.0_p20190728
9
10 Bug: https://bugs.gentoo.org/652842
11 Package-Manager: Portage-2.3.69, Repoman-2.3.16
12 Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>
13
14 sys-firmware/ipxe/Manifest | 2 +
15 sys-firmware/ipxe/ipxe-1.0.0_p20190728.ebuild | 119 ++++++++++++++++++++++++++
16 2 files changed, 121 insertions(+)
17
18 diff --git a/sys-firmware/ipxe/Manifest b/sys-firmware/ipxe/Manifest
19 index bdab5924bb6..5267976c1fa 100644
20 --- a/sys-firmware/ipxe/Manifest
21 +++ b/sys-firmware/ipxe/Manifest
22 @@ -1,2 +1,4 @@
23 DIST ipxe-1.0.0_p20180211-546dd51-bin.tar.xz 1748228 BLAKE2B 5ed2ce71c7dbc41d5cbef6e263abd230b9831c945a8edb33a29d408bd4262e370a2f73c8d2eb3cb20e08c61ece83af1fb1bb4c5694098cb29c44628dbd18def8 SHA512 af2778c925a6e4c374ddae85f3db983c83e7a4e5bb2cf35e356d277b87d4c89bf63cc2c061ec31d608ff2160c13297232fa131da2b9dd0b580d93e1b0efd6532
24 DIST ipxe-1.0.0_p20180211-546dd51.tar.bz2 2954305 BLAKE2B 8232b1afe017ff5d0389534e4efea3209ea0330d66e4d3d429abf81da66639b19488911d85bf2da200ff8cb0d49c5dda438074c4538303335419ea080ef80a16 SHA512 45d7f80f15a1c5ff1daa31b132065d38013a51127795ad81308b468940a455edcb40cde7601475039a7c977d732817203bbc627c642d3d10146a480da603f1dd
25 +DIST ipxe-1.0.0_p20190728-a4f8c6e-bin.tar.xz 1839688 BLAKE2B b28772b928690646e1b0cb1c27ef56e2cb1c0637a43c6174dea7c8ca401d8c8819938fa358a0bed5d57b8cf992b8c2060b52e32a970ef813f1cf705fb0805beb SHA512 1e5838b8c530257dc544f6e25f80e6e223480917db393ca3ff8c577f07e60180e18f2eed4e71f7b1965157d6e7001f65e224d3c8b56a98f84739e2504ca38985
26 +DIST ipxe-1.0.0_p20190728-a4f8c6e.tar.bz2 2985776 BLAKE2B 5a85505404978d51f80e30332f6eb0417d6d97eb9b3bc05eec5ad649c446c7d17dc841f8cd34a1b29c31dc6f5cf08baa69191de9c8dd4bcdb098c5d7f13a7824 SHA512 3af0da9058b39966bfd8f9d7dfe518ae7b26e18f58d1a3fa2cba8922ec3c50775b82dd9f23bf51be3ca3f69b705f92bcf80988a1817b30f7ab1826a4b159c5a6
27
28 diff --git a/sys-firmware/ipxe/ipxe-1.0.0_p20190728.ebuild b/sys-firmware/ipxe/ipxe-1.0.0_p20190728.ebuild
29 new file mode 100644
30 index 00000000000..3850249adbd
31 --- /dev/null
32 +++ b/sys-firmware/ipxe/ipxe-1.0.0_p20190728.ebuild
33 @@ -0,0 +1,119 @@
34 +# Copyright 1999-2019 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI="6"
38 +
39 +inherit toolchain-funcs eutils savedconfig
40 +
41 +GIT_REV="a4f8c6e31f6c62522cfc633bbbffa81b22f9d6f3"
42 +GIT_SHORT=${GIT_REV:0:7}
43 +
44 +DESCRIPTION="Open source network boot (PXE) firmware"
45 +HOMEPAGE="http://ipxe.org/"
46 +SRC_URI="
47 + !binary? ( https://git.ipxe.org/ipxe.git/snapshot/${GIT_REV}.tar.bz2 -> ${P}-${GIT_SHORT}.tar.bz2 )
48 + binary? ( https://dev.gentoo.org/~tamiko/distfiles/${P}-${GIT_SHORT}-bin.tar.xz )"
49 +
50 +LICENSE="GPL-2"
51 +SLOT="0"
52 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~x86"
53 +IUSE="+binary efi ipv6 iso lkrn +qemu undi usb vmware"
54 +
55 +REQUIRED_USE="!amd64? ( !x86? ( binary ) )"
56 +
57 +SOURCE_DEPEND="app-arch/xz-utils
58 + dev-lang/perl
59 + sys-libs/zlib
60 + iso? (
61 + sys-boot/syslinux
62 + virtual/cdrtools
63 + )"
64 +DEPEND="
65 + !binary? (
66 + amd64? ( ${SOURCE_DEPEND} )
67 + x86? ( ${SOURCE_DEPEND} )
68 + )"
69 +RDEPEND=""
70 +
71 +S="${WORKDIR}/ipxe-${GIT_SHORT}/src"
72 +
73 +src_configure() {
74 + use binary && return
75 +
76 + cat <<-EOF > "${S}"/config/local/general.h
77 +#undef BANNER_TIMEOUT
78 +#define BANNER_TIMEOUT 0
79 +EOF
80 +
81 + use ipv6 && echo "#define NET_PROTO_IPV6" >> "${S}"/config/local/general.h
82 +
83 + if use vmware; then
84 + cat <<-EOF >> "${S}"/config/local/general.h
85 +#define VMWARE_SETTINGS
86 +#define CONSOLE_VMWARE
87 +EOF
88 + fi
89 +
90 + restore_config config/local/general.h
91 +
92 + tc-ld-disable-gold
93 +}
94 +
95 +ipxemake() {
96 + # Q='' makes the build verbose since that's what everyone loves now
97 + emake Q='' \
98 + CC="$(tc-getCC)" \
99 + LD="$(tc-getLD)" \
100 + AS="$(tc-getAS)" \
101 + AR="$(tc-getAR)" \
102 + NM="$(tc-getNM)" \
103 + OBJCOPY="$(tc-getOBJCOPY)" \
104 + RANLIB="$(tc-getRANLIB)" \
105 + OBJDUMP="$(tc-getOBJDUMP)" \
106 + HOST_CC="$(tc-getBUILD_CC)" \
107 + "$@"
108 +}
109 +
110 +src_compile() {
111 + use binary && return
112 +
113 + export NO_WERROR=1
114 + if use qemu; then
115 + ipxemake bin/808610de.rom # pxe-e1000.rom (old)
116 + ipxemake bin/8086100e.rom # pxe-e1000.rom
117 + ipxemake bin/80861209.rom # pxe-eepro100.rom
118 + ipxemake bin/10500940.rom # pxe-ne2k_pci.rom
119 + ipxemake bin/10222000.rom # pxe-pcnet.rom
120 + ipxemake bin/10ec8139.rom # pxe-rtl8139.rom
121 + ipxemake bin/1af41000.rom # pxe-virtio.rom
122 + fi
123 +
124 + if use vmware; then
125 + ipxemake bin/8086100f.mrom # e1000
126 + ipxemake bin/808610d3.mrom # e1000e
127 + ipxemake bin/10222000.mrom # vlance
128 + ipxemake bin/15ad07b0.rom # vmxnet3
129 + fi
130 +
131 + use efi && ipxemake PLATFORM=efi BIN=bin-efi bin-efi/ipxe.efi
132 + use iso && ipxemake bin/ipxe.iso
133 + use undi && ipxemake bin/undionly.kpxe
134 + use usb && ipxemake bin/ipxe.usb
135 + use lkrn && ipxemake bin/ipxe.lkrn
136 +}
137 +
138 +src_install() {
139 + insinto /usr/share/ipxe/
140 +
141 + if use qemu || use vmware; then
142 + doins bin/*.rom
143 + fi
144 + use vmware && doins bin/*.mrom
145 + use efi && doins bin-efi/*.efi
146 + use iso && doins bin/*.iso
147 + use undi && doins bin/*.kpxe
148 + use usb && doins bin/*.usb
149 + use lkrn && doins bin/*.lkrn
150 +
151 + save_config config/local/general.h
152 +}