mkefiboot: Copy Mac bootloader, rather than linking it
The Mac firmware needs special-casing for hardlinked bootloaders, and it's kind of awkward to handle that in python. Just copy them for now instead.
This commit is contained in:
		
							parent
							
								
									366cd617b2
								
							
						
					
					
						commit
						0ec326eb3c
					
				| @ -147,6 +147,8 @@ def estimate_size(rootdir, graft={}, fstype=None, blocksize=4096, overhead=128): | ||||
|     getsize = lambda f: os.lstat(f).st_size | ||||
|     if fstype == "btrfs": | ||||
|         overhead = 64*1024 # don't worry, it's all sparse | ||||
|     if fstype == "hfsplus": | ||||
|         overhead = 200 # hack to deal with two bootloader copies | ||||
|     if fstype in ("vfat", "msdos"): | ||||
|         blocksize = 2048 | ||||
|         getsize = lambda f: os.stat(f).st_size # no symlinks, count as copies | ||||
|  | ||||
| @ -70,8 +70,8 @@ def macmunge(imgfile, product): | ||||
| </dict> | ||||
| </plist> | ||||
| ''' % (product,)) | ||||
|             os.link(loader, os.path.join(sysdir,'boot.efi')) | ||||
|             os.link(config, os.path.join(sysdir,'boot.conf')) | ||||
|             shutil.copy(loader, os.path.join(sysdir,'boot.efi')) | ||||
|             shutil.copy(config, os.path.join(sysdir,'boot.conf')) | ||||
|     # format data properly (big-endian UInt32) | ||||
|     nodedata = struct.pack(">i", blessnode) | ||||
|     dirdata = struct.pack(">i", dirnode) | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user