Build: replace mtools with fatshell.
EFI System Partition was the last remaining holdout for mtools usage. Change-Id: I988f82a2f4318f2f90ec1efb80f7ff5c8908aff7 Reviewed-on: https://review.haiku-os.org/c/haiku/+/4140 Reviewed-by: Alex von Gluck IV <[email protected]>
This commit is contained in:
committed by
Alex von Gluck IV
parent
f5ec8e8c2d
commit
977a873ab2
+18
-8
@@ -1671,9 +1671,11 @@ rule BuildEfiSystemPartition image : efiLoader
|
||||
{
|
||||
local macVolumeIcon = [ FDirName
|
||||
$(HAIKU_TOP) data artwork VolumeIcon.icns ] ;
|
||||
local fatshell = <build>fat_shell ;
|
||||
|
||||
Depends $(image) : $(efiLoader) ;
|
||||
Depends $(image) : $(macVolumeIcon) ;
|
||||
Depends $(image) : $(fatshell) ;
|
||||
|
||||
switch $(TARGET_ARCH) {
|
||||
case x86_64 :
|
||||
@@ -1690,18 +1692,26 @@ rule BuildEfiSystemPartition image : efiLoader
|
||||
Exit "Error: Unknown EFI architecture!" ;
|
||||
}
|
||||
|
||||
EFIICON on $(image) = $(macVolumeIcon) ;
|
||||
|
||||
BuildEfiSystemPartition1 $(image) : $(efiLoader) ;
|
||||
BuildEfiSystemPartition1 $(image) : $(fatshell) $(macVolumeIcon) $(efiLoader) ;
|
||||
}
|
||||
|
||||
# Usage:
|
||||
# out : fatshell volumeIcon loader
|
||||
actions BuildEfiSystemPartition1
|
||||
{
|
||||
$(RM) $(<)
|
||||
|
||||
export $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR)
|
||||
|
||||
dd if=/dev/zero of=$(<) bs=1024 count=2880
|
||||
mformat -i $(<) -f 2880
|
||||
mmd -D s -i $(<) ::/EFI
|
||||
mmd -D s -i $(<) ::/EFI/BOOT
|
||||
mcopy -D o -i $(<) $(EFIICON) ::/.VolumeIcon.icns
|
||||
mcopy -D o -i $(<) $(>) ::/EFI/BOOT/$(EFINAME)
|
||||
|
||||
FATFS="$(2[1])"
|
||||
EFIICON="$(2[2])"
|
||||
LOADER="$(2[3])"
|
||||
|
||||
${FATFS} --initialize "$(<)" 'Haiku ESP'
|
||||
echo "mkdir myfs/EFI" | ${FATFS} $(<)
|
||||
echo "mkdir myfs/EFI/BOOT" | ${FATFS} $(<)
|
||||
echo "cp :${LOADER} myfs/EFI/BOOT/$(EFINAME)" | ${FATFS} $(<)
|
||||
echo "cp :${EFIICON} myfs/.VolumeIcon.icns" | ${FATFS} $(<)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user