Index | Thread | Search

From:
Klemens Nanni <kn@openbsd.org>
Subject:
Re: new net/ipxe
To:
ports <ports@openbsd.org>
Date:
Sat, 13 Dec 2025 17:07:39 +0000

Download raw body.

Thread
  • Klemens Nanni:

    new net/ipxe

    • Klemens Nanni:

      new net/ipxe

22.11.2025 14:48, Klemens Nanni пишет:
> The port itself supports any architecture, but builds only amd64 and arm64
> as others have not been tested (riscv64 and loongson might be of interest).
> 
> It requires GNU tools incl. compiler and linker, we have everything except
> - ports@ "binutils: enable ld.bfd ?"
> 
> Once all knobs and found and set properly, GNU make compiles all files
> always compiles all files (see https://dox.ipxe.org/ifdef_harmful.html)
> and then links targets according to config.
> 
> I want to be able to serve images for several architectures from a single
> netboot server and avoid cross compilation, so this port uses MACHINE_ARCH
> in PKGNAME and sets PKG_ARCH=*;  per-arch files don't conflict and even
> per-platform (e.g. EFI or BIOS) files seem to end up with unique tuples
> of what upstream calls drivers and extensions, see Files below as well as
> https://ipxe.org/appnote/buildtargets.
> 
> Then I can serve, e.g. ipxe.efi over TFTP or HTTP and further do whatever
> on the clients, for example through autoexec.ipxe, which it tries to load
> from the server by default.
Here's an updated and tidied version.  As with binutils, I left support and
merely omitted/commented arm64 in ONLY_FOR_ARCHS.

The port is available in openbsd-wip.

Feedback? OK to import once ports@ "binutils: enable ld.bfd ?" is settled?


Information for inst:ipxe-amd64-1.21.1pl1152

Description:
iPXE builds for these platforms:  efi pcbios

Changes to the default configuration:
- enable HTTPS, see https://www.ipxe.org/crypto
- raise minimum TLS version to 1.2

Maintainer: Klemens Nanni <kn@openbsd.org>

WWW: https://ipxe.org

Files:
/usr/local/share/ipxe/amd64/efi/ipxe.efi
/usr/local/share/ipxe/amd64/efi/ipxe.iso
/usr/local/share/ipxe/amd64/efi/snp.efi
/usr/local/share/ipxe/amd64/efi/snp.iso
/usr/local/share/ipxe/amd64/efi/snponly.efi
/usr/local/share/ipxe/amd64/efi/snponly.iso
/usr/local/share/ipxe/amd64/pcbios/ipxe.iso
/usr/local/share/ipxe/amd64/pcbios/ipxe.kpxe
/usr/local/share/ipxe/amd64/pcbios/ipxe.lkrn
/usr/local/share/ipxe/amd64/pcbios/ipxe.pxe
/usr/local/share/ipxe/amd64/pcbios/ipxe.usb
/usr/local/share/ipxe/amd64/pcbios/undionly.iso
/usr/local/share/ipxe/amd64/pcbios/undionly.kpxe
/usr/local/share/ipxe/amd64/pcbios/undionly.lkrn
/usr/local/share/ipxe/amd64/pcbios/undionly.pxe
/usr/local/share/ipxe/amd64/pcbios/undionly.usb