mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-20 17:49:10 +00:00
Merge pull request #3213 from rn/build-improv
build: Don't create empty kernel/cmdline files
This commit is contained in:
commit
09420e89f1
@ -370,6 +370,7 @@ func outputKernelInitrd(base string, kernel []byte, initrd []byte, cmdline strin
|
|||||||
if err := ioutil.WriteFile(base+"-initrd.img", ucode, os.FileMode(0644)); err != nil {
|
if err := ioutil.WriteFile(base+"-initrd.img", ucode, os.FileMode(0644)); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if len(initrd) != 0 {
|
||||||
f, err := os.OpenFile(base+"-initrd.img", os.O_APPEND|os.O_WRONLY, 0644)
|
f, err := os.OpenFile(base+"-initrd.img", os.O_APPEND|os.O_WRONLY, 0644)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
@ -378,16 +379,24 @@ func outputKernelInitrd(base string, kernel []byte, initrd []byte, cmdline strin
|
|||||||
if _, err = f.Write(initrd); err != nil {
|
if _, err = f.Write(initrd); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
|
if len(initrd) != 0 {
|
||||||
log.Infof(" %s %s %s", base+"-kernel", base+"-initrd.img", base+"-cmdline")
|
log.Infof(" %s %s %s", base+"-kernel", base+"-initrd.img", base+"-cmdline")
|
||||||
if err := ioutil.WriteFile(base+"-initrd.img", initrd, os.FileMode(0644)); err != nil {
|
if err := ioutil.WriteFile(base+"-initrd.img", initrd, os.FileMode(0644)); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if len(kernel) != 0 {
|
||||||
if err := ioutil.WriteFile(base+"-kernel", kernel, os.FileMode(0644)); err != nil {
|
if err := ioutil.WriteFile(base+"-kernel", kernel, os.FileMode(0644)); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if len(cmdline) != 0 {
|
||||||
return ioutil.WriteFile(base+"-cmdline", []byte(cmdline), os.FileMode(0644))
|
return ioutil.WriteFile(base+"-cmdline", []byte(cmdline), os.FileMode(0644))
|
||||||
|
}
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func outputKernelInitrdTarball(base string, kernel []byte, initrd []byte, cmdline string, ucode []byte) error {
|
func outputKernelInitrdTarball(base string, kernel []byte, initrd []byte, cmdline string, ucode []byte) error {
|
||||||
@ -399,6 +408,7 @@ func outputKernelInitrdTarball(base string, kernel []byte, initrd []byte, cmdlin
|
|||||||
}
|
}
|
||||||
defer f.Close()
|
defer f.Close()
|
||||||
tw := tar.NewWriter(f)
|
tw := tar.NewWriter(f)
|
||||||
|
if len(kernel) != 0 {
|
||||||
hdr := &tar.Header{
|
hdr := &tar.Header{
|
||||||
Name: "kernel",
|
Name: "kernel",
|
||||||
Mode: 0644,
|
Mode: 0644,
|
||||||
@ -411,7 +421,9 @@ func outputKernelInitrdTarball(base string, kernel []byte, initrd []byte, cmdlin
|
|||||||
if _, err := tw.Write(kernel); err != nil {
|
if _, err := tw.Write(kernel); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
hdr = &tar.Header{
|
}
|
||||||
|
if len(initrd) != 0 {
|
||||||
|
hdr := &tar.Header{
|
||||||
Name: "initrd.img",
|
Name: "initrd.img",
|
||||||
Mode: 0644,
|
Mode: 0644,
|
||||||
Size: int64(len(initrd)),
|
Size: int64(len(initrd)),
|
||||||
@ -423,7 +435,9 @@ func outputKernelInitrdTarball(base string, kernel []byte, initrd []byte, cmdlin
|
|||||||
if _, err := tw.Write(initrd); err != nil {
|
if _, err := tw.Write(initrd); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
hdr = &tar.Header{
|
}
|
||||||
|
if len(cmdline) != 0 {
|
||||||
|
hdr := &tar.Header{
|
||||||
Name: "cmdline",
|
Name: "cmdline",
|
||||||
Mode: 0644,
|
Mode: 0644,
|
||||||
Size: int64(len(cmdline)),
|
Size: int64(len(cmdline)),
|
||||||
@ -435,6 +449,7 @@ func outputKernelInitrdTarball(base string, kernel []byte, initrd []byte, cmdlin
|
|||||||
if _, err := tw.Write([]byte(cmdline)); err != nil {
|
if _, err := tw.Write([]byte(cmdline)); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if len(ucode) != 0 {
|
if len(ucode) != 0 {
|
||||||
hdr := &tar.Header{
|
hdr := &tar.Header{
|
||||||
Name: "ucode.cpio",
|
Name: "ucode.cpio",
|
||||||
|
Loading…
Reference in New Issue
Block a user