mirror of
https://github.com/danderson/netboot.git
synced 2025-08-10 16:47:11 +02:00
Delete the vendored source under `thirds_party/ipxe` and replace it with a submodule reference to https://github.com/ipxe/ipxe.git at commit 8f1514a00450119b04b08642c55aa674bdf5a4ef a.k.a. tag `v1.20.1` a.k.a. the latest release as of this writing. Edit `Makefile` to change the rule body of the `update-ipxe` target: * Discover the full path of `pixiecore/boot.ipxe`; i.e., the `EMBED` script given to the `ipxe` build. * Use `$(MAKE) -C` instead of subshelled `cd`. * Leave the four built ipxe binaries where they are built. * Change the `go-bindata` to operate on the four files (instead of the directory that contains them), write to `out/ipxe/bindata.go` (instead of `third_party/ipxe/ipxe-bin.go`), and lose the `-prefix`. Edit `cmd/pixiecore/main.go` use the new `ipxe` import path and reference the binaries by the longer, un-prefixed path keys. Add `out/ipxe/bindata.go`, the thing generated by `go-bindata`. Yeah, we shouldn't source-control that which we can generate, but... * `ipxe` builds are not reproducible (yet) * building those four binaries takes a appreciable amount of time * we can avoid a build-time dependency on `go-bindata` Remove `third_party/Makefile` because it looks like dead code. At any rate, it seems this patch obviates everything it may have done.
32 lines
1.2 KiB
Go
32 lines
1.2 KiB
Go
// Copyright 2016 Google Inc.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
package main
|
|
|
|
import (
|
|
"go.universe.tf/netboot/out/ipxe"
|
|
"go.universe.tf/netboot/pixiecore"
|
|
"go.universe.tf/netboot/pixiecore/cli"
|
|
)
|
|
|
|
func main() {
|
|
|
|
cli.Ipxe[pixiecore.FirmwareX86PC] = ipxe.MustAsset("third_party/ipxe/src/bin/undionly.kpxe")
|
|
cli.Ipxe[pixiecore.FirmwareEFI32] = ipxe.MustAsset("third_party/ipxe/src/bin-i386-efi/ipxe.efi")
|
|
cli.Ipxe[pixiecore.FirmwareEFI64] = ipxe.MustAsset("third_party/ipxe/src/bin-x86_64-efi/ipxe.efi")
|
|
cli.Ipxe[pixiecore.FirmwareEFIBC] = ipxe.MustAsset("third_party/ipxe/src/bin-x86_64-efi/ipxe.efi")
|
|
cli.Ipxe[pixiecore.FirmwareX86Ipxe] = ipxe.MustAsset("third_party/ipxe/src/bin/ipxe.pxe")
|
|
cli.CLI()
|
|
}
|